VSCodeからRemote SSHで接続しようとすると「UNPROTECTED PRIVATE KEY FILE!」と言われる場合の対処法 (windows10)
背景
2020年3月28日、昨夜まで接続できていたAWS環境に突然繋がらなくなった。
自動更新を有効にしているとこういった理不尽がしばしば降りかかる。
接続時に出てくるエラーは以下。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'C:\\Users\\ユーザー名\\.ssh\\秘密鍵名.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "C:\\Users\\ユーザー名\\.ssh\\id_rsa": bad permissions
結論
- 秘密鍵ファイルを右クリックしてプロパティを表示
- 「セキュリティ」タブの「詳細設定」から継承の無効化を選択
- 「継承されたアクセス権をこのオブジェクトの明示的なアクセス許可に変換します。」を選択し「OK」
- 再度「セキュリティ」タブの「編集」から自身以外のユーザーを削除して「OK」
- この状態で接続を試す
おわりに
「ユーザーディレクトリ配下に秘密鍵を置けば良い」と思っていたが、突如それでは機能しなくなってしまった。
同じ現象に悩んでいる人の助けになれば幸いです。