ssh -R 反向隧道

使用ssh -R 8022:localhost:22 -N username@server.com 就能在远程服务器打开一个端口8022,发送给这个端口数据将转发给本机22端口。
默认情况下远程服务器端口绑定在lo网卡上,所以只有远程服务自己可以使用8022端口。
如果需要其他机器也能访问服务器8022端口,需要这样写:ssh -R *:8022:localhost:22 -N username@server.com, 要开启这个选项需要服务器sshd config :GatewayPorts option is enabled(我自己没有成功)
我自己的使用情况:

  • 自己家里的电脑A和公司测试服务器B 都处于内网,正常时访问不到的。
  • 国外服务器C(server.com)
  • 电脑A 执行 ssh -R 8022:localhost:22 -N username@server.com
  • 电脑B 执行 ssh -R 8023:localhost:22 -N username@server.com

这样我在任何地方都能通过服务器C去访问电脑A或者电脑B

6 Responses

  1. 支持了

  2. 博客不错,有机会也建个您这样的!

  3. 偶然来访,踩踩!

  4. 来看看,谢谢楼主

  5. 这样也行了! 学习了!

  6. 百度搜索过来的..凑凑热闹。。。

Leave a Reply