我试图使用SCP从使用私钥的远程VPS复制文件到本地机器。
根据我尝试的内容,我会得到不同的错误,我也不确定正确的方法应该是什么。
以下是我尝试过的:
scp -i ~/.ssh/private-key root@123.456.78.90:/var/www/html/index.html /var/www/html/这要求输入私钥密码,然后给出错误/var/www/html是一个目录。
scp -i ~/.ssh/private-key root@123.456.78.90:/var/www/html/index.html root@localhost:/var/www/html/这要求输入私钥密码,然后说主机密钥验证失败。失去了联系。
scp -i ~/.ssh/private-key root@123.456.78.90:/var/www/html/index.html root@192.168.1.142:/var/www/html/这只是给了一个空白的屏幕,似乎永远持续。我猜想这可能是真正起作用的方法,但可能只是复制的速度非常慢?
我尝试使用ssh连接到服务器,使用相同的密钥文件,运行良好,所以我不确定问题是什么。
有没有人有解决办法,或者知道我做错了什么?谢谢
发布于 2017-09-22 11:05:37
对于第一个错误--尝试给出文件的名称--正如错误消息所述,而不是/var/www/html,将目标设置为/var/www/html/index.html。
第二个错误听起来像是您试图复制的服务器自上次访问以来更改了它的公钥。如果是这种情况(而且您确信这不是安全漏洞),请使用ssh-keygen -R host删除缓存的密钥;在下一次尝试连接时,将要求您接受新密钥。然而,我认为修改第一种方式应该有效。
发布于 2018-06-20 12:55:00
基本上,您忽略了所有方面的语法。您应该首先检查语法。如果我想将文件从VPS复制到本地服务器,我会在本地机器上做如下所示。
cd /var/www/html/
scp -i ~/.ssh/private-key -r root@123.456.78.90:/var/www/html/* .这将将整个文件夹复制到本地/var/www/html/中。
或者,如果我要将数据从VPS传输到本地计算机,则需要将公共IP分配到本地计算机或服务器。在远程VPS中,我会做下面这样的事情。
cd /var/www/html/
scp -i <key_path> -r * root@<my_local_machine_public_ip:~/var/www/html/或者从远程VPS复制到本地计算机上的/tmp文件夹,如下所示。
cd /var/www/html/
scp -i <key_path> -r * root@<my_local_machine_public_ip:~/tmp/发布于 2018-06-19 19:50:20
在scp命令中添加以下选项
-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/nullhttps://serverfault.com/questions/875005
复制相似问题