完全披露,我是一名网络开发人员,而不是网络管理员,所以这些东西在我的驾驶室之外。
我尝试使用cURL启动SFTP连接并将简单文本文件传输到远程主机。当我运行这个cURL命令时:
curl -u username:password -T /path/to/file.txt sftp://host.com:22/file.txt
我收到此错误:curl:(51)SSL对等证书或SSH远程密钥不正常
所以我联系了远程主持人的管理员,他们回复了这条消息:
请使用我们的主机密钥ssh-dss 1024 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef
经过一番挖掘,我了解到我无法从他们提供的信息中生成公钥。我不知道如何处理这些信息。有什么建议?我想我以为我需要他们的公钥文件......这是正确的吗?
非常感谢任何和所有的见解。谢谢!
答案 0 :(得分:2)
我想最简单的方法是使用sftp
sftp host.com
它会提示您验证主机密钥或出现错误,指出不允许使用DSA。在第一种情况下,请确认您拥有与管理员提供的相同的内容并写下"是"。
如果您的客户不接受DSA,请在HostKeyAlgorithms +ssh-dss
中添加~/.ssh/config
。
之后,您应该能够使用您的命令传输文件。
答案 1 :(得分:0)
-k,-不安全
(SSL)此选项明确允许curl执行“不安全的” SSL连接>并进行传输。试图通过使用默认安装的CA证书捆绑包来确保所有SSL连接的安全。除非使用-k,--insecure,否则所有认为“不安全”的连接都会失败。
有关更多详细信息,请参见此在线资源:http://curl.haxx.se/docs/sslcerts.html
来自:https://serverfault.com/questions/469824/curl-disable-certificate-verification