如何快速查看所有网络端口?

使用 netstat 命令(经典工具)

netstat 是传统的网络统计工具,可查看端口状态(需安装 net-tools 包):

# 查看所有活动连接(含进程名)
sudo netstat -tulnp
  • 参数解析
    • -t:TCP端口
    • -u:UDP端口
    • -l:仅显示监听端口
    • -n:以数字形式显示端口(不解析服务名)
    • -p:显示关联进程名(需sudo权限)

示例输出

Proto Recv-Q Send-Q Local Address  Foreign Address  State  PID/Program name
tcp        0      0 0.0.0.0:22     0.0.0.0:*        LISTEN  1234/sshd

使用 ss 命令(推荐替代方案)

ss(Socket Statistics)是 netstat 的现代替代品,速度更快、功能更全:

# 查看所有监听端口
sudo ss -tuln
# 检查特定端口(如80端口)
sudo ss -tuln sport = :80
  • 参数解析
    • -s:统计摘要
    • sport/dport:过滤源/目标端口(例:dport = :443

使用 lsof 命令(查看进程占用)

通过进程或文件视角检查端口(需安装 lsof):

# 查看所有网络端口
sudo lsof -i
# 检查特定端口占用(如3306)
sudo lsof -i :3306

输出示例

COMMAND  PID   USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
mysqld  456  mysql  12u IPv4  12345      0t0  TCP *:3306 (LISTEN)

使用 nmap 扫描端口(远程检测)

nmap 用于扫描本地或远程主机的开放端口(需安装):

# 扫描本机所有端口
nmap localhost
# 扫描特定端口范围(如1-1000)
nmap -p 1-1000 192.168.1.1

注意:扫描他人主机需获得授权,避免法律风险。


查看服务配置文件

某些服务的端口通过配置文件定义:

  • 常见位置
    • /etc/services:系统预定义服务端口列表
    • /etc/apache2/ports.conf:Apache端口
    • /etc/ssh/sshd_config:SSH端口(默认为22)

特殊场景处理

  1. 仅查看TCP监听端口
    ss -tln
  2. 检查端口是否被占用
    sudo lsof -i :8080  # 无输出表示空闲
  3. 查看UDP服务
    sudo ss -uln

注意事项

  1. 权限要求
    查看进程关联信息(如 netstat -plsof)需 sudo 权限。
  2. 工具安装
    • Ubuntu/Debian:sudo apt install net-tools lsof nmap
    • CentOS/RHEL:sudo yum install net-tools lsof nmap
  3. 防火墙干扰
    若端口未显示,检查防火墙(ufwfirewalld)是否阻止访问。

  • 快速监听端口检查 → 用 ss -tuln
  • 查进程占用 → 用 lsof -i :端口号
  • 远程扫描 → 用 nmap(合法授权前提下)
    定期检查开放端口可提升系统安全性,避免未授权服务暴露,建议结合防火墙规则限制敏感端口访问。

引用说明: 参考 Linux 官方文档(man pages)、Linux Foundation 网络管理指南 及 Nmap 官方手册,确保方法经过实践验证,命令示例在 Ubuntu 22.04 及 CentOS 9 环境中测试通过。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6741.html

(0)
酷番叔酷番叔
上一篇 2025年7月8日 22:36
下一篇 2025年7月8日 22:51

相关推荐

  • 文件权限设置错误有多危险?

    在Linux系统中,文件权限是安全管理的核心机制,通过命令行(模式)更改权限可精确控制用户对文件/目录的访问,以下是详细操作指南:权限基础概念Linux为每个文件分配三类用户的权限:所有者(Owner):文件创建者所属组(Group):共享权限的用户组其他用户(Others):系统所有其他用户权限类型:读(r……

    5天前
    800
  • 手机电脑最新版本怎么查?

    查看版本可确认当前软件或系统信息,通常通过运行特定命令(如命令行输入版本查询指令)或在程序设置菜单中查找”选项实现,此操作为升级、故障排查及兼容性验证提供基础依据。

    2025年7月5日
    900
  • 如何在Linux挂载GPT分区管理2TB硬盘?

    准备工作识别GPT分区使用工具查看磁盘信息:sudo fdisk -l # 列出所有磁盘(GPT分区会标注"GPT")sudo lsblk -f # 显示分区文件系统类型(如ext4、NTFS)sudo blkid # 获取分区的UUID(关键标识)输出示例:/dev/sdb1: UUID……

    2025年7月6日
    1300
  • 如何利用rsync的a、v、z参数优化数据传输?

    如何将文件传输到 Linux 系统:8 种专业方法详解在 Linux 系统管理中,文件传输是高频操作,无论是开发者部署代码、运维人员同步配置,还是普通用户共享文档,掌握高效安全的传输方法至关重要,本文提供 8 种经过验证的方案,涵盖命令行与图形界面工具,兼顾安全性与效率,所有步骤均通过 Ubuntu/CentO……

    2025年7月9日
    1600
  • 如何开放SVN和网站端口?

    在Linux系统上搭建SVN服务器的详细指南准备工作系统要求Linux发行版:Ubuntu/CentOS/Debian等(本文以Ubuntu 22.04为例)用户权限:sudo权限账户网络配置:开放3690端口(SVN默认端口)安装必要工具# 更新软件包列表sudo apt update &&amp……

    2025年7月7日
    1100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信