sshd_configを以下のように編集します。
$ cd /etc/ssh $ sudo vim sshd_config
パスワードでのログインを禁止する
PasswordAuthentication yes ↓ PasswordAuthentication no
対話的キーボード認証をコメントアウトし不可にする
PAMAuthenticationViaKBDInt yes ↓ #PAMAuthenticationViaKBDInt yes
秘密鍵、公開鍵の作成を行います。鍵の作成は一般ユーザーで行います。
$ /usr/bin/ssh-keygen -t rsa 公開/非公開 rsa 鍵のペアを生成しています。 鍵を保存するファイルを入力してください (/home/admin/.ssh/id_rsa): <--鍵の名前を入力(空Enterでデフォルト) パスフレーズを入力してください (パスフレーズなしの場合は空): <--パスワードを入力 パスフレーズをもう一度入力してください: <--パスワードを再入力 識別情報が /home/admin/.ssh/id_rsa に保存されました。 公開鍵が /home/admin/.ssh/id_rsa.pub に保存されました。 鍵のフィンガープリント: c3:e1:63:dd:5e:a8:1f:61:9d:eb:63:d5:86:3d:91:e7 hoge@example.jp
秘密鍵、公開鍵が作成された事を確認
$ cd ~/.ssh $ ls -la 合計 14 drwx------ 2 admin staff 4 5月 8日 10:46 ./ drwxr-xr-x 6 admin staff 17 5月 7日 17:47 ../ -rw------- 1 admin staff 951 5月 8日 10:46 id_rsa <--秘密鍵 -rw-r--r-- 1 admin staff 236 5月 8日 10:46 id_rsa.pub <--公開鍵
公開鍵をリネームしパーミッションを変更します
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys
元ファイルを削除します。
$ rm -f ~/.ssh/id_rsa.pub $ rm: /home/admin/.ssh/id_rsa.pub を消去しますか (yes/no)? y
id_rsaファイルをクライアント側に保存します。
ここでは、ファイルの内容をコピー&ペーストしてクライアントに保存しています。
【id_rsaの表示例】
$ sudo svcadm restart ssh
端末エミュレータを起動し、秘密鍵の設定をせずに、アクセスが不可である事を確認してください。
以下の画面はTeraTermを利用した場合となります。
TCPポート#(P) | 22 |
サービス | SSHを選択 |
SSHバージョン | SSH2を選択 |
ユーザ名 | ユーザ名を入力 |
パスフレーズ | パスワードを入力 |
RSA/DSA鍵を使う | チェックを入れる |
秘密鍵 | クライアントに保存したid_rsaファイルを指定する |
以上で、SSHアクセスの設定は完了です。