黑客教你巧用 SSH 打通外网限制

文案转载于:知乎李耀

链接:https://zhuanlan.zhihu.com/p/444319023

漫图来源于:捷哥

文案格式排版:释然

黑客教你巧用 SSH 打通外网限制


笔者在工作中遇到此场景,如下两条网络限制下,总部如何访问分公司内部web服务器?
  • dmz服务器可以访问总部外网服务器22端口,不可以访问web服务器;
  • web服务器不可访问公网,但是到dmz网络无限制。

黑客教你巧用 SSH 打通外网限制


初看需求,我们第一个想到的肯定是内网端口映射到公网,或者vpn,但是不修改网络策略情况下很难实现。有没有别的方法呢,我们继续从纯网络角度分析现有条件。

网络通信是双向的,有请求,有回应,就是我们俗称的“通”。dmz可以访问外部22端口,代表请求,回包两个通信通道都是通畅的,我们是否可以借助回包通道,从外部发起到内部的反向访问呢?答案当然是有的,我们来试一试,需要ssh工具。

我们在dmz执行如下命令。

[root@dmz]#  ssh -f -N -g -R  6606:10.1.1.1:80 root@115.100.100.100


-f:代表后台运行程序
-N:表示使用远程端口转发创建ssh隧道
-g:监听本机所有IP地址
-R,表示使用远程端口转发创建ssh隧道

命令结合起来什么意思呢,我们使用root用户远程连接到115.100.100.100,并且远程主机监听6606端口,当访问此端口时,会跳转到dmz的80端口。此过程会使用到ssh隧道。dmz运行之后,总部服务器的已经有了端口监听。

[root@center]netstat -tunlp | grep 6606
    tcp        0      0 127.0.0.1:6606          0.0.0.0:*               LISTEN      8616/sshdroot
    我们在总部服务器尝试端口提示拒绝,代表网络已经打通了,但是dmz服务器并没有监听80端口,所以报端口拒绝。
[root@center]telnet 127.0.0.1 6606
    Trying 127.0.0.1...
    telnetconnect to address 127.0.0.1Connection refused

如法炮制,再把web服务器到dmz的网络反向打通,dmz服务器访问本地80端口时将跳转到web服务器的80端口。

[root@web]ssh -f -N -g -R  80:10.1.1.1:80 root@10.1.1.2

再次到总部服务器测试访问就能通信了。

[root@center]telnet 127.0.0.1 6606
    Trying 127.0.0.1...
    Connected to 127.0.0.1.
    Escape character is '^]'.

我们最后从网络角度来回顾数据包的的转发过程。

从总部服务器看到如下信息。

#dmz服务器以115.100.100.101:29493作源,访问本地22端口,建立了tcp连接。
[root@center]ss | grep 115.
    tcp    ESTAB      0      0      172.16.1.1:22                115.100.100.101:29493
[root@center]netstat -tpna | grep 115.
    tcp        0      0 172.16.1.127:22      101.230.91.53:29493     ESTABLISHED 8555/sshdroot
#本地端口也对应到了进程号8616[root@center]#netstat -tunlp | grep 6606
    tcp        0      0 127.0.0.1:6606          0.0.0.0:*               LISTEN      8616/sshdroot[root@center]ps -ef | grep 8616
    root      8616  8555  0 Dec03 ?        00:01:04 sshdroot.


当总部服务器访问127.0.0.1:6606时,网络连接信息如下。


双向通道已经建立
[root@center]ss | grep 6606
    tcp    ESTAB      0      0      127.0.0.1:6606                 127.0.0.1:51158
    tcp    ESTAB      0      0      127.0.0.1:51158                127.0.0.1:6606


我们最后用图片来展示最终网络转发过程。

黑客教你巧用 SSH 打通外网限制


dmz发起ssh连接到总部服务器,并且远程端口转发。远程服务器访问转发端口时,数据将封装到回包通道,由于ssh本身加密,外部网络无法知晓网络交互逻辑,从而实现反向访问。


版权申明:内容来源网络,版权归原创者所有。除非无法确认,都会标明作者及出处,如有侵权,烦请告知,我们会立即删除并致歉!


--- EOF ---


—— 推 荐 阅 读 ——
40张最全计算机网络基础思维导图
36 张图带你理解计算机网络
推荐大家学习100个黑客小知识!
👇
黑客教你巧用 SSH 打通外网限制
最近整理好几份小白入门黑客资料《如何入门黑客教程》,覆盖了网络渗透、网络攻击、防御、各种黑客常用工具入门等等。
获取方式:关注公众号并回复 黑客 领取,更多内容陆续奉上。
明天见(。・ω・。)

本篇文章来源于微信公众号:网络安全与技术

原创文章,作者:software,如若转载,请注明出处:https://www.sldh123.com/2316.html

(0)
上一篇 8月 6, 2022 4:15 上午
下一篇 8月 7, 2022 1:00 上午

相关推荐

发表回复

您的电子邮箱地址不会被公开。