你需要什么
要实现这一点,你需要三个Linux机器,所有这些机器都接受SSH连接,还需要SSH密钥进行身份验证。
SSH密钥
必须做的第一件事是将SSH密钥复制到服务器,以下是的服务器布局:服务器A= 192.168.1.15服务器B 192.168.1.160客户端C 192.168.1.7
需要做的是将SSH密钥来回复制到每台机器,这是用以下命令完成的:ssh-copy-id USER@IP
其中USER是远程用户,而IP是机器的IP地址。确保从A到B,从A到C,从B到A,从B到C,从C到A,再从C到B。
现在你应该能够从客户机C到服务器A的SSH,然后从服务器A到服务器B使用SSH密钥认证。
如何配置SSH
现在需要在~/.ssh/config文件中映射的服务器,以前,你可以简单地发出命令:scp USER@192.168.1.15:/home/USER/test.txt USER@192.168.1.160:/home/USER/test.txt
现在已经不是如此了,现在你必须依赖~/.ssh/config文件,使用以下命令打开该文件:nano ~/.ssh/config
在该文件中,你必须为SERVERA和SERVERB创建新的配置,这些配置块如下所示:Host SERVERA
HostName 192.168.1.16
ControlMaster auto
ControlPath ~/.ssh/ssh-%r@%h:%p
ControlPersist 30m
Host SERVERB
HostName 192.168.1.22
ControlMaster auto
ControlPath ~/.ssh/ssh-%r@%h:%p
ControlPersist 30m
确保更改IP地址以适合你的设置。
保存并管理文件,现在可以复制文件了。
如何复制测试文件
首先,需要使用命令将测试文件从Client C复制到Server a:scp test.txt USER@192.168.1.15:/home/USER/test.txt
USER是远程用户名。
test.txt文件现在位于服务器A,现在可以从客户机C将test.txt文件从服务器A复制到服务器B,为此,命令为:scp -3 USER@SERVERA:/home/USER/test.txt USER@SERVERB:/home/USER/test.txt
USER是远程用户名。