网络

端口号一览表

常用TCP/UDP端口号及其用途一览:FTP、SSH、HTTP、HTTPS、MySQL、Redis等。适用于配置防火墙规则、排查"连接被拒绝"问题的开发者参考工具,内置实时搜索过滤。

知名端口 0–1023 注册端口 1024–49151 动态・私有端口 49152–65535
端口号一览表
端口号 协议 TCP/UDP 范围区分 用途
20 FTP (Data) TCP 知名端口 用于FTP的数据传输(主动模式)。目前正逐渐被SFTP、FTPS取代。
21 FTP (Control) TCP 知名端口 用于FTP的控制连接,负责传递命令与响应。
22 SSH TCP 知名端口 用于SSH加密远程登录,以及SCP/SFTP文件传输。
23 Telnet TCP 知名端口 用于Telnet明文远程登录。存在被窃听的风险,建议改用SSH。
25 SMTP TCP 知名端口 用于SMTP邮件服务器之间的邮件转发(中继)。
53 DNS TCP/UDP 知名端口 用于DNS域名解析。普通查询使用UDP,区域传输及大型响应使用TCP。
67 DHCP (Server) UDP 知名端口 用于DHCP服务器向客户端分配IP地址。
68 DHCP (Client) UDP 知名端口 用于DHCP客户端请求分配IP地址。
69 TFTP UDP 知名端口 用于TFTP免认证的简易文件传输,主要用于网络设备的固件升级等场景。
80 HTTP TCP 知名端口 用于HTTP未加密网页的传输。
110 POP3 TCP 知名端口 用于邮件客户端通过POP3接收(下载)邮件。
123 NTP UDP 知名端口 用于NTP实现计算机之间的时间同步。
143 IMAP TCP 知名端口 用于IMAP在邮件服务器上管理邮件、实现多设备间的同步。
161 SNMP UDP 知名端口 用于SNMP对网络设备进行监控和状态查询。
162 SNMP Trap UDP 知名端口 用于接收SNMP Trap,即设备主动发送的通知。
194 IRC TCP 知名端口 用于IRC实时聊天。
389 LDAP TCP 知名端口 用于LDAP查询目录服务(用户・组织信息)。
443 HTTPS TCP 知名端口 用于HTTPS(基于TLS加密的HTTP)安全网页传输。
445 SMB TCP 知名端口 用于SMB实现Windows文件共享・打印机共享。
465 SMTPS TCP 知名端口 用于SMTPS(基于TLS的SMTP)加密发送邮件。
587 SMTP Submission TCP 知名端口 邮件客户端向邮件服务器提交(Submission)待发送邮件的标准端口。
636 LDAPS TCP 知名端口 用于LDAPS(基于TLS的LDAP)加密目录服务通信。
993 IMAPS TCP 知名端口 用于IMAPS(基于TLS的IMAP)加密邮件同步。
995 POP3S TCP 知名端口 用于POP3S(基于TLS的POP3)加密接收邮件。
1433 MSSQL TCP 注册端口 用于Microsoft SQL Server数据库连接。
3306 MySQL TCP 注册端口 用于MySQL/MariaDB数据库连接。
3389 RDP TCP 注册端口 用于RDP实现Windows远程桌面连接。
5432 PostgreSQL TCP 注册端口 用于PostgreSQL数据库连接。
5900 VNC TCP 注册端口 用于VNC实现远程桌面画面共享。
6379 Redis TCP 注册端口 用于连接Redis内存数据存储。
8080 HTTP (Alt) TCP 注册端口 HTTP的常用替代端口,常用于代理服务器和开发用Web服务器。
8443 HTTPS (Alt) TCP 注册端口 HTTPS的常用替代端口,常用于Tomcat等应用服务器。
9200 Elasticsearch TCP 注册端口 用于连接Elasticsearch的REST API。
27017 MongoDB TCP 注册端口 用于MongoDB数据库连接。

使用提示

  • 配置防火墙规则时,只开放实际需要的端口,其余一律默认拒绝(default deny),这是数十年来未变的安全基本原则。
  • 出现"连接被拒绝"错误时,请先用netstat -anss -tlnp确认该端口上的服务是否真的在监听。
  • 80、443等"知名端口"(0~1023)在大多数操作系统上需要管理员权限才能绑定,因此非特权应用常改用8080等替代端口。
  • 同一服务的明文版本与加密版本往往使用不同端口(例如80/HTTP对443/HTTPS,21/FTP对990/FTPS),使用时请勿混淆。
  • 本一览表中的端口号可直接用于AWS、GCP、Azure等云环境的安全组规则配置。

常见问题

IP地址用于确定通信对象所在的"建筑物"(计算机),而端口号则用于确定该建筑物内的"房间号"(应用程序・服务)。同一台服务器上,80号端口可能对应Web服务器,22号端口对应SSH服务器——端口号决定了通信最终交由哪个服务处理。

TCP是注重可靠性的协议,会确认送达并重传丢失的数据,常用于网页浏览、文件传输等场景。UDP是省略确认应答的轻量级协议,适用于DNS查询、在线游戏、视频流媒体等更看重速度的场景。

首先确认该端口上的服务(进程)是否确实已启动并在监听。如果已启动,接下来检查防火墙(iptablesufw、云安全组等)是否阻挡了该端口的通信。

新建站点原则上应仅使用443端口(HTTPS)运行。保留80端口(HTTP)仅用于跳转至443端口,这是目前公认的最佳实践。

通常会选择1024~49151范围内的"注册端口",尤其是不与其他常见服务冲突的编号(例如8080或3000系列)。应避免使用0~1023的"知名端口",因为它们已被现有标准服务保留。
ツールくん

闲话 ― 端口号为何最高只到65535

端口号之所以限定在0~65535范围内,是因为TCP/UDP报头中端口号字段被定义为16位(2字节)。2的16次方等于65536,除去0号端口,实际可用范围为1~65535。这一设计在20世纪80年代初TCP/IP标准化时就已确定,此后从未更改。

IANA(互联网数字分配机构)将全部端口划分为三个区段管理:0~1023的"知名端口"专门保留给HTTP、SSH等广泛使用的服务;1024~49151的"注册端口"可由企业或项目申请注册;49152~65535的"动态・私有端口"则由客户端自由用作临时的源端口。

即便是80(HTTP)、443(HTTPS)这样广为人知的端口,其用途也并非一开始就确定。443号端口被分配用于HTTPS是在1994年,当时Netscape公司在开发SSL(安全套接层)协议时向IANA提出了申请。

为降低端口扫描攻击的风险,部分生产服务器会将SSH的默认端口(22号)改为其他数字,这种做法有时被称为"端口敲门"。但这属于"隐蔽式安全",无法替代强身份验证、及时更新补丁等根本性的安全措施。

→ 查看全部趣味知识