SSHのhostbase認証
SSHでhostbase認証の設定をした。
ようは、パスワードなしでログインできるように設定。
rhostsはさすがにあぶないので、ssh2から使用できるhostbase認証を用いる。
認証の仕組みは、サーバからクライアントに鍵付認証でSSH loginすることで、「サーバにとってクライ
アントが信用できる」としてしまうことである。
もちろん、それだけではなく、shosts(rhosts)を使って、任意のユーザアカウントにログインできるク>ライアントホスト名とユーザを制限する。
下記で、サーバ側はdev@server01、クライアント側は hotmorn@client01とした。
- client側で、serverにログインするときは、hostbase認証を使用するように設定。
# su # vi /etc/ssh/ssh_config EnableSSHKeysign yes Host server01 HostbasedAuthentication yes
これで、server01にログインするときは、hostbase認証を使う。
- server 側 SSHログイン設定
clientに公開鍵認証によるログインをするための作業。% ssh-keygen -t rsa
適当にsshkeyを作成% scp .ssh/id_rda.pub hotmorn@client01:
ここではまだパスワード認証。あるいは、ftp。
- client ユーザ設定
serverから公開鍵認証によるログインを許可するための作業。% cd $HOME % cat id_rsa.pub >> .ssh/authorized_keys
- serverからclientにお試しログイン
% ssh hotmorn@client01
ここでパスフレーズによるログインができればOK - serverのパスワードなしログイン許可設定
# su # vi /etc/ssh/sshd_config IgnoreRhosts no HostbasedAuthentication yes # exit % cd $HOME % vi .shosts 10.1.12.127 hotmorn % chmod 600 .shosts % vi .ssh/known_hosts client01,10.1.12.127 ssh-rsa ....
先頭の「10.1.12.127」を「client01,10.1.12.127」に変更。
このとき、「,」の両側にスペースはいれないこと。 - client からserverにパスワードなしでログイン
% ssh dev@client01
ここで問題がおこったら、デバッグモードで確認すること。% ssh -v dev@server01