ssh 端口转发实现外网 80 端口映射到内网 80 端口
2018-01-30 17:09
771 查看
开发中经常需要外网服务映射到本机内网服务的需要,便于调试。
以前都是同事帮着配,这两天自己也看了一下 ssh 端口转发。 同事分分钟钟搞定的事情,自己折腾了 2 天, 真是弱爆了。
最初老想不明白一件事,为什们外网服务器能够找到我的内网机器,现在才明白原来走的是 ssh 隧道。
需求我的内网机器 192.168.9.100, 我的阿里云外网 123.56.86.52, 现在需要所有对 123.56.86.52 80 端口的访问都映射到 192.168.9.100 的 80 端口。
显然 123.56.86.52 访问不到 192.168.9.100, 但 192.168.9.100 能访问到 123.56.86.52 , 所以很简单 ssh 建立一个远程端口转发就行了。
1 在 192.168.9.100 上执行
-R 表示远程转发, 这句话的意思是 通过 ssh 连接到 123.56.86.52,让 123.56.86.52 监听自己的 3000 端口, 所有通过 3000 端口的数据都通过 ssh 转发到 127.0.0.1 的 80 端口。
这里 127.0.0.1 就是 192.168.9.100 这个机器。 在 ssh 连接的时候通道就建立了, 以后所有的通信都走的是这个通道。
2 既然 123.56.86.52 已经监听在 3000 端口了, 接下来就非常简单了, 服务器上用 nginx 做一个反向代理, 把 80 端口代理到 3000 端口就行了
123.56.86.52 上 nginx 配置如下
现在外网就成功映射到了我的内网机器
看着同事们 ssh 各种打洞, 各种玩法, 只能膜拜。 ssh 功能强大,通过 ssh 可以在家里随便访问公司内网电脑, 在公司内网电脑也可以远程操作家里的内网电脑。
想学好 ssh 的同学推荐一本书 SSH -The Definitive Guide, 2nd Edition.pdf ,抽空我也要好好学一下。
但最重要的还是要理论结合实际,多看多练。
以前都是同事帮着配,这两天自己也看了一下 ssh 端口转发。 同事分分钟钟搞定的事情,自己折腾了 2 天, 真是弱爆了。
最初老想不明白一件事,为什们外网服务器能够找到我的内网机器,现在才明白原来走的是 ssh 隧道。
需求我的内网机器 192.168.9.100, 我的阿里云外网 123.56.86.52, 现在需要所有对 123.56.86.52 80 端口的访问都映射到 192.168.9.100 的 80 端口。
显然 123.56.86.52 访问不到 192.168.9.100, 但 192.168.9.100 能访问到 123.56.86.52 , 所以很简单 ssh 建立一个远程端口转发就行了。
1 在 192.168.9.100 上执行
ssh -N -v -R 3000:127.0.0.1:80 root@123.56.86.52
-R 表示远程转发, 这句话的意思是 通过 ssh 连接到 123.56.86.52,让 123.56.86.52 监听自己的 3000 端口, 所有通过 3000 端口的数据都通过 ssh 转发到 127.0.0.1 的 80 端口。
这里 127.0.0.1 就是 192.168.9.100 这个机器。 在 ssh 连接的时候通道就建立了, 以后所有的通信都走的是这个通道。
2 既然 123.56.86.52 已经监听在 3000 端口了, 接下来就非常简单了, 服务器上用 nginx 做一个反向代理, 把 80 端口代理到 3000 端口就行了
123.56.86.52 上 nginx 配置如下
location / { root /usr/share/nginx/html; index index.html index.htm; proxy_pass http://127.0.0.1:3000; proxy_set_header Host $host:80; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; }
现在外网就成功映射到了我的内网机器
看着同事们 ssh 各种打洞, 各种玩法, 只能膜拜。 ssh 功能强大,通过 ssh 可以在家里随便访问公司内网电脑, 在公司内网电脑也可以远程操作家里的内网电脑。
想学好 ssh 的同学推荐一本书 SSH -The Definitive Guide, 2nd Edition.pdf ,抽空我也要好好学一下。
但最重要的还是要理论结合实际,多看多练。
相关文章推荐
- ssh 端口转发实现外网 80 端口映射到内网 80 端口
- 利用灵雀云免费主机做反向ssh端口转发,实现内网服务器的外网访问_20160107_七侠镇莫小贝
- 端口映射,在内网映射外网,利用P2P实现外面跨网穿透nat访问内网80网站和应用
- 使用反向代理(Nginx)和隧道转发(SSH)实现内网端口映射
- 利用灵雀云免费主机做反向ssh端口转发,实现内网服务器的外网访问_20160107_七侠镇莫小贝
- Windows端口映射实现外网访问内网
- 内网端口映射之80端口映射和全端口映射,在任何网络环境下实现发布网站和访问内网
- 各品牌路由器更改设置端口映射实现外网访问内网点(如:OA)的方法
- 内网端口转发与内网映射外网的区别和应用,发布网站访问内网
- 无需端口映射实现从外网访问内网服务器网站
- 内网服务应用—无需端口映射实现从外网访问控制内网电脑
- 内网服务应用―无需端口映射实现从外网访问控制内网电脑
- 通过 SSH 端口转发实现异地内网服务器互通
- git远程外网地址变内网怎么破(ssh本地端口转发)
- Windows端口映射实现外网访问内网
- 80端口被屏蔽的解决方法,及外网访问内网P2P穿透软件实现
- 无需端口映射实现从外网访问内网电脑FTP服务
- 内网服务应用—无需端口映射实现从外网访问控制内网电脑
- Seafile内外网同时访问的实现(端口映射:将外网的一个端口映射到内网80端口)
- ssh反向隧道实验——没有端口映射的前提下,让外网访问内网服务器