![在远程服务器上公开反向 SSH 隧道](https://linux22.com/image/1420808/%E5%9C%A8%E8%BF%9C%E7%A8%8B%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%85%AC%E5%BC%80%E5%8F%8D%E5%90%91%20SSH%20%E9%9A%A7%E9%81%93.png)
我从家用电脑到工作服务器建立了一个反向 SSH 隧道:
ssh -f -N -R 19999:localhost:22 remoteuser@server
要连接到我的家用电脑,我必须先登录到服务器,然后从那里登录到我的家用电脑:
otheruser@othermachine$ ssh remoteuser@server
remoteuser@server$ ssh -p 19999 homeuser@localhost
但我希望能够跳过一步并直接通过端口 19999 连接,例如:
otheruser@othermachine$ ssh -p 19999 homeuser@server
我不太熟悉iptables
,我一直在阅读,但打开一个端口似乎很令人困惑。我很确定我需要添加一条规则iptables
,但我还需要做其他什么吗?
服务器是 RHEL 6,我家的电脑是 Ubuntu 14.04
答案1
除 之外iptables
,您还需要使用-g
选项ssh
(GatewayPorts)和服务器的配置/etc/ssh/sshd_config
必须有该GatewayPorts yes
设置。