ISA Server 的故障排除工具(2)

(编辑:jimmy 日期: 2024/12/23 浏览:2)

ISA Server 的故障排除工具
   10.1.1.4 Netstat 
     Netstat是一个命令行工具。它可以用来排除安全和连接问题。在命令行中输入netstat,就可以检查ISA Server计算机的端口配置以及查看进出计算机的连接。 


   注意 TCP和UDP中使用端口来命名逻辑连接终端。端口号从0到65535,分成以下3种:熟知端口、注册端口、动态/或专用端口。熟知端口从0到1023,注册端口从1024到49151,动态/或专用端口从49151到65535。相关更多详细信息,请参考Web站点 

   http://www.idi.edu/in-notes/ assignments/port-numbers 

   上的端口数。 


   利用Netstat命令-a选项,可以接受到所有活动连接和侦听端口的输出信息。使用-n选项时,地址和端口号不转换成字符名称。这样就可将ISA Server计算机上的外部和内部IP的连接区别开来,并可确定在某个特殊接口上在任何给定时间哪个端口是开放的。可以通过比较-an和-a选项可以知道在哪个特殊端口上哪个服务是活动的。用-p TCP或-p UDP选项指定一个特殊的协议可以限定netstat -an的输出。例如,Netstat –an –p TCP命令将打印所有活动TCP连接和侦听端口的输出信息。Netstat –an –p UDP命令将只打印UDP端口状态的输出信息。 

     此外,了解端口配置可以检查连接问题、端口冲突和安全漏洞。例如,如果连接不到远程服务器,netstat输出信息可能确定这不是本地网络的问题,而是远程计算机拒绝连接请求。同时,每一次连接时,还可以确认本地机是否收到TCP重置或ICMP Port Unreachable数据包的信息。 

     最后,Netstat可以用来诊断对系统的攻击。例如, SYN攻击通过创建大量的半公开TCP连接从而使服务器瘫痪。在这种情况下,外部地址通常是一个伪地址,并且有以增量方式增加的端口号。因此,根据SYN攻击的这一显著特性,可以从下面的netstat输出信息里把它识别出来。

   c:\>net stat -a 

   c:\>netstat -n -p TCP 

   Active Connections 

   Proto    LocaAddress    Foreign Address     State 

   TCP     127.0.0.1:1030   127.0.0.1:1032     ESTABLISHED 

   TCP     127.0.0.1:1032   127.0.0.1:1030     ESTABLISHED 

   TCP     10.1.1.5:21     192.168.0.1:1025    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1026    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1027    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1028    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1029    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1030    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1031    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1032    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1033    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1034    SYN-RECEIVD 

   TCP     10.1.1.5:21     192.168.0.1:1035    SYN-RECEIVD 



   10.1.1.5 Telnet 
     在Telnet命令后面指定端口号,可以测试服务器是否通过此端口接收命令。例如,在运行Netstat -an -p TCP 命令后,发现端口3149是用来侦听传入请求的。然后,在命令行中输入telnet externa_ip_address 3149,可以确定ISA Server是否允许用户telnet到该端口。这里externa_ip_Address指分配给ISA Server计算机的公共IP地址。如果返回的是空白屏幕或者不是连接失败的响应输出,那么理论上外部用户直接输入服务命令就可以和位于该端口的服务通信。注意,通常此状态并不能说明存在安全漏洞,但如果给定服务存在安全弱点的话,黑客通常会用Telnet来开发这些弱点。 

     Telnet还可以用来断定计算机上的服务是否活动的。例如, 如果能Telnet ISA Server计算机的端口25,说明SMTP服务正在运行,且对外部用户是可访问的。如果要阻止外部用户访问SMTP服务,您可以选择来改正该情形。您可以通过关掉此项服务,可以验证启动了ISA Server上的数据包过滤作用,可以且/或确保ISA Server上没有启动允许入站通信通过端口25的IP数据数据包筛选器。另一方面,如果要发布服务器并测试外部访问,您可能想Telnet连接到服务的端口,来看它是否接受连接。例如,如果在ISA Server计算机的端口9999发布Web服务器,可以输入telnet externa_ip_Address 9999来确定能连接到该端口。