vagrant ssh でPermission denied の原因と対策
vagrant環境でごにょごにょやった後、exitしてから再度vagrant sshしようとした時にPermission deniedになって入れなくなると絶望します。
二度とこういうことを起こさないためにPermission deniedの原因と対策をメモ
大変参考になったサイト
http://qiita.com/youcune/items/2f427979403771f2e03a
このサイトの
パーミッションは適切か
の部分が該当しました。
いろいろな問題があってhomeディレクトリ以下のパーミッションをすべて777にしていたのでまずかったようです。
/home/user/.ssh は 0700
/home/user/.ssh/authorized_keys は 0600
でないといけないらしく、パーミションを変更した際はssh関連のパーミッションが変更されていないか確認しましょう。
再現
sshログインする
$ vagrant ssh
入れる。
ホームディレクトリ以下のパーミッションを変える
$ chmod -R 777 /home/vagrant
exitする
$ exit
再度sshログイン
$ vagrant ssh
Permission denied
死んだ。
死んでしまったvagrantはもうどうにもすることができない?
saharaプラグイン等を使ってrollbackできるようにしておいたほうが良いです。