小梅の日記帳

覚書き、メモ、等々残していくつもりです。

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