SSHアクセスは常に重要であり、SSHアクセスのセキュリティを向上させる方法を見つけることをお勧めします。この記事では、Google認証システムを使用して単純な2要素認証でSSHを保護する方法を説明します。これを使用する前に、サーバー上のSSHデーモンをGoogle AuthenticatorワンタイムパスワードプロトコルTOTPと統合する必要があります。また、別の制限として、Androidスマートフォンを常に、または少なくともSSHアクセスが必要なときに携帯する必要があります。このチュートリアルはCentOS7用に書かれています。
まず、シェルで次のコマンドを実行して、オープンソースのGoogle認証システムPAMモジュールをインストールします。
yum install google-authenticator
このコマンドは、Centos7サーバーにGoogle認証システムをインストールします。次のステップは、確認コードを取得することです。サーバーの簡単な質問に答えるだけで、検証コードとスクラッチコードを取得するのは非常に簡単なコマンドです。次のコマンドを実行して、この手順を実行できます。
google-authenticator
このステップは非常に重要で重要であるため、ステップバイステップで役立つように表示されている次のスクリーンショットのような出力が表示されます。緊急スクラッチコードを安全な場所に書き留めてください。使用できるのは1回だけで、スマートフォンを紛失した場合に使用することを目的としています。
次に、携帯電話にGoogle認証システムアプリケーションをダウンロードします。このアプリはAndroidとiPhone用に存在します。私はAndroidを持っているので、「googleauthenticator」と入力するだけで検索したGooglePlayストアからダウンロードします。
次のステップは、最初に/etc/pam.d/sshdを変更することから始めるいくつかのファイルを変更することです。行の最後に次の行を追加します:
auth required pam_google_authenticator.so
/ etc / ssh/sshd_configである次のファイルを変更します。ファイルに次の行を追加し、すでに配置されている場合は、パラメータを「yes」に変更します。
ChallengeResponseAuthentication yes
次に、次のコマンドでsshのサービスを再起動します。
service sshd restart
最後のステップは、SSHでサーバーに接続してサービスをテストし、確認コードが必要かどうかを確認することです。次のスクリーンショットは、何度も変更され続ける確認コードを示しており、ログインする必要があります。
これで、Google認証システムに基づいてSSH認証を正常に構成できました。これでSSHは安全になり、誰かがあなたの電話へのアクセスを必要とする確認コードを持っていない限り、ブルートアタックがサーバーに侵入することはありません。
- CentOS
- GoogleAuthenticatorに関するウィキペディアのページ