远程到远程复制的scp主机密钥验证失败

时间:2012-03-20 21:59:42

标签: linux ubuntu copy scp

scp foo user@remote:bar工作正常

scp user@remote:foo bar工作正常

scp user@remote:foo user@remote:bar失败并显示错误:

Host key verification failed.
lost connection

我猜这是因为scp不允许远程复制(在两个不同的远程主机或同一个远程主机之间),因为将数据从point A引导到point L到{{}是低效的1}}而不是直接从point Bpoint A

这是不正确的原因吗?为什么手册中的命令行使用说明没有记录它?或者只是我的Ubuntu发行版上的特定scp试图成为父亲?

3 个答案:

答案 0 :(得分:52)

查看选项:

-3:两个远程主机之间的副本通过本地主机传输。如果没有此选项,则会直接在两个远程主机之间复制数据。请注意,此选项会禁用进度表。

此选项在OpenSSH 5.7

中可用

答案 1 :(得分:16)

有效。您的问题是user @ remote和user @ remote之间的SSH身份验证。 如果它是同一服务器上的同一用户并且您正在使用RSA身份验证,则必须将公钥(〜/ .ssh / id_rsa.pub)附加到用户自身的〜/ .ssh / authorized_keys中。

也要注意名称解析。在您的情况下,“远程”可以是对您的客户有意义的服务器名称,但从远程的角度来看是没有意义的。使用服务器IP(如果服务器不在nat之后)或在客户端和服务器计算机上的/ etc / hosts中设置公共服务器名称:“remote”应该可以从客户端和服务器计算机中解析。

答案 2 :(得分:2)

“请务必注意,在密码或键盘交互式身份验证模式下操作时,SCP无法用于从源远程复制到目标,因为这会向目标服务器显示目标服务器的身份验证凭据。” http://en.wikipedia.org/wiki/Secure_copy#Remote_to_remote_mode

尝试使用基于密钥的身份验证将远程连接到远程scp。