Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在NTFS上使用带有私钥文件的ssh keygen_Ssh_Ssh Keys_Ssh Keygen - Fatal编程技术网

在NTFS上使用带有私钥文件的ssh keygen

在NTFS上使用带有私钥文件的ssh keygen,ssh,ssh-keys,ssh-keygen,Ssh,Ssh Keys,Ssh Keygen,我试图使用ssh-keygen从Windows分区读取私钥文件,并输出公钥 不幸的是,我遇到以下错误: $ ssh-keygen -y -f private_deploy_key @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

我试图使用ssh-keygen从Windows分区读取私钥文件,并输出公钥

不幸的是,我遇到以下错误:

$ ssh-keygen -y -f private_deploy_key
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0755 for 'spot_private_deploy_key' 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: private_deploy_key
Enter passphrase: 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0755 for 'spot_private_deploy_key' 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: private_deploy_key
load failed
由于这是一个NTFS文件系统,我无法更改该文件的权限:

$ chmod 600 spot_private_deploy_key

$ ls -l
total 4
-rwxr-xr-x 1 meyerat meyerat 1678 Jul  2 16:28 spot_private_deploy_key

有办法解决这个问题吗?我意识到我可以将文件复制到我的Linux分区所在的ext4文件系统,并在那里运行命令;但是有更好或者更简单的方法吗?

我发现了一个与此相关的讨论

我查看了源代码,发现:

如果st.st\u uid==getuid&&st.st\u mode&077!=0 { 错误@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; 错误@警告:未受保护的私钥文件!@; 错误@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; “%s”的errorPermissions 0%3.3o太开放,u_intst.st_模式& 0777,filename;error建议您的私钥文件 其他人无法访问。;错误此私钥将被删除 已忽略。;返回0;}

错误消息不正确,这不是建议,而是错误消息 要求使用SSH无法绕过这一点


因此,我认为唯一的解决方案是使用不同的权限装载NTFS文件系统。

这很烦人,尽管我知道其背后的原因。我是否可以从stdin或其他东西读取密钥文件,以便SSH无法检查权限?