鍵認証で入れていたSSHが、ある日は入れなくなったとき
鍵認証で入っていたVPSに入れなくなって、さんざん悩んで解決したのでメモ。
どういうこと?
VPSを借りて、ログインには鍵認証を使ってパスワード入力なしで入っていました。 2~3日ぶりにサーバーにログインしようとしたら、パスワード入力のモーダルが出てきました。 変だなと思ったけど、しょうがないからパスワードを入れても、再度ターミナルからパスワード入力をしないと入れない。ってなことがあった。(伝わるかな?)
やったこと
ssh-agentの確認
「ssh-agentに情報を登録しなおしたら入れるよ」というのをどっかで見たので、やってみた。
$ ssh-add -K {鍵の場所} $ ssh-add -l 2048 {鍵情報} (RSA) <= 登録されてる $ ssh {ユーザー}@{URL} {ユーザー}@{URL}'s password: <= だめ・・・
入れない・・・
パーミッション変更
「パーミッションが正しくないと入れないよ」と言われたので、やってみた。
# ローカル $ cd .ssh $ ls -l -rw------- 1 {ユーザー} staff 1.7K 8 26 18:35 id_rsa -rw------- 1 {ユーザー} staff 415B 8 26 18:35 id_rsa.pub
うーん、大丈夫っぽい。
# サーバー $ cd .ssh $ ls -l -rw-------. 1 {ユーザー} {ユーザー} 383 9月 5 11:04 authorized_keys
うーん、大丈夫そう・・・。
結局
サーバーの鍵を削除して、ローカルの鍵を登録しなおしました。
# サーバー $ cd .ssh $ vi authorized_keys 該当する記述を削除
これでサーバはOK
# ローカル $ cd .ssh $ ssh-copy-id -i id_rsa.pub {ユーザー}@{URL} /usr/local/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub" /usr/local/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/local/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys {ユーザー}@{URL}'s password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh '{ユーザー}@{URL}'" and check to make sure that only the key(s) you wanted were added. # 入ってみる $ ssh {ユーザー}@{URL} [{ユーザー}@{URL} ~]$ <= 入れた!!!
こんなに簡単に入れるなら最初からこうしておけばよかった。。。
残念な時間の使い方をしました。。。