linux如何启动防火墙

在Linux中启动防火墙可使用命令sudo systemctl start firewalld,并设置开机自启:sudo systemctl enable firewalld(需先安装firewalld服务)

主流防火墙工具及启动方法

不同Linux发行版默认使用不同的防火墙工具,常见工具包括 firewalldiptablesnftables,以下是它们的核心启动方法:

linux如何启动防火墙

工具 启动命令 查看状态 设置开机自启
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为例)

  1. 检查是否安装
    若提示命令未找到(如 firewall-cmd: command not found),需先安装:

    sudo yum install firewalld -y   # 适用于CentOS/RHEL  
    sudo apt install firewalld -y   # 适用于Debian/Ubuntu  
  2. 启动防火墙

    sudo systemctl start firewalld  # 立即启动  
    sudo systemctl enable firewalld # 设置开机自启  
  3. 验证状态

    linux如何启动防火墙

    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  

注意事项

  1. 工具兼容性

    • firewalld 是RHEL系(CentOS、Fedora)的默认工具,支持动态管理。
    • iptables 是传统工具,需手动保存规则,适合精细化控制。
    • nftables 是新一代工具,性能更高,但配置复杂。
  2. 规则冲突:避免同时使用多种工具(如 firewalldiptables),可能导致规则冲突。

    linux如何启动防火墙


通过以上步骤,可灵活选择工具并配置防火墙,建议优先使用系统默认工具(如 firewalld),以降低维护复杂度

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年7月18日 22:31
下一篇 2025年7月18日 22:37

相关推荐

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN