_EC2
_(_Linux OS
_)を実行している実行中の_Amazon Linux AMI release 2018.03
_インスタンスがあります。
_Windows 10
_がコマンドプロンプトでSSH
クライアントを使用できる場合、SSH
プライベートキー(_EC2
_ファイル)をSSH
によってキーペアとして提供され、_.pem
_インスタンスにAWS
_EC2
_インスタンスの設定。
cmd
で使用しているコマンドは次のとおりです。
_ssh -i private_key.pem [email protected]
_
ここで_private_key.pem
_は、AWS
によって提供される秘密鍵ファイルの名前です。
しかし、エラーが発生し続けます。
_@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'private_key.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 "private_key.pem": bad permissions
[email protected]: Permission denied (publickey).
_
私が明確にしたいいくつかのこと:
StackOverflowにも同様の質問があります。これらの質問には、実際には、MacOS
/Linux
(UNIX
ベースのOS)を実行しているホストから_EC2
_インスタンスへの接続を試みることが含まれます。私の場合、コマンドプロンプトを使用してWindows
10ホストから接続しようとしています。
(1)で説明したような他の質問への回答として、秘密鍵ファイル(_.pem
_)ファイルのファイル権限を読み取り専用(_chmod 444 file.pem
_)に変更することを提案する人がいます。それに応じて、_.pem
_ファイルを、Windows
のファイルプロパティから読み取り専用として作成しようとしました。これは助けにはなりませんでした。同じエラーが発生し続けます。
Windows 10のcmdから他のリモートLinuxホストに接続できます。これは、Windows 10のSSHクライアントに問題がないことを示唆しています。
この接続は、PuTTY
の代わりにCMD
を使用することで簡単にできることはわかっていますが、それがこの質問の目的ではありません。いくつかの制約のため、PuTTY
を使用できないと仮定してください。
任意の助けいただければ幸いです。
その通りです-それは、Windowsのアクセス許可モデルがLinuxとは異なるためです。
詳細: Linuxファイルの権限について-Linux.com
問題を修正する方法のヒントはたくさんあります。 this このリポジトリからのスクリプトを適用することをお勧めします: openssh-portable
。概要セキュアファイルACLを設定します。 1. Administratorsグループ、システム、現在のユーザーを除くすべてのユーザーACLを削除2.所有者を取得するかどうか.Outputs N/A .Inputs FilePath-ファイルtakeownerへのパス-所有権を取得する場合