
要检查某个端口在 Linux 系统上是否开放,可以根据你是想查看本地服务监听状态,还是测试远程主机的端口连通性,选择不同的方法。下面介绍几种常用且实用的方式。
1. 使用 netstat 查看本地端口监听状态netstat 可以列出系统中正在监听的端口和服务。
-
命令示例:
sudo netstat -tuln | grep :端口号
-
说明:
-t
:显示 TCP 端口-u
:显示 UDP 端口-l
:仅显示监听状态的端口-n
:以数字形式显示地址和端口
- 例如检查 80 端口:
sudo netstat -tuln | grep :80
如果输出中有 LISTEN 状态,说明该端口正在被本地服务监听。
2. 使用 ss 命令(推荐替代 netstat)
ss 是更现代、更快的工具,功能类似 netstat。
Post AI
博客文章AI生成器
50
查看详情
-
命令示例:
sudo ss -tuln | grep :端口号
- 例如检查 22 端口:
sudo ss -tuln | grep :22
- 如果有结果返回并显示 LISTEN,表示端口已打开并监听。
3. 使用 telnet 测试远程端口连通性
telnet 可用于测试目标主机的某个端口是否可连接。
-
命令示例:
telnet 主机IP 端口号
- 例如:
telnet 192.168.1.100 80
- 如果连接成功,出现空白屏幕或欢迎信息,说明端口是开放的;如果提示“Connection refused”或超时,则端口未开放或被防火墙拦截。
4. 使用 nc(netcat)检测端口
nc 是一个强大的网络调试工具,适合检测端口。
-
检查远程端口:
nc -zv IP地址 端口号
- 例如:
nc -zv 10.0.0.5 22
-z
表示只扫描不发送数据,-v
表示显示详细信息。- 返回“succeeded”表示端口开放。
即使服务在监听,防火墙也可能阻止外部访问。
- 查看 firewalld 规则:
sudo firewall-cmd --list-all
- 查看 iptables 规则:
sudo iptables -L -n | grep 端口号
- 确保相关端口已在防火墙中放行。
基本上就这些。根据使用场景选择合适的方法:本地监听用 ss 或 netstat,远程连通用 telnet 或 nc。注意权限和防火墙的影响,排查更全面。
以上就是Linux怎么检查某个端口是否开放的详细内容,更多请关注知识资源分享宝库其它相关文章!
相关标签: linux 端口 防火墙 工具 udp linux 大家都在看: Linux如何查看当前的网络连接情况 Linux系统目录etc常见配置文件介绍 Linux用户与权限管理新手学习指南 Linux如何使用dig命令查询DNS记录 如何在Linux命令行中进行系统监控?






发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。