在Windows上的Ubuntu上对Bash的pem文件权限

Chr*_*ard 2 windows bash windows-subsystem-for-linux

我试图使用我的.pem文件登录我的盒子但是我收到了错误

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0555 for './arete-server.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: ./arete-server.pem
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)

chmod 400不适用于Windows上的Ubuntu上的Bash,我可以给它的最佳权限是-r-xr-xr-x

知道如何获得权限,我可以使用这个pem文件吗?

bee*_*est 13

sudo ssh -i mykey.pem ec2-user@ip为我工作


小智 11

在WSL上,chmod dones不适用于Windows使用的NTFS分区.您需要将.pem文件移动到Linux容器中的分区(例如主文件夹),然后chmod 400将起作用.

  1. 导航到NTFS文件夹,例如:cd/mnt/c/keyfiles
  2. 将.pem文件移动到您的主文件夹:mv key.pem~
  3. 导航到您的文件夹:cd~
  4. 应用权限:chmod 400 key.pem


Chr*_*ard -1

解决 sudo 问题后在 linux 子系统文件夹中手动重新创建 pem 文件

使用资源管理器移入系统的文件不会出现,需要使用 nano 创建