服务器测评网
我们一直在努力

Linux常用端口有哪些?各端口对应什么服务?

Linux作为开源操作系统的代表,广泛应用于服务器、嵌入式设备及开发环境,而端口管理是Linux网络通信的核心环节,端口是网络服务的入口,通过端口号标识不同的服务或进程,正确理解和管理端口对于系统安全、服务配置及故障排查至关重要,本文将系统介绍Linux端口的分类、常用端口服务、管理命令及安全配置,帮助读者全面掌握Linux端口相关知识。

Linux常用端口有哪些?各端口对应什么服务?

Linux端口分类与基础概念

在TCP/IP协议中,端口号用16位二进制表示,范围从0到65535,可分为三类:

  • 知名端口(Well-Known Ports):0-1023,由IANA(互联网号码分配局)统一分配,绑定标准服务,如HTTP(80)、HTTPS(443),普通用户需root权限才能使用这些端口。
  • 注册端口(Registered Ports):1024-49151,用户可自定义或向IANA注册,常见应用服务如MySQL(3306)、Redis(6379)等。
  • 动态/私有端口(Dynamic/Private Ports):49152-65535,临时分配给客户端进程使用,通信结束后释放。

端口按协议类型分为TCP端口(面向连接,如Web服务)和UDP端口(无连接,如DNS查询),部分服务同时支持两种协议(如SSH默认TCP 22,但可配置UDP)。

常用Linux端口服务及用途

以下是Linux系统中常见端口服务的详细列表,涵盖网络服务、数据库、应用协议等,便于快速查阅:

端口号 协议 服务名称 用途说明
20 TCP FTP-data FTP数据传输端口,主动模式时服务器主动连接客户端
21 TCP FTP-control FTP控制连接端口,用于传输命令(如登录、列表)
22 TCP SSH 安全远程登录协议,加密传输数据,替代传统Telnet
23 TCP Telnet 远程终端协议,明文传输,安全性低,已逐步被SSH取代
25 TCP SMTP 简单邮件传输协议,用于邮件发送(如 postfix、sendmail)
53 TCP/UDP DNS 域名系统协议,用于域名与IP地址解析(TCP用于区域传输,UDP用于查询)
80 TCP HTTP 超文本传输协议,Web服务默认端口(如 Apache、Nginx)
110 TCP POP3 邮局协议第3版,用于接收邮件(如 Dovecot)
143 TCP IMAP 互联网消息访问协议,支持邮件文件夹操作,比POP3更灵活
443 TCP HTTPS HTTP安全协议,通过SSL/TLS加密,保障Web通信安全
3306 TCP MySQL MySQL数据库默认端口,用于客户端连接
3389 TCP RDP 远程桌面协议,Windows远程桌面服务,Linux可通过xrdp实现
5432 TCP PostgreSQL 开源数据库系统默认端口
6379 TCP Redis 内存数据库,用于缓存、消息队列等
8080 TCP HTTP-Proxy Web代理服务端口,常用于Nginx反向代理或Tomcat默认端口
27017 TCP MongoDB NoSQL数据库端口,用于文档存储服务

补充说明

Linux常用端口有哪些?各端口对应什么服务?

  • 部分服务端口可自定义配置(如MySQL修改/etc/my.cnf中的port = 3306),需确保端口未被占用且防火墙放行。
  • 动态端口范围可通过sysctl net.ipv4.ip_local_port_range查看,默认为32768-60999。

Linux端口管理常用命令

查看端口状态

  • netstat命令(传统工具,需安装net-tools):

    # 查看所有监听端口(TCP/UDP)
    netstat -tulnp
    # 查看指定端口(如80)
    netstat -tulnp | grep :80
    # 查看TCP连接状态
    netstat -antp
  • ss命令(推荐,现代Linux默认安装,性能更优):

    # 查看所有监听端口
    ss -tulnp
    # 查看端口占用进程(PID、名称)
    ss -tulnp | grep :22
    # 查看TCP状态统计
    ss -s
  • lsof命令(列出打开文件的进程,端口视为文件):

    # 查看占用指定端口的进程
    lsof -i :3306
    # 查看指定PID打开的端口
    lsof -p 1234 | grep IPv4

开放/关闭端口

  • firewalld防火墙(CentOS/RHEL 7+):

    Linux常用端口有哪些?各端口对应什么服务?

    # 添加永久开放TCP 80端口
    sudo firewall-cmd --permanent --add-port=80/tcp
    # 重新加载防火墙
    sudo firewall-cmd --reload
    # 查看已开放端口
    sudo firewall-cmd --list-ports
  • ufw防火墙(Ubuntu/Debian):

    # 开放80端口
    sudo ufw allow 80/tcp
    # 允许特定IP访问3306端口
    sudo ufw allow from 192.168.1.100 to any port 3306
    # 启用防火墙
    sudo ufw enable
  • iptables防火墙(传统Linux防火墙):

    # 开放80端口(TCP)
    sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    # 保存规则(CentOS)
    sudo service iptables save
    # 保存规则(Ubuntu)
    sudo iptables-save > /etc/iptables/rules.v4

端口安全配置建议

  1. 关闭不必要的端口:通过ss -tulnp检查监听端口,关闭非必需服务(如Telnet默认端口23,建议禁用并改用SSH)。
  2. 限制访问来源:使用防火墙(如firewalld、ufw)限制IP访问,例如仅允许内网IP访问数据库端口。
  3. 修改默认端口:高风险服务(如SSH、RDP)可修改默认端口(如SSH改为2222),降低自动化攻击风险。
  4. 定期扫描端口:使用nmap工具扫描系统开放端口,及时发现异常:
    # 扫描本机所有TCP端口
    nmap -sT -p 1-65555 localhost
    # 扫描指定网段开放端口
    nmap -sS 192.168.1.0/24
  5. 监控端口日志:通过journalctl -u ssh查看SSH服务日志,检测异常登录尝试;数据库服务建议开启审计日志。

常见端口问题排查

  1. 端口被占用但无进程:可能僵尸进程占用端口,需重启服务或系统;或端口被TIME_WAIT状态占用,可通过net.ipv4.tcp_tw_reuse参数优化。
  2. 外部无法访问端口:检查防火墙规则(firewall-cmd --list-all)、安全组(云服务器)及服务是否监听0.0.0(如Nginx配置listen 0.0.0.0:80)。
  3. 端口冲突:多个服务使用同一端口时,通过lsof -i :端口号定位进程,修改服务配置或终止冗余进程。

Linux端口管理是系统运维的基础技能,掌握端口分类、常用服务、管理命令及安全配置,能有效提升系统稳定性与安全性,日常工作中需结合ssfirewalld等工具定期检查端口状态,遵循最小权限原则开放端口,并通过日志监控及时发现异常,无论是搭建Web服务、数据库集群还是远程管理,规范的端口配置都是保障系统高效运行的关键环节。

赞(0)
未经允许不得转载:好主机测评网 » Linux常用端口有哪些?各端口对应什么服务?