linux环境防火墙命令行
linux环境防火墙命令行详细介绍
在 Linux 环境中,常见的防火墙管理工具有iptables和firewalld ,以下是它们的常用命令行操作:
1. iptables
iptables是 Linux 系统中古老且强大的防火墙工具,常用于对网络数据包进行过滤和转发。
- 查看规则:bash
iptables该命令会列出当前
iptables的所有规则,-L用于列出规则,-n表示以数字形式显示地址和端口,-v则用于显示详细信息。 - 清空规则:bash
iptables此命令可清空所有已定义的规则。
- 允许特定端口:bash
iptables INPUT tcp ACCEPT这一命令的作用是允许 TCP 协议的 80 端口(通常为 HTTP 服务)的流量进入系统。
-A表示追加规则,INPUT为规则链,-p指定协议,--dport指定目标端口,-j指定动作(这里是ACCEPT,即接受)。 - 保存规则:
在不同的发行版中,保存规则的命令有所不同。- Debian/Ubuntu:bash
iptables-persistentnetfilter-persistent save
- CentOS/RHEL:bash
yum iptables-servicesiptables save
- Debian/Ubuntu:bash
2. firewalld
firewalld是 Red Hat 系列系统(如 CentOS 7 及以上)默认的防火墙管理工具,它使用区域(zone)和服务(service)的概念来管理防火墙规则。
- 查看状态:bash
systemctl status firewalld此命令可查看
firewalld服务的运行状态。 - 启动 / 停止 / 重启服务:bash
systemctl start firewalldsystemctl stop firewalld
systemctl restart firewalld
- 查看默认区域:bash
firewall-cmd --get-default-zone该命令用于获取当前系统的默认防火墙区域。
- 允许特定端口:bash
firewall-cmd public --add-port/tcpfirewall-cmd
第一条命令表示在
public区域永久允许 TCP 协议的 80 端口的流量通过,第二条命令则用于重新加载防火墙规则使配置生效。 - 允许特定服务:bash
firewall-cmd public --add-servicehttpfirewall-cmd
9123firewall-cmd =public =http firewall-cmd
这两条命令的作用是在
public区域永久允许 HTTP 服务的流量通过,并重新加载规则。
上述是iptables和firewalld的一些常用命令,你可依据自身需求选择合适的防火墙工具和命令。