SSH 隧道将数据从一个数据中心传输到另一个数据中心
SSH tunneling to transfer the data from one data center to another from middle machine
如何为以下场景创建 SSH 隧道。
我有3台机器..
A. Data Center A VM.
B. Machine at work (middle man).
C. Data Center C VM.
所以我可以从 B -> A 和 B -> C 进行 SSH,但不能从 A -> C 和 C->A。
有没有办法设置 SSH 隧道,以便我可以使用机器 B 将数据从 A(数据中心 A)传输到 C(数据中心 C)。
我想使用rsync来传输数据,隧道后请告诉我如何使用rsync?
在提到的回复中,他们可以从 A->B->C 进行访问。可以使用它。在我的问题中,我可以从 B->A 和 B->C 进行访问,我想从 A->C
复制数据
如讨论的那样here
试试-3选项,如下:
scp -3 user1@remote1:/home/user1/file1.txt user2@remote2:/home/user2/file1.txt
-3 选项指示 scp 通过发出命令的 PC 路由流量,即使它是传输的第 3 方。这样,授权凭据必须仅驻留在发证 PC 上,即第三方。
我找到了解决方案,这里是详细信息
解决方案分为两部分:
以下命令将在源和
目标机。要调试连接,请将其分成两部分
部分并添加详细状态:
运行中间机器上的这个命令[B.工作中的机器(中间人)]
$ ssh -v -R 50000:(数据中心C虚拟机的IP地址):22(数据中心A虚拟机的IP地址)
示例:ssh -v -R 50000:192.168.1.25:22 192.168.1.36
注意:要实现此功能,您需要在两个远程主机之间正确设置 ssh 密钥 [数据中心 A 虚拟机(源)和数据中心 C 虚拟机(目标) )],使用源机器上的私钥和目标机器上的 public 密钥。
如果第一个解决方案有效,那么您将获得对 Source 的 shell 访问权限
机(数据中心 A 虚拟机)。现在从 Data 尝试 rsync 命令
中心虚拟机。
建议在不同的终端执行此操作,所以
详细的 ssh 信息不会与 rsync 混合在一起
状态信息。
$ rsync -e "ssh -p 50000" -vuar /opt/source_path localhost:/opt/destination_path
从 machine2-B(中间人)使用此命令:
ssh user@machine-A "tar cpvf - filename | ssh user@machine-C "tar xpf - -C /destination"
如何为以下场景创建 SSH 隧道。
我有3台机器..
A. Data Center A VM.
B. Machine at work (middle man).
C. Data Center C VM.
所以我可以从 B -> A 和 B -> C 进行 SSH,但不能从 A -> C 和 C->A。
有没有办法设置 SSH 隧道,以便我可以使用机器 B 将数据从 A(数据中心 A)传输到 C(数据中心 C)。 我想使用rsync来传输数据,隧道后请告诉我如何使用rsync?
在提到的回复中,他们可以从 A->B->C 进行访问。可以使用它。在我的问题中,我可以从 B->A 和 B->C 进行访问,我想从 A->C
复制数据如讨论的那样here
试试-3选项,如下:
scp -3 user1@remote1:/home/user1/file1.txt user2@remote2:/home/user2/file1.txt
-3 选项指示 scp 通过发出命令的 PC 路由流量,即使它是传输的第 3 方。这样,授权凭据必须仅驻留在发证 PC 上,即第三方。
我找到了解决方案,这里是详细信息
解决方案分为两部分:
以下命令将在源和 目标机。要调试连接,请将其分成两部分 部分并添加详细状态:
运行中间机器上的这个命令[B.工作中的机器(中间人)]
$ ssh -v -R 50000:(数据中心C虚拟机的IP地址):22(数据中心A虚拟机的IP地址) 示例:ssh -v -R 50000:192.168.1.25:22 192.168.1.36
注意:要实现此功能,您需要在两个远程主机之间正确设置 ssh 密钥 [数据中心 A 虚拟机(源)和数据中心 C 虚拟机(目标) )],使用源机器上的私钥和目标机器上的 public 密钥。
如果第一个解决方案有效,那么您将获得对 Source 的 shell 访问权限 机(数据中心 A 虚拟机)。现在从 Data 尝试 rsync 命令 中心虚拟机。
建议在不同的终端执行此操作,所以 详细的 ssh 信息不会与 rsync 混合在一起 状态信息。
$ rsync -e "ssh -p 50000" -vuar /opt/source_path localhost:/opt/destination_path
从 machine2-B(中间人)使用此命令:
ssh user@machine-A "tar cpvf - filename | ssh user@machine-C "tar xpf - -C /destination"