パスワードなしの公開鍵認証でssh接続
スポンサードリンク
expectで対話型シェルでは、bashの中でexpectスクリプトを読み込ませていますが、このサンプルには以下のような弱点があります。
これらをクリアするために、ssh-agentで公開鍵を生成して、パスワードなしでsshが使えるようにしておきます。
1. 鍵の生成
以下のコマンドで鍵を生成します。
ssh-keygen -t rsa
-tは、暗号方式を指定しています。
Enter file in which to save the key (/home/username/.ssh/id_rsa):
デフォルトでは、ホームディレクトリの.ssh以下に生成されます。何も入力せずエンターを押せばデフォルトを受け入れます。
次に、パスフレーズを訊かれるので、
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
何も入力せずエンターを押すと、パスワードなしで接続可能な設定になります。
.ssh以下に、鍵が生成されます。
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xxxx:xx:xx:xx:xx:xx:xx:xx username@hostname