步骤 1 - 设置公共 SSH 密钥
在我们的原始服务器上,我们将生成没有密码的公共 SSH 密钥:
ssh-keygen -f ~/.ssh/id_rsa -q -P ""cat ~/.ssh/id_rsa.pub
这是我们的公共 SSH 密钥,可以放置在其他主机上以便让我们访问:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLVDBIpdpfePg/a6h8au1HTKPPrg8wuTrjdh0QFVPpTI4KHctf6/FGg1NOgM++hrDlbrDVStKn/b3Mu65//tuvY5SG9sR4vrINCSQF++a+YRTGU6Sn4ltKpyj3usHERvBndtFXoDxsYKRCtPfgm1BGTBpoSl2A7lrwnmVSg+u11FOa1xSZ393aaBFDSeX8GlJf1SojWYIAbE25Xe3z5L232vZ5acC2PJkvKctzvUttJCP91gbNe5FSwDolE44diYbNYqEtvq2Jt8x45YzgFSVKf6ffnPwnUDwhtvc2f317TKx9l2Eq4aWqXTOMiPFA5ZRM/CF0IJCqeXG6s+qVfRjB root@cloudads
将此密钥复制到剪贴板并登录到目标服务器。
将此 SSH 密钥放入您的 ~/.ssh/authorized_keys 文件中:
如果您的 SSH 文件夹不存在,请手动创建:
mkdir ~/.sshchmod 0700 ~/.sshtouch ~/.ssh/authorized_keyschmod 0644 ~/.ssh/authorized_keys
步骤 3 - 使用 Rsync 复制文件
Rsync 是一个很棒的实用工具,它允许您在加密通道上递归地进行文件复制和压缩,以及执行许多其他操作。
我们将从我们的原始服务器(198.211.117.101)中的 /root/bigfile.txt 复制一个文件到我们的目标服务器(IP: 198.211.117.129),并将其保存在 /root/bigfile.txt 中。
在 198.211.117.101 上登录并将文件 rsync 到 198.211.117.129:
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /root/bigfile.txt 198.211.117.129:/root/
如果您使用不同的用户,例如 “username”,那么您需要在目标服务器前附加该用户。确保在该用户的 ~/.ssh/authorized_keys 文件中有您的公钥:
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress /root/bigfile.txt username@198.211.117.129:/
SSH 选项对于保持 Rsync 安静并且不在每次连接到新服务器时提示非常有用。
验证您是否在目标服务器(198.211.117.129)上收到了文件:
ls -la /root/bigfile.txt
然后您就完成了!