linux – 如何使用ssh通过代理转发复制文件多跳?

前端之家收集整理的这篇文章主要介绍了linux – 如何使用ssh通过代理转发复制文件多跳?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一组服务器都正确配置了SSH代理转发.这是典型的堡垒服务器样式配置,您可以从外部连接到的唯一一台机器是服务器A.从服务器A,您可以使用代理转发连接到服务器B,C,D等.它们都运行良好.

有时我想将文件从我的本地机器复制到服务器B.为了做到这一点,我必须首先将文件scp到服务器A.然后ssh到服务器A并将文件scp到服务器B.然后我从中删除文件服务器A.

有没有办法在我本地计算机上执行的一个命令中通过服务器A将文件直接从我的计算机复制到服务器B?

解决方法

如果您的sshd配置为允许TCP转发,那么您可以通过A设置从计算机到B的隧道,然后使用它来复制内容.创建隧道
ssh -f -L 2050:B:22 A -N

> -f后台ssh命令让你的终端重新使用.
> -L 2050:B22将localhost端口2050绑定到主机B端口22
> -N不执行远程命令.

然后从你的电脑复制到B.

scp -P 2050 filetocopy localhost:/destination/path

编辑:
如果你使用

ssh -L 2050:B:22 A -N &

然后,当它背景时,你将被告知ssh命令的PID.

猜你在找的Linux相关文章