debian

debian防火墙如何防止端口扫描

小樊
60
2025-08-12 06:49:48
栏目: 智能运维

在Debian系统中,防止端口扫描可以通过多种方式实现,包括使用iptables、ufw(Uncomplicated Firewall)、nftables等工具。以下是一些基本的步骤和方法:

使用iptables

  1. 更新iptables规则: 打开终端并使用root权限运行以下命令来更新iptables规则,阻止不必要的端口扫描。

    sudo iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
    sudo iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
    sudo iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
    sudo iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
    sudo iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
    
  2. 限制连接速率: 使用limit模块来限制每个IP地址的连接速率,防止端口扫描。

    sudo iptables -A INPUT -p tcp --dport 80 -m limit --limit 5/min -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 80 -j DROP
    
  3. 保存iptables规则: 确保iptables规则在系统重启后仍然有效。

    sudo apt-get install iptables-persistent
    sudo netfilter-persistent save
    sudo netfilter-persistent reload
    

使用ufw

  1. 启用ufw: 如果尚未启用ufw,可以使用以下命令启用它。

    sudo ufw enable
    
  2. 配置ufw规则: 使用ufw配置防火墙规则,阻止不必要的端口扫描。

    sudo ufw default deny incoming
    sudo ufw default allow outgoing
    sudo ufw allow 22/tcp  # 允许SSH连接
    sudo ufw limit 22/tcp    # 限制SSH连接速率
    
  3. 应用ufw规则: 确保ufw规则生效。

    sudo ufw reload
    

使用nftables

  1. 安装nftables: 如果尚未安装nftables,可以使用以下命令安装它。

    sudo apt-get install nftables
    
  2. 配置nftables规则: 编辑nftables配置文件(通常是/etc/nftables.conf),添加规则来阻止端口扫描。

    sudo nano /etc/nftables.conf
    

    添加以下规则:

    table ip filter {
        chain input {
            type filter hook input priority 0; policy drop;
            iifname "lo" accept
            ct state established,related accept
            tcp dport 22 limit rate over 5/min burst 5 accept
            drop
        }
    }
    
  3. 加载nftables规则: 加载并启用nftables规则。

    sudo nft -f /etc/nftables.conf
    sudo systemctl enable nftables
    sudo systemctl start nftables
    

通过以上方法,你可以有效地防止端口扫描,提高Debian系统的安全性。请根据你的具体需求和环境选择合适的方法。

0
看了该问题的人还看了