温馨提示×

Debian防火墙如何规则添加

小樊
40
2025-10-12 19:05:22
栏目: 智能运维

Debian防火墙规则添加指南(iptables与ufw)
Debian系统中,防火墙规则主要通过iptables(底层工具)或ufw(用户友好封装)配置。以下是两种工具的具体操作步骤及注意事项:

一、使用iptables添加规则(底层配置)

iptables是Debian默认的防火墙工具,需通过命令行直接操作,适合需要精细控制的场景。

1. 安装与基础操作

  • 安装iptables:若未安装,运行sudo apt update && sudo apt install iptables
  • 查看当前规则sudo iptables -L -n -v-L列出规则,-n以数字显示地址/端口,-v显示详细信息)。
  • 设置默认策略:建议先设置默认拒绝所有入站流量(默认允许出站),避免遗漏风险:
    sudo iptables -P INPUT DROP    # 拒绝所有入站
    sudo iptables -P FORWARD DROP  # 拒绝所有转发
    sudo iptables -P OUTPUT ACCEPT # 允许所有出站
    

2. 常见规则添加示例

  • 允许特定IP访问:如允许192.168.1.100访问SSH(端口22):
    sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 22 -j ACCEPT
    
  • 允许特定端口:如允许HTTP(80端口)和HTTPS(443端口):
    sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
    
  • 拒绝特定IP:如阻止192.168.1.101的所有入站流量:
    sudo iptables -A INPUT -s 192.168.1.101 -j DROP
    
  • 允许已建立的连接:避免中断现有会话(需配合-m conntrack模块):
    sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
    

3. 保存与持久化

iptables规则默认重启后失效,需通过iptables-persistent保存:

sudo apt install iptables-persistent  # 安装时选择“是”保存当前规则
sudo netfilter-persistent save        # 手动保存规则
sudo netfilter-persistent reload      # 重新加载规则

也可手动备份规则到/etc/iptables/rules.v4

sudo iptables-save > /etc/iptables/rules.v4

二、使用ufw添加规则(推荐,简化操作)

ufw(Uncomplicated Firewall)是基于iptables的前端工具,命令更简洁,适合新手或快速配置。

1. 安装与启用

  • 安装ufwsudo apt update && sudo apt install ufw
  • 启用ufwsudo ufw enable(系统会提示确认,输入y)。
  • 查看状态sudo ufw status(显示当前规则);sudo ufw status verbose(显示详细信息,包括默认策略)。

2. 常见规则添加示例

  • 允许SSH:默认端口22,命令:sudo ufw allow ssh(或sudo ufw allow 22/tcp)。
  • 允许HTTP/HTTPSsudo ufw allow 80/tcp(HTTP)、sudo ufw allow 443/tcp(HTTPS)。
  • 允许特定IP访问:如允许192.168.1.100访问80端口:
    sudo ufw allow from 192.168.1.100 to any port 80
    
  • 允许端口范围:如开放2290-2300端口的TCP流量:
    sudo ufw allow 2290:2300/tcp
    
  • 限制SSH连接速率:防止暴力破解,每30秒最多允许5次新连接:
    sudo ufw limit 22/tcp
    

3. 删除与保存规则

  • 删除规则:如删除允许80端口的规则,sudo ufw delete allow 80/tcp
  • 重置所有规则sudo ufw reset(清除所有自定义规则,恢复默认策略)。
  • 保存规则:ufw规则默认自动保存(写入/etc/ufw/user.rules),无需手动操作。

三、注意事项

  1. 备份规则:修改前备份现有规则(如sudo iptables-save > ~/iptables-backup.txtsudo ufw export > ~/ufw-backup.rules),避免配置错误导致无法访问。
  2. 测试规则:生产环境应用前,先在测试环境验证规则,避免误拦截合法流量。
  3. 默认策略:iptables建议设置INPUT DROP(拒绝所有入站),ufw默认已开启此策略,确保未明确允许的流量被拦截。
  4. 服务依赖:ufw依赖iptablesnetfilter-persistent,安装ufw时会自动安装这些组件。

通过以上步骤,可根据需求选择工具添加防火墙规则,保护Debian系统安全。

0