温馨提示×

如何在Linux Minimal中配置防火墙

小樊
48
2025-11-22 13:53:32
栏目: 智能运维

Linux Minimal 配置防火墙实操指南

一、先确认系统与防火墙栈

  • 查看系统信息:cat /etc/os-release
  • 常见分支与默认工具:
    • RHEL/CentOS 7/8:默认使用 firewalld
    • Debian/Ubuntu:常用 UFW(若未安装需先安装)
  • 在 Minimal 环境中,可能未预装防火墙组件,需先安装并启动服务后再配置规则。

二、RHEL/CentOS Minimal 使用 firewalld(推荐)

  • 安装与启动
    • 安装:sudo yum install -y firewalld(或 sudo dnf install -y firewalld
    • 启动与开机自启:sudo systemctl start firewalld && sudo systemctl enable firewalld
    • 查看状态:sudo systemctl status firewalld
  • 常用规则
    • 开放端口(示例:8080/TCP):sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
    • 开放服务(示例:http/https):sudo firewall-cmd --permanent --zone=public --add-service=http--add-service=https
    • 使配置生效:sudo firewall-cmd --reload
    • 查看规则:sudo firewall-cmd --list-all 或按端口:sudo firewall-cmd --list-ports
    • 删除规则:sudo firewall-cmd --permanent --zone=public --remove-port=8080/tcp--remove-service=http
  • 实用提示
    • 修改规则务必加 –permanent,否则重启后失效;变更后用 –reload 使新规则生效。
    • 远程操作务必先放行 SSH(22/TCP),避免断开:sudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reload

三、Debian/Ubuntu Minimal 使用 UFW(若未安装先安装)

  • 安装与启用
    • 安装:sudo apt update && sudo apt install -y ufw
    • 启用:sudo ufw enable(首次启用会设置开机自启)
    • 查看状态:sudo ufw status verbose
  • 常用规则
    • 放行端口:sudo ufw allow 22/tcp(SSH),sudo ufw allow 80,443/tcp(HTTP/HTTPS)
    • 放行来源网段:sudo ufw allow from 192.168.1.0/24
    • 删除规则:sudo ufw delete allow 22/tcp
    • 默认策略(推荐):sudo ufw default deny incomingsudo ufw default allow outgoing
  • 实用提示
    • UFW 规则默认持久化;远程操作先放行 SSH,避免锁死会话。

四、RHEL/CentOS 7 Minimal 使用 iptables(传统方式)

  • 安装与启动
    • 安装:sudo yum install -y iptables-services
    • 停止并禁用 firewalld:sudo systemctl stop firewalld && sudo systemctl disable firewalld
    • 启动并启用 iptables:sudo systemctl start iptables && sudo systemctl enable iptables
  • 基本规则模板(示例)
    • 允许回环与已建立连接:sudo iptables -A INPUT -i lo -j ACCEPT-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    • 放行 SSH(22/TCP):sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    • 放行 HTTP/HTTPS(80/443/TCP):sudo iptables -A INPUT -p tcp --dport 80,443 -j ACCEPT
    • 默认拒绝入站:sudo iptables -P INPUT DROP
  • 持久化
    • 保存规则:sudo service iptables savesudo iptables-save > /etc/sysconfig/iptables
    • 恢复规则:sudo iptables-restore < /etc/sysconfig/iptables
  • 风险提示
    • 在远程环境应用默认拒绝策略前,务必先在本地或带外控制台验证规则,避免误锁。

五、安全与排错要点

  • 最小暴露面:仅开放必要端口(如 SSH 22/TCP、HTTP 80/TCP、HTTPS 443/TCP),其余默认拒绝。
  • 变更流程:先规划规则 → 先在测试环境验证 → 使用“永久”参数或持久化机制 → 重载/重启服务 → 复核规则生效情况。
  • 远程维护:修改前确保已有控制台/带外通道;必要时分阶段放行(先短时放行 SSH,验证无误后再收紧)。
  • 日志与审计:结合系统日志与防火墙日志观察异常流量,定期清理过期规则与优化顺序。

0