sshの鍵認証で躓いたら.sshディレクトリ のパーミッションを確認すべし
sshの秘密鍵や公開鍵は、それを持つだけでユーザーアカウントへのログイン権限を得られるものであり、パーミッションがユルユルだと危険なのでsshサーバーやクライアントから利用を拒否されます。具体的には
- クライアント側にid_rsaなど秘密鍵を用意しても鍵認証ができない
- 秘密鍵(id_rsaなど)のパーミッションが緩い
- サーバー側にauthorized_keysなど公開鍵を用意しても鍵認証ができない
- 公開鍵(authorized_keys)のパーミッションが緩い
- configが読み込まれない
- configファイルのパーミッションが緩い
こういう時は、.sshディレクトリやそれ以下のディレクトリは700、.ssh以下のファイルは600にchmodでパーミッションを変更するべきです。つまり、
find ~/.ssh -type d -print | xargs chmod 700 ; find ~/.ssh -type f -print | xargs chmod 600
このコマンド1行で大体直ると思います。
スポンサーリンク
コメント