我正在尝试通过 Jenkins 的作业将 jar 文件复制到 AWS EC2 实例。复制过程失败,并显示消息“主机密钥验证失败”。对于使用相同 pem 密钥的同事,相同的命令运行正常。我尝试了 -v 选项并收到以下消息... OpenSSH_7.4p1,LibreSSL 2.5.0
debug1:正在读取配置数据 /etc/ssh/ssh_config
debug1:连接到 ec2-3-x-54-111.us-east-2.compute.amazonaws.com [3.xxx] 端口 22。
debug1:已建立连接。
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_rsa 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_rsa-cert 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_dsa 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/chetanapujar/.ssh/id_dsa-cert 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_ecdsa 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_ecdsa-cert 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件/Users/zzz/.ssh/id_ed25519 类型 -1
debug1:key_load_public:没有此文件或目录
debug1:身份文件 /Users/zzz/.ssh/id_ed25519-cert 类型 -1
debug1:为协议 2.0 启用兼容模式
debug1:本地版本字符串 SSH-2.0-OpenSSH_7.4
debug1:远程协议版本 2.0,远程软件版本 OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
debug1:匹配:OpenSSH_7.6p1 Ubuntu-4ubuntu0.3 pat OpenSSH* compat 0x04000000
debug1:以“ubuntu”身份对 ec2-2-z-54-x.us-east-2.compute.amazonaws.com:22 进行身份验证
debug1:已发送 SSH2_MSG_KEXINIT
debug1:已收到 SSH2_MSG_KEXINIT
debug1:kex:算法:curve25519-sha256
debug1:kex:主机密钥算法:ecdsa-sha2-nistp256
debug1:kex:服务器->客户端密码:[电子邮件保护]MAC:压缩:无
debug1:kex:客户端->服务器密码:[电子邮件保护]MAC:压缩:无
debug1:期望 SSH2_MSG_KEX_ECDH_REPLY
debug1:服务器主机密钥:ecdsa-sha2-nistp256 SHA256:H--------
debug1:read_passphrase:无法打开 /dev/tty:未配置设备
主机密钥验证失败。
我重命名了我的“known_hosts”文件(没有清除或删除它),但同样的问题仍然存在
任何帮助都将不胜感激谢谢,
答案1
我使用 ssh 命令连接到 AWS EC2 以测试 pem 文件是否有效。我能够成功连接。我断开了 SSH 连接。第一次连接后,scp 开始工作。我不确定我的第一个 SSH 连接如何解决我的 scp 问题。如果有人可以解释,我将不胜感激。