今回ははCentOS7 における、公開鍵認証でのTeraTerm ターミナルエミュレータによるSSH ログインを設定していきます。
まず、wheel グループに加えたユーザーのホームディレクトリで公開鍵を保存する隠しディレクトリ、.ssh を作成します。つづいてroot にスイッチしてパーミッションを一時的に777 に設定します。
$ mkdir .ssh
$ su (switch user してroot のパスワード入力
# chmod 777 .ssh
次に、TeraTerm のメニューバーの[設定]-[SSH鍵生成(N)…] から公開鍵と秘密鍵を[生成(G)] ボタンをクリックするとパスフレーズを求められるので入力、再入力をして生成します。
[公開鍵の保存] と[秘密鍵の保存] ボタンをクリックしてそれぞれ、id_rsa.pub, id_rsa という名前(デフォルト)でホストの適当なフォルダに保存します。
次にエクスプローラで、id_rsa.pub ファイルをホームディレクトリ上のTeraTerm 画面にドラッグ&ドロップすると以下の画面が表示されるので下図のように、SCP:[.ssh] と入力してファイル転送します。
再びターミナルに戻り、転送した公開鍵をauthorized_keys という名前に変更。(WinSCPなど複数の鍵を追加するときは、cat id_rsa.ppk >> authorized_keys など)鍵のパーミッションを600 に、.ssh ディレクトリのパーミションを700 に変更します。
# cd .ssh
# mv id_rsa.pub authorized_keys
# chmod 600 authorized_keys
# chmod 700 .
それから/etc/pam.d/sshd に以下の行を追記、
account required pam_nologin.so
account required pam_access.so (追記
デフォルトでは、/etc/security/access.conf を参照しますが、
account required pam_access.so accessfile=/dir/to/ssh_access.conf
で指定したパスの.conf ファイルを指定することもできます。
一方、/etc/security/access.conf に +:wheel:ALL と、+:username:ALL と、– : ALL: ALL を追記。
# Disallow non-local logins to privileged accounts (group wheel). (の付近
#
#-:wheel:ALL EXCEPT LOCAL .win.tue.nl
+:wheel:ALL (追記
+:username:ALL(追記
# All other users should be denied to get access from all sources.
#- : ALL : ALL (その他のすべてのユーザーを拒否
- : ALL : ALL (wheel グループ以外をアクセス制限するには、- : ALL EXCEPT wheel : ALL
最後に/etc/ssh/sshd_config に公開鍵認証の設定をして
#ServerKeyBits 1024
ServerKeyBits 2048 (たぶん、必要
#PubkeyAuthentication no
PubkeyAuthentication yes (公開鍵認証をyes
#PasswordAuthentication yes
PermitEmptyPasswords no
PasswordAuthentication no (パスワード認証をno
sshd 再起動、ログアウトします。
# systemctl restart sshd
TeraTerm の新しいショートカットのプロパティを以下の属性で作ると、1クリックで公開鍵認証でログインできると思います。
"C:\Program Files (x86)\teraterm\ttermpro.exe" localhost:22 /ssh2 /auth=publickey /user=username /ask4passwd /keyfile="C:\pass/to/id_rsa"
ログインできない場合、原因はいろいろあると思いますがfirewalld でのポート開放(SSHのポート番号の変更をしたとき。)、鍵やディレクトリの所有権、SeLinux のコンテキストの確認、PAM の書式(設定ファイルの行の前後位置)、ローカル、リモートでのアクセス制限、IPの設定はどうなっているなどを確認してみて下さい。
参考URL:http://qiita.com/tjinjin/items/ca6f5518e881bdf5488c