SSH接続の際に秘密鍵のPermissionが広すぎてエラーが出た

こんにちは、kisseです。

先日、ssh接続しようとしたらエラーが出てきました。
この記事が問題に近いです。




秘密鍵のPermissionは広すぎるとよくないよ!

基本的に、秘密鍵って自分しか使わないはずなんで、他のユーザーが使えると良くないはずですよね?
ですが、秘密鍵のPermissionが自分以外のユーザーが読めるようになっちゃってたりします。

するとssh接続の際に、「Permissionが広すぎるよ」って怒られる訳ですね。

じゃあ、Permissionを変更すればいいわけです。
上でリンク貼った記事ではPermissionに600を設定していました。
これは、「ファイルの所有者(自分)が読み書きできるよ」ってことを示しています。

なので、chmodコマンドでPermissionを変更してあげましょう。

$ chmod 600 [秘密鍵のパス]

よし、これで接続できますね。

600も広すぎる説

そもそも秘密鍵って書き換えたり更新したりしますっけ?
(知らないだけかも)
っていうわけで、読みの権限だけにしてあげることにしました。

$ chmod 400 [秘密鍵のパス]

これで、事故が減りそうですね。
更新する可能性があれば、その時に変更してあげることにしましょう。

余談: 今、手元にある秘密鍵のPermissionを調べてみた

いろんなクラウドサービスなどなどを利用していると秘密鍵増えますよね。

それらの秘密鍵のPermissionを調べてみました。

大体、600か400でした。600のが多いぞ。




おわり

ssh接続の際にエラーが出たら秘密鍵のPermissionを確認してみましょう。
特に、自分で生成した鍵でない場合には注意が必要らしいですよ。

最後まで読んでいただきありがとうございます!

あわせて読みたい