前言
调整数据库的时候突然想起来SSH协议还能用来做端口映射,查了一些资料,简单的做个笔记。
位置
打开 连接属性 -> SSH -> 隧道
如图,上方是TCP/IP转移,也就是端口映射,下方是X11转移,可以在本地显示服务器上的窗口
- TCP/IP转移:
L:运行XShell的一端,R:通过SSH连接的一端
-
类型:
Local(Outgoing):将服务器的端口映射到本机(出站),L -> R
Remote(Incoming):将本机的端口映射到服务器(入站),R -> L
Dynamic(SOCKS4/5):创建一个SOCKS信道,是个双向代理,L <> R -
源主机和侦听端口:
L端映射的地址,类型为Dynamic时代表SOCKS协议使用的端口 -
仅接受本地连接:
这个没什么好说的,勾选,或者源主机填localhost效果一样。 -
目标主机和目标端口:
R端映射的地址,类型为Dynamic时无需设置
- X11转移:
这个功能需要在服务端安装X桌面,在本地也需要安装Xmanager,装好以后可以在本地显示服务器的窗口。
示例
-
将服务器的MySQL映射到本地:
在服务器上运行有MySQL,并且只允许本地访问
类型选Local,源主机设置为localhost:12345,目标主机设置为localhost:3306
这样在本机就能通过12345端口访问服务器的数据库了
-
将本地MiniWeb映射到服务器
在本机运行有MiniWeb,因为NAT的关系没法从外网直接访问
类型选Remote,源主机设置为localhost:8000,目标主机设置为localhost:8000
这样在服务器就能通过8000端口访问本地的Web服务了,并且从MiniWeb的日志能够看出流量都来自本机
-
创建SOCKS通道
类型选Dynamic,源主机端口就是SOCKS协议端口
在本机使用浏览器插件或者其他支持SOCKS协议的软件就能通过服务器上网了,没什么好说的。
本文链接:https://blog.chrxw.com/archives/2019/11/11/644.html
转载请保留本文链接,谢谢