Google認証ツールを使ってLinuxデスクトップにログインする方法

さらにセキュリティを強化するために、Linux PCにログインするためのパスワードと同様に、時間ベースの認証トークンを要求することができます。このソリューションでは、Google認証システムと他のTOTPアプリを使用します。

このプロセスは、標準のUnityデスクトップとLightDMログインマネージャを使用してUbuntu 14.04で実行されましたが、原則はほとんどのLinuxディストリビューションとデスクトップで同じです。

Google認証者にSSH経由のリモートアクセスを要求する方法を以前に示しましたが、このプロセスは似ています。これにはGoogle認証システムアプリは必要ありませんが、Authyを含むTOTP認証方式を実装している互換性のあるアプリで動作します。

これをSSHアクセス用に設定するときは、最初に適切なPAM(プラグイン可能認証モジュール)ソフトウェアをインストールする必要があります。 PAMは、さまざまな種類の認証方法をLinuxシステムに組み込み、それらを必要とするシステムです。

Ubuntuでは、次のコマンドを実行するとGoogle Authenticator PAMがインストールされます。ターミナルウィンドウを開き、次のコマンドを入力してEnterキーを押し、パスワードを入力します。システムはLinuxディストリビューションのソフトウェアリポジトリからPAMをダウンロードしてインストールします

sudo apt-get install libpam-google-authenticator

他のLinuxディストリビューションでも、簡単にインストールできるようにこのパッケージを用意しておいてください。Linuxディストリビューションのソフトウェアリポジトリを開き、それを検索してください。最悪のシナリオでは、GitHub上のPAMモジュールのソースコードを見つけてコンパイルすることができます。

これまでに指摘したように、このソリューションはGoogleのサーバーに「電話をかける」ことに依存しません。標準のTOTPアルゴリズムを実装しており、コンピュータにインターネットにアクセスできない場合でも使用できます。

これで、秘密の認証キーを作成し、携帯電話のGoogle認証システムアプリ(または類似のアプリ)に入力する必要があります。まず、あなたのLinuxシステムにあなたのユーザーアカウントとしてログインします。ターミナルウィンドウを開き、google-authenticatorコマンドを実行します。 yと入力し、ここにプロンプ​​トに従います。これにより、現在のユーザーアカウントのディレクトリに、Google認証システムの情報を含む特別なファイルが作成されます。

また、スマートフォンのGoogle認証システムまたは同様のTOTPアプリにその2要素認証コードを取得するプロセスについても説明します。システムは、スキャンできるQRコードを生成することも、手動で入力することもできます。

あなたの電話を紛失した場合にログインするために使用できる緊急スクラッチコードを書き留めておいてください。

コンピュータを使用する各ユーザーアカウントについて、このプロセスを実行します。たとえば、あなたがコンピュータを使用する唯一の人であれば、通常のユーザーアカウントで1回だけ行うことができます。あなたのコンピュータを使用している他の人がいる場合は、自分のアカウントにサインインして、自分のアカウント用の適切な2要素コードを生成してログインできるようにしたいと思うでしょう。

ここで物事は少しジシを得る。 SSHログイン用に2つの要素を有効にする方法を説明したとき、SSHログイン用にのみ必要でした。これにより、認証アプリを紛失した場合や何か問題が生じた場合でも、ローカルにログインできるようになりました。

ローカルログインの2要素認証を有効にする予定であるため、ここでは潜在的な問題があります。何か問題が生じた場合は、ログインできない可能性があります。これを念頭に置いて、グラフィカルログインのみを有効にします。これは必要な場合にエスケープハッチを与えます。

グラフィカルログインのみで2段階認証を有効にし、テキストプロンプトからログインするときの要件を省略することができます。つまり、仮想端末に簡単に切り替えてログインし、変更を元に戻すことができ、問題が発生した場合にGogole Authenciatorは不要になります。

