马霞
如何管理网络端口让系统更安全
马霞
默认状态下,Windows会在我们的电脑上打开许多服务端口,黑客常常利用这些端口来实施入侵,因此掌握端口方面的知识,会帮助我们提升上网的安全性。
首先,我们看一下什么是端口:
在网络技术中,端口(Port)大致有2种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器以及用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。我们这里将要介绍的就是逻辑意义上的端口。
根据提供服务类型的不同,端口分为2种,一种是TCP端口,一种是UDP端口。计算机之间相互通信的时候,分为两种方式:一种是发送信息以后,可以确认信息是否到达,也就是有应答的方式,这种方式大多采用TCP协议;一种是发送以后就不管了,不去确认信息是否到达,这种方式大多采用UDP协议。对应这两种协议的服务提供的端口,也就分为TCP端口和UDP端口。
下面来看看端口是做什么用的:
比方说现在有2台电脑利用TCP/IP进行通信。联网浏览Internet Explorer的同时还在用MSN传着文件。这2台电脑各自有一个IP地址,所以他们之间可以互相通信。这就好像说A电脑说:"把这个包传到B电脑那儿去。他的IP地址是⋆⋆⋆⋆。"于是包就传过去了。
如果一个电脑上同时只有一个程序,一个服务在进行一项传输,那么很简单直接传就是了。可是上面的例子中,如果两台电脑间同时进行着两项传输——既在浏览网页,又在MSN上传文件。这问题就来了——A电脑说了:"把这个包传到B电脑那儿去。IP地址是……"。然后B电脑高兴地收到了,一看,不好,这个包是浏览器的数据呢?还是MSN的数据呢?分不清了。这个时候就要考虑端口号(port number)的作用了。
我们知道,一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?显然不能只靠IP地址,实际上,我们是通过IP地址+端口的组合方式使不同的网络服务得到区分的。端口只是一个抽象的概念。比方说你收到了一个数据包,上面写着发给80端口,你就得查一下80端口是给谁用的呀?一看是给HTTP服务器用的,那好,把这个包给它。
按端口号可分为三大类
(1)公认端口(WellKnownPorts):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
(2)注册端口(RegisteredPorts):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其他目的。例如:许多系统处理动态端口从1024左右开始。
(3)动态和/或私有端口(Dynamicand/orPrivatePorts):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。
Windows提供了netstat命令,能够显示当前的TCP/IP网络连接情况,注意:只有安装了TCP/IP协议,才能使用netstat命令。
操作方法:单击"开始→程序→附件→命令提示符",进入命令提示符窗口,输入命令netstat-na回车,于是就会显示本机连接情况及打开的端口,如图。本地地址下面的一串数字代表本机IP地址和打开的端口号,外部地址下面的一串数字代表远程计算机的IP地址和打开的端口号,图中LISTENING是监听状态,表明本机正在打开135端口监听,等待远程电脑的连接。
如果你在命令提示符窗口中输入了netstat -nab命令,还将显示每个连接都是由哪些程序创建的。如果你发现本机打开了可疑的端口,就可以用该命令察看它调用了哪些组件,然后再检查各组件的创建时间和修改时间,如果发现异常,就可能是中了木马。
默认情况下Windows有很多端口是开放的,一旦你上网,黑客可以通过这些端口连上你的电脑,因此你应该封闭这些端口。主要有:TCP139、445、593、1025端口和UDP123、137、138、445、1900端口、一些流行病毒的后门端口(如TCP 2513、2745、3127、6129端口),以及远程服务访问端口3389,我们可以通过下面方法关闭本机不用的端口:
操作方法:
(1)单击开始,在搜索框内输入高级安全windows防火墙,然后选中并单击入站规则,如图示:
(2)选中端口,并单击下一步。
(3)在特定本地端口中写入自己要禁用的端口号,分别用逗号隔开,然后下一步。
(4)选择阻止连接,下一步。
(5)名称和描述可以任意写,然后点击完成即可成功阻止该端口。