ssh隧道反向代理(将端口代理到远程主机):
ssh -C -N -g -R *:<port2>:<host1>:<port1> user@<port2>
host1:被代理的主机
port1:被代理的端口
host2:远程主机
port2:远程主机端口
正向代理(将远程主机端口代理到本机):
ssh -L <port1>:<host2>:<port2> <host2>
host2:远程主机
port2:远程主机端口
port1:本机端口
提示:
1.类似本地转发,远程转发的端口默认也只能在远程服务器本机上访问,要想允许外部访问,可改写为-R *:9090:local-secrent.com:8080,并确保在服务器的sshd_config中打开了GatewayPorts选项。
2.sshd_config文件地址:/etc/ssh/sshd_config
ssh -C -N -g -R *:<port2>:<host1>:<port1> user@<port2>
host1:被代理的主机
port1:被代理的端口
host2:远程主机
port2:远程主机端口
正向代理(将远程主机端口代理到本机):
ssh -L <port1>:<host2>:<port2> <host2>
host2:远程主机
port2:远程主机端口
port1:本机端口
提示:
1.类似本地转发,远程转发的端口默认也只能在远程服务器本机上访问,要想允许外部访问,可改写为-R *:9090:local-secrent.com:8080,并确保在服务器的sshd_config中打开了GatewayPorts选项。
2.sshd_config文件地址:/etc/ssh/sshd_config
3.GatewayPorts选项后,需重启ssh服务 命令例如(不同版本方式不同):service sshd restart
4.如果上述还是无法调通,可以通过linux命令 netstat 加上套件字 -n 查看端口连接情况 -t(端口为tcp)