Linux怎么检查某个端口是否开放

检查端口是否开放需分本地监听与远程连通性:1. 用ss -tuln | grep :端口号查看本地监听状态;2. 用nc -zv IP 端口测试远程连通性;3. 结合firewall-cmd或iptables确认防火墙规则放行。

Linux怎么检查某个端口是否开放

要检查某个端口在 linux 系统上是否开放,可以根据你是想查看本地服务监听状态,还是测试远程主机的端口连通性,选择不同的方法。下面介绍几种常用且实用的方式。

1. 使用 netstat 查看本地端口监听状态

netstat 可以列出系统中正在监听的端口和服务。

  • 命令示例:
    sudo netstat -tuln | grep :端口号
  • 说明:
    • -t

      :显示 TCP 端口

    • -u

      :显示 udp 端口

    • -l

      :仅显示监听状态的端口

    • -n

      :以数字形式显示地址和端口

  • 例如检查 80 端口:
    sudo netstat -tuln | grep :80

如果输出中有 LISTEN 状态,说明该端口正在被本地服务监听。

Linux怎么检查某个端口是否开放

2. 使用 ss 命令(推荐替代 netstat)

ss 是更现代、更快的工具,功能类似 netstat。

Linux怎么检查某个端口是否开放

Article Forge

行业文案AI写作软件,可自动为特定主题或行业生成内容

Linux怎么检查某个端口是否开放22

查看详情 Linux怎么检查某个端口是否开放

  • 命令示例:
    sudo ss -tuln | grep :端口号
  • 例如检查 22 端口:
    sudo ss -tuln | grep :22
  • 如果有结果返回并显示 LISTEN,表示端口已打开并监听。

Linux怎么检查某个端口是否开放

3. 使用 telnet 测试远程端口连通性

telnet 可用于测试目标主机的某个端口是否可连接。

  • 命令示例:
    telnet 主机IP 端口号
  • 例如:
    telnet 192.168.1.100 80
  • 如果连接成功,出现空白屏幕或欢迎信息,说明端口是开放的;如果提示“Connection refused”或超时,则端口未开放或被防火墙拦截。

Linux怎么检查某个端口是否开放

4. 使用 nc(netcat)检测端口

nc 是一个强大的网络调试工具,适合检测端口。

  • 检查远程端口:
    nc -zv IP地址 端口号
  • 例如:
    nc -zv 10.0.0.5 22
  • -z

    表示只扫描不发送数据,

    -v

    表示显示详细信息。

  • 返回“succeeded”表示端口开放。

5. 检查防火墙设置(可能影响端口可见性)

即使服务在监听,防火墙也可能阻止外部访问。

  • 查看 firewalld 规则:
    sudo firewall-cmd --list-all
  • 查看 iptables 规则:
    sudo iptables -L -n | grep 端口号
  • 确保相关端口已在防火墙中放行。

基本上就这些。根据使用场景选择合适的方法:本地监听用 ss 或 netstat,远程连通用 telnet 或 nc。注意权限和防火墙的影响,排查更全面。

相关标签:

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容