0

0

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

P粉602998670

P粉602998670

发布时间:2025-08-30 11:30:01

|

751人浏览过

|

来源于php中文网

原创

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

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

直接告诉你,在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

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

    火山写作
    火山写作

    字节跳动推出的中英文AI写作、语法纠错、智能润色工具,是一款集成创作、润色、纠错、改写、翻译等能力的中英文 AI 写作助手。

    下载
  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可以帮助检测和阻止恶意端口扫描和攻击。

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

相关专题

更多
js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

505

2023.06.20

正则表达式不包含
正则表达式不包含

正则表达式,又称规则表达式,,是一种文本模式,包括普通字符和特殊字符,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式的文本。php中文网给大家带来了有关正则表达式的相关教程以及文章,希望对大家能有所帮助。

245

2023.07.05

java正则表达式语法
java正则表达式语法

java正则表达式语法是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。本专题提供java正则表达式语法的相关文章、下载和专题,供大家免费下载体验。

722

2023.07.05

java正则表达式匹配字符串
java正则表达式匹配字符串

在Java中,我们可以使用正则表达式来匹配字符串。本专题为大家带来java正则表达式匹配字符串的相关内容,帮助大家解决问题。

209

2023.08.11

正则表达式空格
正则表达式空格

正则表达式空格可以用“s”来表示,它是一个特殊的元字符,用于匹配任意空白字符,包括空格、制表符、换行符等。本专题为大家提供正则表达式相关的文章、下载、课程内容,供大家免费下载体验。

343

2023.08.31

Python爬虫获取数据的方法
Python爬虫获取数据的方法

Python爬虫可以通过请求库发送HTTP请求、解析库解析HTML、正则表达式提取数据,或使用数据抓取框架来获取数据。更多关于Python爬虫相关知识。详情阅读本专题下面的文章。php中文网欢迎大家前来学习。

293

2023.11.13

正则表达式空格如何表示
正则表达式空格如何表示

正则表达式空格可以用“s”来表示,它是一个特殊的元字符,用于匹配任意空白字符,包括空格、制表符、换行符等。想了解更多正则表达式空格怎么表示的内容,可以访问下面的文章。

228

2023.11.17

正则表达式中如何匹配数字
正则表达式中如何匹配数字

正则表达式中可以通过匹配单个数字、匹配多个数字、匹配固定长度的数字、匹配整数和小数、匹配负数和匹配科学计数法表示的数字的方法匹配数字。更多关于正则表达式的相关知识详情请看本专题下面的文章。php中文网欢迎大家前来学习。

524

2023.12.06

苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

10

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 5.9万人学习

Git 教程
Git 教程

共21课时 | 2.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号