UbuntuのSSHでXNUMX要素認証を構成するにはどうすればよいですか?

二要素認証

La 二要素認証(2FA)は、ソーシャルメディアで使用できるユニークなものではありません または他のウェブサイト。 このセキュリティ対策は、オペレーティングシステム内でも実装できます。

それが理由です 今日は、UbuntuのSSHでXNUMX要素認証を実装する方法を見ていきます よく知られているGoogleAuthenticatorを使用した派生物で、OpenSSHサーバーのセキュリティが大幅に向上します。

通常は、パスワードを入力するか、SSHキーを使用してシステムにリモートでログインする必要があります。

二要素認証(2FA)では、ログインするためにXNUMXつの情報を入力する必要があります。

したがって、SSHサーバーにログインするには、時間ベースのワンタイムパスワードも入力する必要があります。

このワンタイムパスワードは、IETF標準であるTOTPアルゴリズムを使用して計算されます。

Ubuntuおよび派生物でのGoogle認証システムのインストールと構成

実行する最初のステップは、システムにGoogle認証システムをインストールすることです。、システムでターミナルを開き(これは「Ctrl + Alt + T」のキーの組み合わせで実行できます)、その中に次のコマンドを入力します。

sudo apt install libpam-google-authenticator

インストールが完了しました 次のコマンドを使用して、新しくインストールしたアプリケーションを実行します。

google-authenticator

このコマンドを実行するとき、秘密鍵を割り当てることです。これにより、時間に基づいてトークンを使用するかどうかが尋ねられ、「はい」と答えます。

この後、 携帯電話のTOTPアプリを使用してスキャンできるQRコードが表示されます。

ここで 携帯電話でGoogle認証システムアプリケーションを使用することをお勧めします。ilなので、携帯電話のGooglePlayまたはAppleAppStoreからアプリケーションをインストールできます。

すでに携帯電話にアプリケーションがインストールされているので、QRコードをスキャンする必要があります。 QRコード全体をスキャンするには、ターミナルウィンドウを拡大する必要があることに注意してください。

QRコードは秘密鍵を表します、SSHサーバーとGoogle認証システムアプリでのみ認識されます。

QRコードがスキャンされると、携帯電話に一意の30桁のトークンが表示されます。 デフォルトでは、このトークンはXNUMX秒間続き、SSH経由でUbuntuにログインするには入力する必要があります。

Google認証機の秘密キー

ターミナルでは、シークレットコード、確認コード、緊急スタートコードも確認できます。

この情報は、後で使用できるように安全な場所に保管することをお勧めします。 尋ねられる他の質問のうち、文字yを入力して「はい」と答えるだけです。

Google認証システムで使用するSSH構成

すでに上記を頼りに、 次に、Google認証システムを使用してシステムでSSH接続を使用できるようにするために必要な構成を行います。

ターミナルvで次のコマンドを入力します

sudo nano /etc/ssh/sshd_config

ファイル内 次の行を探し、次のようにこれらを「yes」に変更します。

UsePAM yes

ChallengeResponseAuthentication yes

変更が行われたら、Ctrl + Oで行った変更を保存し、Ctrl + Xでファイルを閉じます。

同じ端末で、次のコマンドを使用してSSHを再起動します。

sudo systemctl restart ssh

デフォルトでは、認証ではログインするためにユーザーパスワードを入力する必要があります。

何のために SSHデーモンのPAMルールファイルを編集してみましょう。

sudo nano /etc/pam.d/sshd

このファイルの先頭に、パスワード認証を有効にする次の行が表示されます。

ChallengeResponseAuthentication

はいに設定する必要があります。

ワンタイムパスワード認証も有効にするには、次のXNUMX行を追加します。

@include common-auth

#One-time password authentication via Google Authenticator

auth required pam_google_authenticator.so

ファイルを保存して閉じます。

これ以降、SSH接続を介してシステムにログインするたびに、ユーザーパスワードと確認コード(Google認証システムによって生成されたワンタイムパスワード)の入力を求められます。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ミゲル

    こんにちは、かなり簡単なチュートリアルですが、sshで入力できなくなったすべての手順を実行すると、誤ったパスワードエラーがスローされ、2FAを要求することもできません。

    私はUbuntuServer20.04を持っています