1.3.端口与协议
1.3.1.什么是端口
在网络通信中有一种软件端口,它并不是物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口。
如果把IP地址比作一间房子,端口就是出入这间房子的门。真正的房子只有几个门,但是一个IP地址的端口可以有65536个之多!端口是通过端口号来标记的,端口号只有整数,范围是从0到65535。
TCP//P协议中的端口功能介绍。一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,一台主机上面有这么多服务,那我们跟这台主机进行联机时,该主机怎么知道我们要的数据是www还是FTP呢?这就是端口不同的结果,因为每种客户端软件所需要的数据都不相同,例如IE浏览器所需要的数据是www,所以该软件预设就会向服务器主机的80端口索求数据;而如果用户使用的是FlashGet(网际快车),来进行与服务器主机的FTP索求数据时,FlashGet这个客户端软件当然预设就是向服务器主机的FTP相关端口(默认的是21端口)进行连接,这样各种软件就可以正确无误的取得各自所需要的数据了。
端口并不是一一对应的。PC作为客户机访问一台www服务器时,wWW服务器使用“80”端口与你的电脑通信,但你的电脑则可能使用“3457”这样的端口。
1.3.2.端口分类
与IP地址一样,端口号也不是随意使用的,而是按照一定的规定进行分配。端口的分类标准有好多种,这里不只介绍一下公认端口和动态端口。
1.公认端口(WeII Known Ports)
公认端口是众所周知的端口号,范围从0到1023,其中80端口分配给WWW服务,21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候,比如www.163.com是不必指定端口号的,因为在默认情况下www服务的端口号是“80”。
网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在地址栏上指定端口号,方法是在地址后面加上冒号“:”(半角),再加上端口号。比如使用“8080”作为www服务的端口,则需要在地址栏里输入“WWW.网站名字.Com:8080”。
但是有些系统协议使用固定的端口号,它是不能被改变的,比如139端口专门用于NetBIOS与FTP/IP之间的通信,不能手动改变。
2.动态端口(Dynamic Ports)
动态端口的范围是从1024到65535。之所以称为动态端口,是因为它一般不固定分配某种服务,而是动态分配。动态分配是指当一个系统进程或应用程序进程需要网络通信时,它向主机申请一个端口,主机从可用的端口号中分配一个供它使用。当这个进程关闭时,同时也就释放了所占用的端口号。
如果根据所提供的服务方式的不同,端口可分为“TCP协议端口”和“UDP协议端口”两种。因计算机之间相互通信一般采用这两种通信协议。其中TCP协议“连接方式”是一种直接与接收方进行通信后,可以确认信息是否到达,这种方式大多采用TCP协议;而UDP协议则不直接与接收方进行连接,只管把信息放在网上发出去,而不管信息是否到达。对应使用以上这两种通信协议的服务所提供的端口,也就分为“TCP协议端口”和“UDP协议端口”。
由于TCP和UDP两个协议是独立的,因此各自的端口号也相互独立,比如TCP有235端口,UDP也可以有235端口,两者并不冲突。
1.3.3 常见的端口
一般来说,每个网络软件都可以打开任何一个端口来使用(只要该端口号码没有被其他软件使用),很多网络软件还会使用多个端口来进行通信,为了在网络连接时避免冲突,人们也就规定了一些固定端口给常用的网络软件,例如网页浏览器与远程的网站服务器连接会使用80端口来连接,但是如果某个网络软件打开了80端口末使用,浏览器就无法浏览网页了,这是因为端口冲突了。下面介绍TCP和UDP协议中的常见端口。
1.TCP协议常见端口
(1)FTP
定义了文件传输协议,使用21端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。
(2)Telnet
它是一种用于远程登录的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于命令行模式下的通信服务。如以前的BBS是纯字符界面的,支持BBS的服务器使用23端口对外提供服务。
(3)SMTP
定义了简单邮件传送协议,现在很多邮件服务器都用的是这个协议,用于发送邮件。如常见的免费邮件服务中用的就是这个邮件服务端口,所以在电子邮件设置中常看到有这么SMTP端口设置这个栏,服务器开放的是25号端口。
(4)POP3
它是和SMTP对应,POP3用于接收邮件。通常情况下,POP3协议用的是110端口。也是说,只要使用POP3协议的程序(例如FoxMail或Outlook),就可以不以Web方式登录方式进入邮箱界面,直接用邮件程序就可以收到邮件(如是163邮箱就没有必要先进入网易网站,再进入自己的邮箱来收信)。在网络通信中,除了TCP协议与UDP协议之外,还有ICMP协议。
2.UDP协议常见端口
(1)HTTP
这是用得最多的协议,它就是常说的”超文本传输协议”。上网浏览网页时,就得在提供网页资源的计算机上打开80号端口以提供服务。常说“www服务”、“Web服务器”用的就是这个端口。
(2)DNS
DNS用于域名解析服务。因特网上的每一台计算机都有一个网络地址与之对应,这个地址是常说的IP地址,然而这却不便l己忆,于是出现了域名,访问计算机的时候只需要知道域名,域名和IP地址之间的变换由DNS服务器来完成。DNS用的是53号端口。
(3)SNMP
简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服等就体现出其优势。
1.3.4.限制端口
默认的情况下,有很多不安全的或没有什么用的端口是开启的,比如Telnet服务的23端口、FTP服务的21端口、SMTP服务的25端口、RPC服务的135端口等等。为了保证系统的安全性,我们可以通过下面的方法来限制端口的开放。
一个关闭端口的原则:并不是哪个端口出漏洞就关闭哪个端口,这样是不能保证系统安全的,正确的方法应该是先了解清楚自己需要开放哪些端口,了解完毕后,把自己不需要的端口统统关闭掉,这样才能保证系统的安全性。比如说你的电脑是一台服务器,服务器需要有Mail Server和WEB服务,还要有FTP服务,这些只需要开放21、25、80、110就足够了。其它的就应该全部关闭。那么如何关闭端口呢?我们以Windows XP为例进行说明。
1.利用TCP/IP属性限制端口
要进入TCP/IP属性,依次打开“开始”/“控制面板”/“网络连接”/“本地连接”/“属性”,打开“Internet协议(TCP/IP)属性”对话框。然后单击“高级”选项卡打开“高级TCP/IP设置”。再在“高级TCP/IP设置”对话框中依次单击“选项”/“TCP/IP筛选”/“属性”打开“TCP/IP筛选”对话框。
网友评论