確かに、これはあなたの認証システムに穴を開けますが、あなたのシステムへの物理的なアクセス権を持つ攻撃者はすでにそれをとにかく利用することができます。そのため、2要素認証は、SSH経由のリモートログインに特に効果的です。

LightDMログインマネージャを使用するUbuntuでこれを行う方法は次のとおりです。 LightDMファイルを開いて、次のようなコマンドで編集します。

sudo gedit /etc/pam.d/lightdm

(これらの具体的な手順は、LinuxディストリビューションとデスクトップでLightDMログインマネージャを使用する場合にのみ有効です)。

ファイルの末尾に次の行を追加し、保存します

auth required pam_google_authenticator.so nullok

最後の “nullok”ビットは、二重認証を設定するためにgoogle-authenticatorコマンドを実行していなくても、ユーザにログインさせるようにシステムに指示します。彼らがそれを設定していれば、タイムベイズコードを入力する必要があります。 「ヌルク」を削除すると、Google認証システムコードを設定していないユーザーアカウントでも、グラフィカルにログインすることはできません。

次回ユーザーがグラフィカルにログインすると、パスワードを尋ねられ、電話に表示されている現在の認証コードの入力を求められます。認証コードを入力しないと、ログインできません。

ほとんどの一般的なLinuxデスクトップセッションマネージャがPAMを使用するので、プロセスは他のLinuxディストリビューションとデスクトップでも似ています。適切なPAMモジュールを有効にするために、類似のファイルで別のファイルを編集するだけで済みます。

Ubuntuの以前のリリースでは、パスワードを入力するまでホームディレクトリ全体を暗号化する簡単な「ホームフォルダ暗号化」オプションが提供されていました。具体的には、ecryptfsを使用します。ただし、PAMソフトウェアはデフォルトでホームディレクトリに保存されているGoogle Authenticatorファイルに依存しているため、ログインする前にシステムに暗号化されていない形式でファイルを読むことができないと、PAMがファイルを読み取ることができなくなります。この問題を回避する方法については、まだ推奨されていないホームディレクトリの暗号化オプションを使用しています。

現代版のUbuntuではフルディスク暗号化が提供されていますが、上記のオプションで正常に動作します。特別なことをする必要はありません

グラフィカルなログインにこれ​​を有効にしただけなので、問題が発生すると無効にするのは簡単です。 Ctrl + Alt + F2のようなキーの組み合わせを押して仮想端末にアクセスし、ユーザ名とパスワードでそこにログインします。 sudo nano /etc/pam.d/lightdmのようなコマンドを使用して、ターミナル・テキスト・エディタでファイルを開いて編集することができます。 Nanoのガイドを使って行を削除してファイルを保存すると、通常どおりログインすることができます。

また、他のPAM設定ファイルに “auth required pam_google_authenticator.so”という行を追加することで、他のタイプのログイン(潜在的にすべてのシステムログイン)にもGoogle認証システムを強制することができます。これを行う場合は注意してください。また、「nullok」を追加して、セットアッププロセスを経なかったユーザーがまだログインできるようにすることを忘れないでください。

このPAMモジュールの使い方と設定方法については、ソフトウェアのGitHubのREADMEファイルを参照してください。

誰かが窓のためにこれについて何か聞いたことがありますか?

誰かが窓のためにこれについて何か聞いたことがありますか?

私はちょうど1つを見つけることを試みたが、私はように見えなかった。 Windows用のアプリのように見えるのは、Windows用のアプリではなく、Windows内にあるアプリです。

Linux用の単なるPAMモジュールで、Windowsはいくつかのシステムファイルを変更せずに同じ機能を追加することはできません(おそらく、MS以外の方法で実装することはできませんが、既にデスクトップにログインするための独自のOutlookアカウントを作成しています) OS X

インターネット上のトラフィックのおよそ51%は人間以外であり、検索エンジンのクローラ、データスクレイパー、脆弱性スキャナー、およびその他のコンピューター指向のソースによって生成されるトラフィックで構成されています。