14.2.4. キーベースの認証の使用
システムのセキュリティーをさらに強化するには、標準のパスワード認証を無効にして鍵ベースの認証を強制できます。これを行うには、vi、nano などのテキストエディターで
/etc/ssh/sshd_config
設定ファイルを開き、PasswordAuthentication
オプションを以下のように変更します。
PasswordAuthentication no
ssh、scp、または sftp を使用してクライアントマシンからサーバーに接続できるようにするには、以下の手順に従って認証鍵ペアを生成します。鍵はユーザーごとに別々に生成する必要がある点に注意してください。
Red Hat Enterprise Linux 6nbsp;Hat Enterprise Linux 6nbsp;LinuxRed Hat Enterprise Linux 6nbsp;6 はデフォルトで SSH プロトコル 2 および RSA キーを使用します(詳細は 「プロトコルのバージョン」 を参照してください)。
重要
root
として鍵ペアを生成しないでください。root
のみがこれらの鍵を使用できるためです。
注記
システムを再インストールする前に、
~/.ssh/
ディレクトリーをバックアップし、生成されたキーペアを保持します。root を含む、必要なユーザーの新しいシステムのホームディレクトリーに、バックアップデータをコピーします。
14.2.4.1. 鍵ペアの生成
以下の手順に従って、SSH プロトコルのバージョン 2 用の RSA 鍵ペアを生成します。
- RSA 鍵ペアを生成するには、シェルプロンプトで次のコマンドを実行します。
~]$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/john/.ssh/id_rsa):
- Enter キーを押して、新しく作成されたキーのデフォルトの場所(
~/.ssh/id_rsa
)を確認します。 - パスフレーズを入力します。プロンプトが表示されたら再入力して確認します。セキュリティー上の理由により、アカウントのログイン時に使用するパスワードは使用しないでください。この後、以下のようなメッセージが表示されます。
Your identification has been saved in /home/john/.ssh/id_rsa. Your public key has been saved in /home/john/.ssh/id_rsa.pub. The key fingerprint is: e7:97:c7:e2:0e:f9:0e:fc:c4:d7:cb:e5:31:11:92:14 john@penguin.example.com The key's randomart image is: +--[ RSA 2048]----+ | E. | | . . | | o . | | . .| | S . . | | + o o ..| | * * +oo| | O +..=| | o* o.| +-----------------+
~/.ssh/
ディレクトリーのパーミッションを変更します。~]$ chmod 700 ~/.ssh
~/.ssh/id_rsa.pub
の内容を、接続するマシンの~/.ssh/authorized_keys
にコピーし、ファイルがすでに存在する場合はこれを最後に追加します。- 以下のコマンドを使用して、
~/.ssh/authorized_keys
ファイルのパーミッションを変更します。~]$ chmod 600 ~/.ssh/authorized_keys
SSH プロトコルのバージョン 2 用の DSA キーペアを生成するには、次の手順を実行します。
- シェルプロンプトで以下を入力して DSA 鍵ペアを生成します。
~]$ ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/home/john/.ssh/id_dsa):
- Enter キーを押して、新しく作成された鍵のデフォルトの場所(
~/.ssh/id_dsa
)を確認します。 - パスフレーズを入力します。プロンプトが表示されたら再入力して確認します。セキュリティー上の理由により、アカウントのログイン時に使用するパスワードは使用しないでください。この後、以下のようなメッセージが表示されます。
Your identification has been saved in /home/john/.ssh/id_dsa. Your public key has been saved in /home/john/.ssh/id_dsa.pub. The key fingerprint is: 81:a1:91:a8:9f:e8:c5:66:0d:54:f5:90:cc:bc:cc:27 john@penguin.example.com The key's randomart image is: +--[ DSA 1024]----+ | .oo*o. | | ...o Bo | | .. . + o. | |. . E o | | o..o S | |. o= . | |. + | | . | | | +-----------------+
~/.ssh/
ディレクトリーのパーミッションを変更します。~]$ chmod 700 ~/.ssh
~/.ssh/id_dsa.pub
の内容を、接続するマシンの~/.ssh/authorized_keys
にコピーし、ファイルがすでに存在する場合はこれを最後に追加します。- 以下のコマンドを使用して、
~/.ssh/authorized_keys
ファイルのパーミッションを変更します。~]$ chmod 600 ~/.ssh/authorized_keys
SSH プロトコルのバージョン 1 用の RSA 鍵ペアを生成するには、以下の手順に従います。
- RSA 鍵ペアを生成するには、シェルプロンプトで次のコマンドを実行します。
~]$ ssh-keygen -t rsa1 Generating public/private rsa1 key pair. Enter file in which to save the key (/home/john/.ssh/identity):
- Enter を押して、新規作成された鍵のデフォルトの場所(つまり
~/.ssh/identity
)を確認します。 - パスフレーズを入力します。プロンプトが表示されたら再入力して確認します。セキュリティー上の理由から、アカウントへのログインに使用するパスワードと同じパスワードを使用しないでください。この後、以下のようなメッセージが表示されます。
Your identification has been saved in /home/john/.ssh/identity. Your public key has been saved in /home/john/.ssh/identity.pub. The key fingerprint is: cb:f6:d5:cb:6e:5f:2b:28:ac:17:0c:e4:62:e4:6f:59 john@penguin.example.com The key's randomart image is: +--[RSA1 2048]----+ | | | . . | | o o | | + o E | | . o S | | = + . | | . = . o . .| | . = o o..o| | .o o o=o.| +-----------------+
~/.ssh/
ディレクトリーのパーミッションを変更します。~]$ chmod 700 ~/.ssh
~/.ssh/identity.pub
の内容を、接続するマシンの~/.ssh/authorized_keys
にコピーし、ファイルがすでに存在する場合はこれを最後に追加します。- 以下のコマンドを使用して、
~/.ssh/authorized_keys
ファイルのパーミッションを変更します。~]$ chmod 600 ~/.ssh/authorized_keys
システムにパスフレーズを記憶させる設定方法については 「ssh-agent の設定」 を参照してください。
重要
秘密鍵を任意のボディーと共有しないでください。これは個人使用のみを目的としています。