在Linux系统中,查看网络端口是否开启是一个常见的需求,通常可以通过以下几种方法来实现:
netstat
命令netstat
是一个强大的网络统计工具,可以显示网络连接、路由表、接口统计等。
sudo netstat -tuln | grep <端口号>
例如,查看80端口是否开启:
sudo netstat -tuln | grep 80
ss
命令ss
是 netstat
的现代替代品,执行速度更快,提供的信息更详细。
sudo ss -tuln | grep <端口号>
例如,查看3306端口(MySQL默认端口):
sudo ss -tuln | grep 3306
lsof
命令lsof
可以列出当前系统打开的文件,包括网络端口。
sudo lsof -i :<端口号>
例如,查看22端口(SSH默认端口):
sudo lsof -i :22
sudo
提升权限。systemctl status <服务名>
。ps
和 grep
查找相关进程。fuser
命令查找占用端口的进程ID。sudo fuser <端口号>/tcp
以下是一个综合示例,展示如何使用上述命令检查多个端口的状态:
#!/bin/bash
# 定义要检查的端口列表
ports=(80 443 3306 22)
for port in "${ports[@]}"; do
echo "Checking port $port..."
sudo netstat -tuln | grep $port
sudo ss -tuln | grep $port
sudo lsof -i :$port
echo "----------------------------------------"
done
通过这些方法,你可以有效地检查和监控Linux系统中的网络端口状态。
领取专属 10元无门槛券
手把手带您无忧上云