我想从WSL ssh连接到我的AWS EC2示例,但即使在chmod 400 ___.pem多次之后,它仍然返回
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0555 for '________.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 "________.pem": bad permissions
ubuntu@_______.compute-1.amazonaws.com: Permission denied (publickey).
然后我决定遵循https://www.youtube.com/watch?v=mrUqITjUhL8的建议,并在WSL和powershell上做了同样的事情,最终结果是使用相同的命令并通过文件资源管理器修改文件权限,导致powershell能够连接到EC2示例,但由于相同的错误消息,WSL仍然无法连接。
我想知道我是否错过了什么,我真的很想使用WSL与AWS一起工作
2条答案
按热度按时间ilmyapht1#
我想知道我是否错过了什么,我真的很想使用WSL与AWS一起工作
您忽略了文件权限在Linux和Windows中的工作方式不同。您需要通过
chmod
命令而不是使用Windows文件资源管理器来修复文件上的Linux文件权限。如果在Windows和Linux中使用相同的文件,则首先需要在Linux端复制它,可能在
~/.ssh
文件夹中,然后在文件上执行chmod 600
。ru9i0ody2#
如果您引用的是Windows文件系统中的文件,默认情况下,它们不会保留Linux权限。但是,有一种方法可以启用此权限。编辑或创建(使用
sudo
)/etc/wsl.conf
并添加以下内容:关闭所有WSL终端并打开一个新终端。
**注意:**如果私钥在你的Windows文件系统上(在/mnt/下),你不能在Windows上的Ubuntu上的Bash上使用chmod修改Windows文件系统上文件的权限。你必须将私钥复制到你的WSL主目录(~)并在那里进行。