上一篇                     
               
			  linux如何启动防火墙
- Linux
- 2025-07-18
- 3860
 在Linux中启动防火墙可使用命令
 
 
sudo systemctl start firewalld,并设置开机自启:
 sudo systemctl enable firewalld(需先安装firewalld服务)
主流防火墙工具及启动方法
不同Linux发行版默认使用不同的防火墙工具,常见工具包括 firewalld、iptables 和 nftables,以下是它们的核心启动方法:
| 工具 | 启动命令 | 查看状态 | 设置开机自启 | 
|---|---|---|---|
| firewalld | sudo systemctl start firewalld | sudo firewall-cmd --state | sudo systemctl enable firewalld | 
| iptables | sudo systemctl start iptables | sudo iptables -L | sudo systemctl enable iptables | 
| nftables | sudo systemctl start nftables | sudo nft list ruleset | sudo systemctl enable nftables | 
通用步骤(以firewalld为例)
-  检查是否安装 
 若提示命令未找到(如firewall-cmd: command not found),需先安装:sudo yum install firewalld -y # 适用于CentOS/RHEL sudo apt install firewalld -y # 适用于Debian/Ubuntu 
-  启动防火墙  sudo systemctl start firewalld # 立即启动 sudo systemctl enable firewalld # 设置开机自启 
-  验证状态 sudo firewall-cmd --state # 返回 running 表示已启动 sudo systemctl status firewalld # 查看详细运行状态 
配置防火墙规则
启动防火墙后,需配置规则以允许或阻止特定流量,不同工具的操作差异较大:

firewalld(动态管理)
- 开放端口(如SSH的22端口): sudo firewall-cmd --permanent --add-port=22/tcp sudo firewall-cmd --reload # 应用更改 
- 删除规则: sudo firewall-cmd --permanent --remove-port=22/tcp sudo firewall-cmd --reload 
- 查看当前规则: sudo firewall-cmd --list-all 
iptables(手动配置)
- 开放端口: sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 添加规则 sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 示例:开放HTTP sudo iptables-save > /etc/iptables/rules.v4 # 保存规则 
- 删除规则: sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT 
nftables(新一代工具)
- 开放端口: sudo nft add table inet filter sudo nft add chain inet filter input { type filter hook input priority 0 ; } sudo nft add rule inet filter input tcp dport 22 accept
常见问题与解决方案
Q1:如何确认防火墙已成功启动?
- firewalld: sudo firewall-cmd --state # 应返回 running 
- iptables: sudo iptables -L # 列出规则,若无默认规则则表示未配置 
Q2:防火墙未安装时如何安装?
- CentOS/RHEL: sudo yum install firewalld -y 
- Debian/Ubuntu: sudo apt update sudo apt install firewalld -y 
注意事项
-  工具兼容性: - firewalld是RHEL系(CentOS、Fedora)的默认工具,支持动态管理。
- iptables是传统工具,需手动保存规则,适合精细化控制。
- nftables是新一代工具,性能更高,但配置复杂。
 
-  规则冲突:避免同时使用多种工具(如 firewalld和iptables),可能导致规则冲突。 
通过以上步骤,可灵活选择工具并配置防火墙,建议优先使用系统默认工具(如 firewalld),以降低维护复杂度
 
  
			 
			