使用
sudo iptables -L
命令查看 linux 防火墙的端口开放情况。在Linux系统中,防火墙是保障网络安全的重要工具之一,它通过控制进出网络流量来保护系统免受未经授权的访问和攻击,了解如何查看和管理Linux防火墙开放的端口,对于维护系统安全至关重要,以下是一些常用的方法和命令,用于查看Linux防火墙开放的端口:
使用iptables命令查看防火墙端口
查询所有开放的端口
sudo iptables -L -n
该命令会显示当前防火墙中的所有规则,包括允许通过的端口。
查询特定端口
sudo iptables -L -n | grep <端口号>
要查询80端口是否开放:
sudo iptables -L -n | grep 80
使用firewalld命令查看防火墙端口(适用于CentOS/RHEL 7+)
查看firewalld状态
sudo systemctl status firewalld
查看所有开放的端口
sudo firewall-cmd --list-ports
查看指定zone(如public)的开放端口
sudo firewall-cmd --zone=public --list-ports
使用ufw命令查看防火墙端口(适用于Ubuntu/Debian)
sudo ufw status
该命令会显示ufw防火墙的状态和当前已经打开的端口。
使用nmap工具扫描本地主机的开放端口
安装nmap(如果尚未安装)
对于Debian/Ubuntu系统:
sudo apt-get install nmap
对于CentOS/RHEL系统:
sudo yum install nmap
使用nmap扫描本地主机的开放端口
sudo nmap -sT -O localhost
或者,如果只想扫描特定的端口范围:
sudo nmap -p 1-65535 localhost
使用netstat或ss命令查看监听端口(辅助工具)
使用netstat查看所有TCP监听端口
sudo netstat -tuln
使用ss命令查看监听端口(较新版本的Linux系统可能更常用)
sudo ss -tuln
命令 | 用途 | 适用系统 | 权限要求 | |
sudo iptables -L -n | 显示所有防火墙规则,包括开放的端口 | 多种Linux发行版 | root | |
sudo iptables -L -n | grep<端口号> | 查询特定端口是否开放 | 多种Linux发行版 | root |
sudo firewall-cmd --list-ports | 显示firewalld防火墙中已经打开的端口 | CentOS/RHEL 7+ | root | |
sudo firewall-cmd --zone=public --list-ports | 查看指定zone(如public)的开放端口 | CentOS/RHEL 7+ | root | |
sudo ufw status | 显示ufw防火墙的状态和当前已经打开的端口 | Ubuntu/Debian | root | |
sudo nmap -sT -O localhost | 扫描本地主机的开放端口 | 多种Linux发行版 | root | |
sudo netstat -tuln | 列出当前正在使用的端口和监听的端口,包括TCP和UDP端口 | 多种Linux发行版 | root | |
sudo ss -tuln | 显示所有处于监听状态(LISTEN)的TCP端口和UDP端口 | 较新版本的Linux系统 | root |
Linux系统中有多种方法可以查看防火墙开放的端口,具体取决于使用的防火墙软件和系统配置,选择合适的命令和方法,可以帮助管理员有效地管理和监控系统的网络安全性。