信息发布→ 登录 注册 退出

如何在Linux中查看端口 Linux ss网络连接查询

发布时间:2025-08-30

点击量:
ss命令是Linux中查看端口的高效工具,比netstat更快且信息更全;使用ss -lntu可查看所有监听端口,结合grep可按端口号或PID过滤;通过ss -t state established可查看已建立的TCP连接;ss支持源地址、端口范围等复杂过滤;端口被占用时可用ss找到对应PID并kill释放;推荐ss因性能优、功能强且为未来趋势;防止恶意占用需配置防火墙、限制服务绑定、控制权限、定期审计、更新软件并部署IDS。

直接告诉你,在Linux中查看端口,

ss
命令绝对是你的好帮手。它比
netstat
更快,信息更全,简直是网络排查的瑞士军刀。

解决方案

  1. 查看所有监听端口:

    最简单的用法:

    ss -lntu

    • -l
      : 只显示监听状态的端口。
    • -n
      : 不解析服务名称,直接显示端口号。 这点很重要,否则你看到的是
      ssh
      而不是
      22
    • -t
      : 仅显示TCP连接。
    • -u
      : 仅显示UDP连接。

    这个命令会列出所有正在监听的TCP和UDP端口,以及对应的本地地址和端口号。

  2. 按端口号过滤:

    比如,我想看看8080端口有没有被占用:

    ss -lntu | grep :8080

    这里用了管道和

    grep
    命令,
    :8080
    是正则表达式,匹配端口号。

  3. 查看特定进程占用的端口:

    首先,你需要知道进程的PID。 假设PID是1234:

    ss -lntup | grep pid=1234

    • -p
      : 显示使用套接字的进程信息。 这个选项需要root权限。

    这个命令会列出PID为1234的进程正在监听的所有端口。

  4. 查看特定状态的TCP连接:

    例如,想查看所有处于ESTABLISHED状态的TCP连接:

    ss -t state established

    这个命令可以帮你快速找到已经建立的连接,例如,调试网络应用的时候很有用。

  5. 更复杂的过滤:

    ss
    命令支持更复杂的过滤条件,比如通过源/目的地址、端口范围等。具体可以参考
    man ss

    举个例子,查找源地址是

    192.168.1.100
    的所有TCP连接:
    ss -t src 192.168.1.100

服务器端口被占用,如何找到并释放?

端口被占用,通常意味着有进程正在监听那个端口。找到并释放端口的步骤如下:

  1. 确定占用端口的进程:
    ss -lntup | grep :<端口号>
    找到占用该端口的进程PID。
  2. 杀死进程:
    kill 
    如果进程顽固,可以用
    kill -9 
    强制杀死。 注意: 杀死进程前,务必确认该进程是可以安全停止的,避免造成数据丢失或系统不稳定。
  3. 重新启动服务: 杀死进程后,就可以重新启动需要使用该端口的服务了。

有时候,端口可能被僵尸进程占用,即使杀死了进程,端口仍然无法释放。这时,可以尝试重启服务器。

netstat
ss
有什么区别,为什么推荐使用
ss

netstat
是一个比较老的命令,而
ss
netstat
的替代品,属于
iproute2
工具包。

  • 性能:
    ss
    netstat
    更快,尤其是在连接数很多的情况下。
    ss
    直接从内核空间获取信息,而
    netstat
    需要通过
    /proc
    文件系统,效率较低。
  • 功能:
    ss
    提供更多的过滤选项,可以更精确地查找需要的网络连接信息。
  • 未来趋势:
    netstat
    已经逐渐被弃用,
    ss
    是未来的趋势。

因此,建议优先使用

ss
命令。

如何防止端口被恶意占用?

防止端口被恶意占用是一个安全问题,需要从多个方面入手:

  1. 防火墙配置: 使用防火墙(如
    iptables
    firewalld
    )限制对服务器端口的访问。只允许必要的IP地址或IP地址段访问特定端口。
  2. 服务绑定: 确保服务只绑定到特定的IP地址,而不是
    0.0.0.0
    。 绑定到
    0.0.0.0
    意味着服务监听所有网络接口,增加了被攻击的风险。
  3. 权限控制: 确保只有授权用户才能启动或停止服务。 避免使用root权限运行服务。
  4. 安全审计: 定期检查服务器的端口使用情况,及时发现异常情况。
  5. 软件更新: 保持操作系统和软件的更新,及时修复安全漏洞。
  6. 入侵检测系统 (IDS): 部署IDS可以帮助检测和阻止恶意端口扫描和攻击。

记住,安全是一个持续的过程,需要不断地监控和改进。

标签:# ssh  # 我想  # 源地址  # 而不是  # 的是  # 重新启动  # 未来  # 更快  # 绑定  # 是一个  # 端口号  # linux  # udp  # 接口  # 为什么  # 数据丢失  # 防火墙配置  # 区别  # 工具  # 操作系统  # 正则表达式  # 端口  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!