DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1136|回复: 0
打印 上一主题 下一主题

[待整理] 排除代理防火墙连接故障的技巧

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-13 15:14:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
随着客户机和服务器之间安装更多的代理防火墙,排除连接故障比以前更复杂了。然而,稍微了解一些传输控制协议(TCP)“握手”的过程有助于诊断包括代理防火墙在内的连接问题。

  首先,对于自从我们最后一次推出网络课程之后长出白发的我们当中的一些人来说,让我们复习一下TCP握手是如何工作的。TCP是一个面向连接的协议。在一对设备之间发生任何通讯之前,这些设备之间的双向通道必须要打开。这是通过使用包含标记的特殊数据包实现的。一个这种标记是SYN(同步)标记,用来指示一个连接请求,同时ACK标记确认一个连接已经打开了。

  完整的三次握手如下图所示:

  首先,客户机向服务器发送一个SYN数据包。服务器收到这个数据包之后将编辑一个回答数据包。这个服务器打开ACK标记确认客户机通讯的请求。然后,服务器打开SYN标记请求相对方向的一个通讯频道:从服务器到客户机。当客户机收到这个SYN/ACK数据包之后,它必须回复一个ACK数据包确认服务器-客户机连接请求。在这个时候,客户机和服务器也许就可以双向通讯了。

  然而,代理防火墙把自己注入到这些过程之间从而影响正常的TCP握手。见下图:

  客户机连接到代理防火墙,以为他们已经与服务器建立了连接。这个代理防火墙然后代表这个客户机打开一个单独的与服务器的连接。这种独特的方法在客户机与服务器之间提供了一个增加的隔离层,并且允许防火墙调节这个会话,也许检查应用层通讯中潜在的恶意内容。

  代理防火墙的存在使排除客户机与服务器之间的连接故障更复杂了。为了诊断一个故障,需要对防火墙的两边都进行监视。我们需要一个查看防火墙外部通讯的外部监视设备,还需要一个查看防火墙的每个内部接口的内部监视设备。让我们看几个普通的连接问题以及它们在tcpdump输出中是如何出现的。我们的所有例子都将使用上面解释的连接情况。需要指出的是web服务器有两个IP地址:192.168.3.150是服务器在有防火墙的局域网内部的服务器专用地址。10.0.0.120是暴露给世界的公共地址。

  第一种情况:服务器问题

  服务器可能由于拒绝服务攻击、设置错误、成功的黑客攻击或者其它原因出现连接问题。在这些情况下,因为防火墙工作正常,防火墙外部将出现一个完整的三次握手。输出的数据看起来就像下面那样:

  19:24:36.959777 IP 10.1.1.16.1450 > 10.0.0.120:80: S 735906036:735906036(0) win 16384
  19:24:36.987938 IP 10.0.0.120:80 > 10.1.1.16.1450: S 3607622985:3607622985(0) ack 735906037 win 8190
  19:24:36.987961 IP 10.1.1.16.1450 > 10.0.0.120:80: . ack 1 win 17640
  注意:为了你的方便,SYN和ACK都用了黑体字。这是一个合适的三次握手。问题将出现在防火墙和Web服务器之间。如果服务器坏了或者没有反应,指示器信号将是从防火墙发到服务器的一系列SYN数据包,如下所示:

  19:22:40.214672 IP 192.168.3.124.1439 > 10.0.0.120.80: S 4182454:4182454(0) win 16384
  19:22:43.154580 IP 192.168.3.124.1439 > 10.0.0.120.80: S 4182454:4182454(0) win 16384
  19:22:43.154580 IP 192.168.3.124.1439 > 10.0.0.120.80: S 4182454:4182454(0) win 16384
  19:22:43.154580 IP 192.168.3.124.1439 > 10.0.0.120.80: S 4182454:4182454(0) win 16384
  19:22:43.154580 IP 192.168.3.124.1439 > 10.0.0.120.80: S 4182454:4182454(0) win 16384


  第二种情况:防火墙问题

  根据具体问题,防火墙问题也许以不同方式显示自己。如果防火墙完全坏了,从防火墙向服务器的公共地址将有一系列没有应答的SYN数据包。这些数据包将出现在外部监视器上,在内部监视器上将不会显示相关的通讯。

  另一方面,如果防火墙的规则设置不正确,外部监视器也许会显示一种合适的三次握手。内部监视器也许不会显示出任何通讯。

  第三种情况:应用程序问题

  如果在内部和外部监视器上都显示出了合适的三次握手,防火墙的问题一般可以排除。在这种情况下,最可能原因是应用程序本身的问题。例如,攻击者也许会攻破这个应用程序和改变其行为,这个服务也许配置错了或者客户机也许做出了一个非法的请求。

  这些情况不能包括一切。它不可能涉及到一切可能的排除故障的情况。这就是说,这些例子为诊断具有代理防火墙的连接问题提供了一个极好的起点。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-16 02:24 , 耗时 0.081904 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表