步骤1: 创建SSH隧道
使用中转服务器开放的23799端口来创建隧道。
ssh -L 9999:target-server:22 -p 63799 username1@intermediate-server
参数说明:
1、-L 9999:target-server:22:将本地的9999端口映射到目标服务器的22端口。
2、target-server:目标服务器的ip地址
3、9999和22分别为本地端口和目标服务器端口(一般默认为22)
4、-p 63799:这告诉SSH命令连接中转服务器时使用63799端口,而不是默认的22端口。
5、username1@intermediate-server:分别为中转服务器用户名和中转服务器ip地址
步骤2: 通过SSH隧道传输文件
在隧道建立之后,你可以在另一个终端窗口中使用scp命令通过这个隧道传输文件。第一步的终端窗口不要关闭,打开第二个终端窗口。
scp -P 9999 -r /path/to/local/directory username2@localhost:/path/to/remote/directory
参数说明:
1、‘-P 9999’:指定scp命令使用端口9999,这个端口与你在建立隧道时指定的本地端口相对应。
2、‘/path/to/local/directory’:本地机器上要传输的文件夹路径。
3、‘username2@localhost’:目标服务器的用户名和localhost,这里的localhost不要把它改为目标服务器ip地址,就输入localhost即可。
4、‘/path/to/remote/directory’:文件在目标服务器上的存放路径。
如果要将目标服务器的文件传输到本地,则修改方向即可。
scp -P 9999 -r username2@localhost:/path/to/remote/directory /path/to/local/directory