admin 管理员组文章数量: 1087826
2024年3月13日发(作者:python是高级语言还是汇编语言)
计算机常用端口设置详解
一、端口基础
1.面向连接和无连接协议
面向连接服务要经过三个阶段。即数据传数前,先建立连接,连接建立后再传
输数据,数据传送完后,释放连接。面向连接服务,可确保数据传送的次序和传输
的可靠性。
无连接服务只有传输数据阶段。消除了除数据通信外的其他开销。只要发送实
体是活跃的,无须接收实体也是活跃的。它的优点是灵活方便、迅速,特别适合于
传送少量零星的报文,但无连接服务不能防止报文的丢失、重复或失序。
区分“面向连接服务”和“无连接服务”的概念,特别简单、形象的例子是:打电话
和写信。两个人如果要通电话,必须先建立连接——拨号,等待应答后才能相互传
递信息,最后还要释放连接——挂电话。写信就没有那么复杂了,地址姓名填好以
后直接往邮筒一扔,收信人就能收到。TCP/IP协议在网络层是无连接的(数据包只
管往网上发,如何传输和到达以及是否到达由网络设备来管理)。而“端口”,是传输
层的内容,是面向连接的。协议里面低于1024的端口都有确切的定义,它们对应
着因特网上常见的一些服务。这些常见的服务可以划分为使用TCP端口(面向连接
如打电话)和使用UDP端口(无连接如写信)两种。
网络中可以被命名和寻址的通信端口是操作系统的一种可分配资源。由网络
OSI(Open System Interconnection Reference Model,开放系统互联参考模型)
七层协议可知,传输层与网络层最大的区别是传输层提供进程通信能力,网络通信
的最终地址不仅包括主机地址,还包括可描述进程的某种标识。所以TCP/IP协议
提出的协议端口,可以认为是网络通信进程的一种标识符。
应用程序(调入内存运行后一般称为进程)通过系统调用与某端口建立连接
(binding,绑定)后,传输层传给该端口的数据都被相应的进程所接收,相应进程
发给传输层的数据都从该端口输出。在TCP/IP协议的实现中,端口操作类似于一
般的I/O操作,进程获取一个端口,相当于获取本地唯一的I/O文件,可以用一般的
读写方式访问。
类似于文件描述符,每个端口都拥有一个叫端口号的整数描述符,用来区别不
同的端口。由于TCP/IP传输层的TCP和UDP两个协议是两个完全独立的软件模
块,因此各自的端口号也相互独立。如TCP有一个255号端口,UDP也可以有一
个255号端口,两者并不冲突。
2.端口号的基本分配方式
端口号有两种基本分配方式:
(1)全局分配:这是一种集中分配方式,由一个公认权威的机构根据用户需要
进行统一分配,并将结果公布于众。
(2)本地分配:又称动态连接,即进程需要访问传输层服务时,向本地操作系
统提出申请,操作系统返回本地唯一的端口号,进程再通过合适的系统调用,将自
己和该端口连接起来。
TCP/IP端口号的分配综合了以上两种方式,将端口号分为两部分,少量的作为
保留端口,以全局方式分配给服务进程。每一个标准服务器都拥有一个全局公认的
端口,即使在不同的机器上,其端口号也相同。剩余的为自由端口,以本地方式进
行分配。TCP和UDP规定,小于256的端口才能作为保留端口。
3.端口分类
按端口号可分为3大类:
(1)公认端口(Well Known Ports):从0到1023,它们紧密绑定于一些服
务。通常这些端口的通讯明确表明了某种服务的协议。例如,80端口实际上总是
HTTP通讯。
(2)注册端口(Registered Ports):从1024到49151。它们松散地绑定于
一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其他目的。
例如,许多系统处理动态端口从1024左右开始。
(3)动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。
理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。
4.端口“重定向”
系统管理员可以“重定向”端口。
一种常见的技术是把一个端口重定向到另一个地址。例如默认的HTTP端口是
80,不少人将它重定向到另一个端口,如8080。
实现重定向是为了隐藏公认的默认端口,降低受破坏率。这样如果有人要对一
个公认的默认端口进行攻击则必须先进行端口扫描。大多数端口重定向与原端口有
相似之处,例如多数HTTP端口由80变化而来,如81、88、8000、8080、8888。
同样POP的端口原来在110,也常被重定向到1100。也有不少情况是选取统计上
有特别意义的数,如1234、23456、34567等。许多人有其他原因选择奇怪的数,
42、69、666、31337。近来,越来越多的远程控制木马采用相同的默认端口。如
NetBus的默认端口是12345。Blake R. Swopes指出使用重定向端口还有一个原因,
在UNIX系统上,如果你想侦听1024以下的端口需要有root权限。如果你没有root
权限而又想开启Web服务,你就需要将其安装在较高的端口。此外,一些ISP的防
火墙将阻挡低端口的通讯,这样的话即使你拥有整个机器你还是得重定向端口。
二、常用端口对照详解
下表列出TCP/UDP端口扫描在防火墙记录中的信息。
端口 服 务
说 明
版权声明:本文标题:计算机常用端口设置详解 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1710262800a565018.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论