本文共 1238 字,大约阅读时间需要 4 分钟。
一、功能描述:
通过ssh反向代理服务器使得没有公网ip的Linux服务器可以被外网访问。1、实验主机ip:(1)终端1(192.168.1.101):在局域网内,可以访问外网,无公网ip(2)终端2(192.168.1.102):在局域网内,可以访问外网,无公网ip(3)反向代理服务器(58.23.223.90):具有公网ip,可以从互联网访问2、实验步骤:(1)通过ssh登陆终端1并且执行如下命令:ssh -fCNR 12000:localhost:22 -p 22 -i ./test.key test@58.23.223.90
netstat -anlp |grep 12000
tcp 0 0 127.0.0.1:12000 0.0.0.0: LISTEN 6907/sshd tcp 0 0 ::1:12000 ::: LISTEN 6907/sshd(2)通过ssh登陆终端2并且执行如下命令: ssh -fCNR 12001:localhost:22 -p 22 -i ./test.key test@58.23.223.90
netstat -anlp |grep 12001
tcp 0 0 127.0.0.1:12001 0.0.0.0: LISTEN 6907/sshd tcp 0 0 ::1:12001 ::: LISTEN 6907/sshd (3)通过ssh登陆反向代理服务器:
在反向代理服务器上这时可输入如下命令访问终端1和终端2:ssh -p 12000 test@localhost -i 终端1.key
--说明:test是终端1的用户,终端1.key是终端1上test用户的私钥ssh -p 12001 test@localhost -i 终端2.key
--说明:test是终端1的用户,终端1.key是终端2上test用户的私钥 结果:这样可以在反向代理服务器上直接访问终端1和终端2
(4)在反向代理服务器上建立本地端口转发,以供网内其他主机可以访问终端1和终端2,执行如下命令:ssh -fCNL :13000:localhost:12000 test@localhost -p 22 -i ./服务器.key
说明:test用户是反向代理服务器的用户,服务器.key是test用户的私钥
结果:可以通过访问反向代理服务器的13000端口访问到终端1,终端2同理。
转载于:https://blog.51cto.com/bristol/2064298