1, local port forwarding
ssh client端:
ssh server端: serverIP:80
如果希望在ssh client端访问ssh server端的80端口, 则可以运行
ssh -L 8000:serverIP:80 user@serverIP
然后就可以在client端通过访问127.0.0.1:8000达到访问server端80端口的目的
提示:
8000:serverIP:80这里的serverIP不一定要是server自己, 也可以是127.0.0.1, 或者是任何server端能够访问的远程地址.
然后就可以实现在ssh client端访问serverIP:80(即在client端访问127.0.0.1:8000)
下面是一个例子
如上图. 如果执行了
ssh -L 8000:10.10.1.11:80 [email protected]
那么, 访问192.168.56.101:8000则等同于访问了10.10.1.1:80
2, remote port forwarding
ssh client端: clientIP:80
ssh server端:
如果希望在server端访问client端的80端口
ssh -R 8000:localhost:80 user@serverip
然后就可以在ssh server端通过访问127.0.0.1:8000达到访问client端80端口的目的.
提示:
命令里的localhost指的是client侧的IP, 命令里的localhost不一定得是ssh client本身, 也可以是任何一个ssh client可达的地址.
server端默认是会监听127.0.0.1:8000, 如果想让server端监听0.0.0.0:8000, 需要将ssh配置中的GatewayPorts配置项打开
下面是一个例子
Leave a Comment