首页主机资讯Linux防火墙服务如何启动才稳定

Linux防火墙服务如何启动才稳定

时间2025-11-17 17:49:06发布访客分类主机资讯浏览991
导读:稳定启动 Linux 防火墙的实用方案 一 核心原则 只保留并启用一种防火墙管理工具(如 firewalld/ufw/iptables),避免并行管理导致规则互相覆盖。 规则要持久化,并配置为开机自启,否则重启后可能“裸奔”或规则丢失。...

稳定启动 Linux 防火墙的实用方案

一 核心原则

  • 只保留并启用一种防火墙管理工具(如 firewalld/ufw/iptables),避免并行管理导致规则互相覆盖。
  • 规则要持久化,并配置为开机自启,否则重启后可能“裸奔”或规则丢失。
  • 变更规则后使用热加载有序重启,确保已有连接不断开,减少业务中断。
  • 启动前后进行状态校验与连通性验证,并配置日志监控,便于快速回滚与排障。

二 不同工具的稳态启动步骤

  • firewalld(RHEL/CentOS/Fedora 常用)

    1. 安装与启动
      • 安装:yum/dnf install firewalld
      • 启动:systemctl start firewalld
      • 开机自启:systemctl enable firewalld
      • 状态:systemctl status firewalldfirewall-cmd --state
    2. 放行常用服务与端口(示例)
      • 放行 SSH/HTTP/HTTPS:firewall-cmd --permanent --zone=public --add-service=ssh --add-service=http --add-service=https
      • 或放行端口:firewall-cmd --permanent --zone=public --add-port=80/tcp --add-port=443/tcp
      • 使配置生效:firewall-cmd --reload
      • 校验:firewall-cmd --list-all
    3. 稳态要点
      • 使用 –permanent 写入配置,变更后用 –reload 热加载,避免重启导致短时可达性中断。
      • 避免直接 –complete-reload(会重置运行时状态),优先用 –reload
  • ufw(Ubuntu/Debian 常用)

    1. 安装与启用
      • 安装:apt install ufw
      • 启用:ufw enable(会自动设置开机自启)
      • 状态:ufw status verbose
    2. 放行常用端口(示例)
      • 策略:ufw default deny incomingufw default allow outgoing
      • 放行:ufw allow 22/tcpufw allow 80/tcpufw allow 443/tcp
    3. 稳态要点
      • 启用即持久化;变更后规则即时生效,必要时用 ufw reload 确保一致性。
  • iptables(传统方式)

    1. 安装与持久化
      • 规则保存:
        • Debian/Ubuntu:apt install iptables-persistent,安装时选择保存当前规则;后续可用 netfilter-persistent save
        • RHEL/CentOS:service iptables save(写入 /etc/sysconfig/iptables)。
      • 自定义 systemd 服务示例(确保开机加载):
        • 保存规则:iptables-save > /etc/iptables/rules.v4
        • 创建服务:/etc/systemd/system/iptables-restore.service
          [Unit]
          Description=Restore iptables rules
          After=network.target
          
          [Service]
          Type=oneshot
          ExecStart=/sbin/iptables-restore /etc/iptables/rules.v4
          RemainAfterExit=yes
          
          [Install]
          WantedBy=multi-user.target
          
        • 启用:systemctl daemon-reload & & systemctl enable --now iptables-restore.service
    2. 基本稳态规则(示例)
      • iptables -P INPUT DROP
      • iptables -P FORWARD DROP
      • iptables -P OUTPUT ACCEPT
      • iptables -A INPUT -i lo -j ACCEPT
      • iptables -A INPUT -p tcp --dport 22 -j ACCEPT
      • iptables -A INPUT -p tcp --dport 80 -j ACCEPT
      • iptables -A INPUT -p tcp --dport 443 -j ACCEPT
    3. 稳态要点
      • 规则必须先“保存”,再配置“开机恢复服务”;变更规则后记得再次保存。

三 提升稳定性的关键做法

  • 避免锁死 SSH
    • 先放行 22/TCP 再启用防火墙;远程操作建议使用 screen/tmux,或临时放通 22 后再收紧策略。
  • 使用“热加载”而非粗暴重启
    • firewalld 用 firewall-cmd --reload;iptables 用持久化机制或自定义服务在启动早期恢复规则,减少中断窗口。
  • 开机自启与启动顺序
    • 确认服务已 enable;如使用云厂商或容器环境,确保 网络就绪 后再启动防火墙(避免早期规则因接口未就绪而异常)。
  • 状态校验与连通性验证
    • 启动后执行:
      • firewalld:firewall-cmd --statefirewall-cmd --list-all
      • ufw:ufw status verbose
      • iptables:iptables -L -n -v
    • 连通性:对关键端口(如 22/80/443)进行本机与外网侧验证(必要时临时放通源地址/IP 做灰度)。
  • 日志与监控
    • firewalld:journalctl -u firewalld -f
    • ufw:tail -f /var/log/ufw.log
    • iptables:tail -f /var/log/syslog | grep iptables
    • 建议接入 系统日志集中监控,并设置关键事件告警。

四 快速排障清单

  • 服务未运行或规则未生效
    • 检查运行状态与自启:systemctl status firewalld/ufwiptables -L -n;确认已 enable
  • 端口未放行
    • firewalld:firewall-cmd --permanent --query-port=80/tcp;如未放行,添加后 –reload
    • ufw:ufw status verbose 查看是否允许对应端口/服务。
  • 重启后规则丢失
    • 确认已使用 持久化 工具(如 iptables-persistent、firewalld 的 –permanent 或 ufw 的 enable),并检查恢复服务是否 enabled
  • 远程连接中断
    • 临时放通 22/TCP 或控制台登录,回滚最近规则变更,再按“先放行、后收紧”的顺序重做。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux防火墙服务如何启动才稳定
本文地址: https://pptw.com/jishu/749141.html
Linux防火墙更新怎样操作才及时 Linux防火墙日志怎样查看才有效

游客 回复需填写必要信息