HttpTunnel防火墙穿透指南

来源:互联网 发布:电脑照相机软件 编辑:程序博客网 时间:2024/05/22 00:43
局域网穿透防火墙,可以使用HTTPTUNNEL,这个软件需要服务端做配合,要运行httptunnel的服务端,这种方法对局域网端口限制很有效。

隐通道技术就是借助一些软件,可以把防火墙不允许的协议封装在已被授权的可行协议内,从而通过防火墙,端口转换技术也是把不允许的端口转换成允许通过的端口,从而突破防火墙的限制。这类技术现在有些软件可以做到,HACKER经常用到这类技术。

HTTPTunnel,Tunnel这个英文单词的意思是隧道,通常HTTPTunnel被称之为HTTP暗道,它的原理就是将数据伪装成 HTTP的数据形式来穿过防火墙,实际上是在HTTP请求中创建了一个双向的虚拟数据连接来穿透防火墙。说得简单点,就是说在防火墙两边都设立一个转换程序,将原来需要发送或接受的数据包封装成HTTP请求的格式骗过防火墙,所以它不需要别的代理服务器而直接穿透防火墙。HTTPTunnel刚开始时只有 Unix版本,现在已经有人把它移植到Window平台上了,它包括两个程序,htc和hts,其中htc是客户端,而hts是服务器端,我们现在来看看我是如何用它们的。比如开了FTP的机器的远端机器IP是 192.168.0.3,本地机器的IP是192.168.0.4,现在我本地因为防火墙的原因无法连接到 FTP上,现在用HTTPTunnel的过程如下:

第一步:在本地机器上(192.168.0.4)启动HTTPTunnel客户端。启动MS-DOS的命令行方式,然后执行htc -F 6666 192.168.0.3:80命令,其中htc是客户端程序,-f参数表示将数据在192.168.0.3:80和本机的6666端口之间互相转发,这个端口可以随便选,只要本机没有占用就可以。

用Netstat看一下本机现在开放的端口,发现6666端口已在侦听。

第二步:在远端机器上启动HTTPTunnel的服务器端,并执行命令

“hts -F localhost:21 80”,这个命令的意思是说把本机21端口发出去的数据全部通过80端口中转,并且开放80端口作为侦听端口,将80端口的某些数据转到21端口,再用Neststat看一下远端机器,就会发现80端口现在也在侦听状态。

第三步:在本地机器上用FTP连接本机的6666端口,现在已经连上对方的机器了。

可是,人家看到的怎么是127.0.0.1而不是192.168.0.4的地址?因为本地机器现在是连接本机的6666端口,防火墙肯定不会有反应,因为没往外发包,当然局域网的防火墙不知道了。现在连接上本机的6666端口以后,FTP的数据包不管是控制信息还是数据信息,都被htc伪装成HTTP数据包然后发过去,在防火墙看来,这都是正常数据,相当于欺骗了防火墙。

需要说明的是,这一招的使用需要其他机器的配合,就是说要在他的机器上启动一个hts,把他所提供的服务,如FTP等重定向到防火墙所允许的80 端口上,这样才可以成功绕过防火墙!HTTPTunnel还有一个优点,就是他的机器以前80端口开着,现在这么用也不会出现什么问题,正常的Web访问仍然走老路,重定向的隧道服务也畅通无阻!
原创粉丝点击