debian

Debian系统中如何配置防火墙防止攻击

小樊
52
2025-08-29 22:39:24
栏目: 网络安全

在Debian系统中,可以使用iptablesufw(Uncomplicated Firewall)来配置防火墙以防止攻击。以下是使用这两种方法的步骤:

使用 iptables

  1. 更新系统

    sudo apt update && sudo apt upgrade
    
  2. 安装iptables(如果尚未安装):

    sudo apt install iptables
    
  3. 设置默认策略: 通常,我们希望拒绝所有进入的流量,只允许特定的流量通过。

    sudo iptables -P INPUT DROP
    sudo iptables -P FORWARD DROP
    sudo iptables -P OUTPUT ACCEPT
    
  4. 允许必要的流量

    • 允许SSH连接(假设SSH端口是22):
      sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
      sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
      
    • 允许HTTP和HTTPS连接(假设HTTP端口是80,HTTPS端口是443):
      sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
      sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
      sudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
      sudo iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
      
    • 允许DNS查询(UDP端口53):
      sudo iptables -A INPUT -p udp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
      sudo iptables -A OUTPUT -p udp --sport 53 -m conntrack --ctstate ESTABLISHED -j ACCEPT
      
  5. 保存iptables规则: Debian系统默认不会保存iptables规则,因此需要手动保存。

    sudo sh -c "iptables-save > /etc/iptables/rules.v4"
    
  6. 设置iptables开机自启动: 创建一个systemd服务来加载iptables规则。

    sudo nano /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
    
    [Install]
    WantedBy=multi-user.target
    

    启用并启动服务:

    sudo systemctl enable iptables-restore
    sudo systemctl start iptables-restore
    

使用 ufw

  1. 安装ufw(如果尚未安装):

    sudo apt install ufw
    
  2. 启用ufw

    sudo ufw enable
    
  3. 配置ufw规则

    • 允许SSH连接:
      sudo ufw allow 22/tcp
      
    • 允许HTTP和HTTPS连接:
      sudo ufw allow 80/tcp
      sudo ufw allow 443/tcp
      
    • 允许DNS查询:
      sudo ufw allow 53/udp
      
  4. 查看ufw状态

    sudo ufw status
    
  5. 禁用ufw(如果需要):

    sudo ufw disable
    

通过以上步骤,你可以在Debian系统中配置防火墙以防止攻击。建议定期更新系统和防火墙规则,以确保安全性。

0
看了该问题的人还看了