jig*_*fox 6 ssh tunneling ssh-tunnel
我正在使用防火墙后面的服务器。我已经建立了一个到互联网中间服务器的 ssh 隧道,如下所示:
remoteuser@behind_fw$ ssh -N -f -R 10002:localhost:22 middleuser@middle
Run Code Online (Sandbox Code Playgroud)
但是我无法直接通过此服务器连接,这不起作用:
user@local$ ssh remoteuser@middle -p 10002
Run Code Online (Sandbox Code Playgroud)
我必须分两步连接:
user@local$ ssh middleuser@middle
middleuser@middle$ ssh remoteuser@localhost -p 10002
Run Code Online (Sandbox Code Playgroud)
netstat -l中间的输出:
tcp 0 0 localhost:10002 *:* LISTEN
Run Code Online (Sandbox Code Playgroud)
但它应该是这样的:
tcp 0 0 *:10002 *:* LISTEN
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
and*_*dol 11
这是在远程服务器上打开的隧道,该服务器需要在其 /etc/ssh/sshd_config中将 GatewayPorts设置为yes。
根据服务器拥有的用户类型,您可能希望使用“匹配”选项来限制您的用户使用该功能。
Match User middleuser
GatewayPorts yes
Run Code Online (Sandbox Code Playgroud)
请注意,您可能希望在 sshd_config 的末尾添加此 Match 块,因为 Match 块会一直持续到另一个块开始或文件结束。
话虽如此,不如尝试一下我认为更清洁的解决方案怎么样?
user@local$ ssh -N -f -L 10002:behind_fw:22 middleuser@middle
user@local$ ssh remoteuser@localhost -p 10002
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5563 次 |
| 最近记录: |