SSH鍵へパスフレーズを設定
パスフレーズが設定されているかの確認
まず、ローカル側で使用している鍵にパスフレーズが設定されているか確認します。
$ ssh-keygen -yf ~/.ssh/秘密鍵ファイル名(id_rsa)
パスフレーズが設定されていない場合、公開鍵が表示されます。
パスフレーズが設定されている場合、パスフレーズを入力後、公開鍵が表示されます。
パスフレーズを変更したい場合
$ ssh-keygen -f 秘密鍵ファイル名(id_rsa) -p
パスフレーズを設定して新規に鍵を作成する場合
作成時に一緒にパスフレーズが聞かれます。
$ ssh-keygen -t rsa
サーバーへパスフレーズを追加した公開鍵を転送する
$ scp -r id_rsa.pub hoge-user@hoge.com:/home/.ssh
Permission denied(publickey)の解消
/etc/ssh/sshd_configの設定を変更 設定した後に元に戻すことを忘れずに。 パスフレーズを有効にしてログインする場合には、PasswordAuthenticationをyesに設定しないとログイン出来なかった。
# ルート権限でのログイン noに戻しておくこと PermitRootLogin no # id_rsa.pubを用いてログインするのでyesのままでOK PubkeyAuthentication yes # パスワードでのログインは行わないのでnoに戻しておくこと PasswordAuthentication yes # 空のパスワードでのログインは認めないのでnoに戻しておくこと PermitEmptyPasswords yes
再起動
sudo service sshd restart