SSH SOCKS5隧道转发到反向ssh主机

SSH SOCKS5隧道转发到反向ssh主机

我有以下机器

  • 机器A在世界某个地方的防火墙后面
  • 机器B互联网上的服务器(中间人)
  • 我的笔记本电脑在世界某个地方的防火墙后面

机器A维护一个反向 SSH 隧道机器B

machineA:> autossh -M 2000 -N MachineBIP -R 22000:localhost:22 -C

我的笔记本电脑可以创建 SOCKS5 隧道机器B

my_laptop:> ssh -C2qTnN -D 8123 MachineBIP

现在显然我的浏览器是通过 MachineB 出去的。我该如何扩展隧道使其从 MachineA 出去,以便我的笔记本电脑上的浏览器可以访问 MachineA 的网络?

答案1

其中一种解决方案如下。

在您的笔记本电脑上,使用 ssh 配置文件~/.ssh/config

  1. 确保 MachineA 和 MachineB 在其授权密钥列表中都有您的笔记本电脑的公钥。
  2. 在 中为两台机器创建条目config。写入条目 MachineA,就像在 ssh -R 建立后从 MachineB 调用它一样。
Host machineB
    user root
    HostName _machineB_ip
    StrictHostKeyChecking no
    IdentityFile ~/.ssh/id_rsa

Host machineA
    user root
    StrictHostKeyChecking no
    HostName 127.0.0.1
    IdentityFile ~/.ssh/id_rsa
    Port 22000
  1. 然后使用-J参数来识别jumphost
ssh -J machineB -C2qTnN -D 8123 machineA

相关内容