爪哇社区
  • 首页
  • 文章
  • 问答
  • 导航



  1. 首页
  2. 文章列表
  3. SSH 端口转发的三种类型

SSH 端口转发的三种类型

发布:HelloJq 时间:2024-10-18

本地转发

本地转发是将远程端口转发到本地,可以用于在本地访问远程服务,本地转发通过ssh命令的-L参数指定本地端口、远程IP和端口。

比如ssh -L 8080:127.0.0.1:8888 root@192.168.1.1,SSH 连接后,本地主机访问本地 8080 端口就相当于访问远程主机的 8888 端口,注意这里的 127.0.0.1 并不是本地主机的 127.0.0.1,而是远程主机的 127.0.0.1,当然也可以类似这样ssh -L 8080:192.168.1.10:8888 root@192.168.1.1访问远程局域网的其他设备。

远程转发

远程转发相当于本地转发的反转,可以用于在远程访问本地服务,远程转发通过ssh命令的-R参数指定远程端口、本地IP和端口。

比如ssh -R 8080:127.0.0.1:8888 root@123.123.123.123,SSH 连接后,远程主机访问本地 8080 端口就相当于访问本地主机的 8888 端口,当然也可以类似这样ssh -L 8080:192.168.1.10:8888 root@123.123.123.123让远程主机访问本地局域网的其他设备,就像本地转发那样。

动态转发

动态转发有些特殊,与其叫它转发,不如叫代理更为合适。因为它相当于在两个主机之间建立了一条 SOCKS 代理,本地主机可以使用这条代理来访问远程主机的任何服务,亦或者是使用远程主机的互联网。动态转发通过ssh命令的-D参数指定本地端口。


比如ssh -D 12345 root@123.123.123.123,SSH 连接后,本地主机的 12345 端口就会变成一条 SOCKS 代理,然后像这样curl -x socks://127.0.0.1:12345 http://127.0.0.1就可以访问远程主机的 Web 服务了。curl -x socks://127.0.0.1:12345 http://zhuawa.cn,也可以像这样使用远程主机的互联网访问任何服务。


爪哇社区 © 2024