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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.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
Ubuntu 密钥\u加载\u公共:ssh keygen之后的格式无效_Ubuntu_Ssh - Fatal编程技术网

Ubuntu 密钥\u加载\u公共:ssh keygen之后的格式无效

Ubuntu 密钥\u加载\u公共:ssh keygen之后的格式无效,ubuntu,ssh,Ubuntu,Ssh,将Ubuntu更新到16.04后,我的ssh连接出现了一些问题,现在连接需要密码,尽管我的公钥是通过ssh-copy-id复制到远程授权密钥中的。在新的ssh副本id之后,我收到密钥加载\u public:无效格式,为了确保密钥格式正确,我通过ssh-keygen生成了新密钥,并重新启动了ssh-copy-id,但结果是相同的key\u-load\u-public:invalid format,与我必须键入密码的所有ssh连接相同 如何在远程服务器上生成密钥并复制,而不收到此“无效格式”错误 s

将Ubuntu更新到16.04后,我的ssh连接出现了一些问题,现在连接需要密码,尽管我的公钥是通过ssh-copy-id复制到远程授权密钥中的。在新的ssh副本id之后,我收到
密钥加载\u public:无效格式
,为了确保密钥格式正确,我通过
ssh-keygen
生成了新密钥,并重新启动了ssh-copy-id,但结果是相同的
key\u-load\u-public:invalid format
,与我必须键入密码的所有ssh连接相同

如何在远程服务器上生成密钥并复制,而不收到此“无效格式”错误

ssh-v@:
OpenSSH_7.2p2 Ubuntu-4ubuntu2.1,OpenSSL 1.0.2g 2016年3月1日
debug1:读取配置数据/etc/ssh/ssh\u config
debug1:/etc/ssh/ssh\u配置第19行:应用*
debug1:/etc/ssh/ssh\u配置第57行:不推荐的选项“useroaming”
debug1:连接到[]端口22。
debug1:已建立连接。
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_rsa type-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_rsa-cert类型-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_dsa type-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:标识文件/home/.ssh/id_dsa-cert类型-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_ecdsa type-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_ecdsa-cert type-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_ed25519 type-1
debug1:key\u load\u public:没有这样的文件或目录
debug1:identity file/home/.ssh/id_ed25519-cert type-1
debug1:启用协议2.0的兼容模式
debug1:本地版本字符串SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.1
debug1:远程协议版本2.0,远程软件版本OpenSSH_7.2p2 Ubuntu-4ubuntu2.1
debug1:match:OpenSSH_7.2p2 Ubuntu-4ubuntu2.1 pat OpenSSH*compat 0x04000000
debug1:身份验证到:22为“”
debug1:SSH2\u MSG\u KEXINIT已发送
debug1:SSH2\u MSG\u KEXINIT已收到
debug1:kex:算法:curve25519-sha256@libssh.org
debug1:kex:主机密钥算法:ecdsa-sha2-nistp256
debug1:kex:server->client cipher:chachacha20-poly1305@openssh.comMAC:压缩:无
debug1:kex:client->server cipher:chachacha20-poly1305@openssh.comMAC:压缩:无
debug1:需要SSH2\u MSG\u KEX\u ECDH\u回复
debug1:服务器主机密钥:ecdsa-sha2-nistp256 SHA256:2xmttbzpu31c8ofzczzmpsps9he0vaspa7rlikrx5aa
无法建立主机“()”的真实性。
ECDSA密钥指纹是ZCYZMPSPS9HE0VASPA7RLIKRX5AA的SHA256:2xMTTBZPU31C8。

使用ssh-keygen命令在远程计算机中生成密钥,然后

cd ~/.ssh
在远程计算机中生成sshkey并将.pub文件复制到授权密钥,只需执行以下命令即可

cat <key>.pub >> authorized_keys
ssh -i <key-file> <username>@<ip>
cat.pub>>授权密钥
将另一个密钥文件(私钥)复制到您的计算机上,然后使用该文件登录。请使用以下命令进行该操作

cat <key>.pub >> authorized_keys
ssh -i <key-file> <username>@<ip>
ssh-i@

如果您想实现ssh连接,而每次都不需要密钥文件的帮助,请将您机器中生成的.pub文件添加到远程机器的~/.ssh/authorized_密钥中,这样您只需提供ip或主机名即可登录。谢谢您的回答,这个过程会影响其他用户的ssh连接吗?我不是唯一一个在这个远程服务器上使用ssh连接的人。不,除非你从授权密钥文件中删除任何内容,否则它不会。超级,现在我尝试这个过程,我希望这可以帮助我,非常感谢!在我尝试将ssh仅用于
user@hostname
,在这种情况下,我收到了相同的错误:
密钥\u加载\u公共:无效格式
,在我的授权密钥文件中,我复制了服务器上生成的.pub文件的内容,奇怪的是当我启动
ssh-I时user@host
连接不需要密码。有什么想法吗?对于从您的机器访问,过程是相反的,即;在您的计算机中生成密钥,并将.pub文件复制到远程计算机的~/.ssh/authorized_密钥。另外,这是一种无密码身份验证方法,只需要密钥作为auth。您使用的密钥类型是什么?完整的调试日志是什么样子的?Stackoverflow用于帮助软件开发。对于一般SSH使用的问题,您应该考虑请求或替代。话虽如此,我在您的问题中包含的ssh调试输出中没有看到无效的格式错误。如果您认为这个问题是关于这个主题的,那么您应该将您的问题包含在一个ssh调用中,该调用实际上演示了您遇到的问题。好的,您是对的!如何将问题转移到超级用户或Unix&Linux?