SSH反向隧道

描述:有一台服务器(IP:20.0.2.114),该服务器(IP:20.0.2.114)中有一台虚拟机(IP:192.168.123.1),实现在电脑上执行命令:ssh 20.0.2.114:18822 即可ssh登录到虚拟机(IP:192.168.123.1)。

设置永久生效的SSH反向隧道

登录虚拟机(IP:192.168.123.1)

ssh -fN -R 18822:localhost:22 root@20.0.2.114

设置反向隧道自动恢复

crontab -e
*/10 * * * * ssh -fN -R 18822:localhost:22 root@20.0.2.114 || true

登录服务器(IP:20.0.2.114)添加下述内容开启转发

vim /etc/ssh/sshd_config
GatewayPorts yes
AllowTcpForwarding yes

回滚

登录服务器(IP:20.0.2.114)注释下述内容

vim /etc/ssh/sshd_config
GatewayPorts yes
AllowTcpForwarding yes

登录虚拟机(IP:192.168.123.1)

ps aux | grep 'ssh -fN -R 18822:localhost:22'

停止对应进程ID

kill [PID]

移除或者注释crontab相关行

crontab -e