linux

Linux防火墙如何配置才能更安全

小樊
49
2025-04-13 15:06:44
栏目: 智能运维

Linux 防火墙的配置对于确保系统安全至关重要。以下是一些关键步骤和建议,帮助你提升 Linux 防火墙的安全性。

选择合适的防火墙工具

基础配置步骤

  1. 安装防火墙工具(如未安装):

    sudo apt-get install iptables # Debian/Ubuntu
    sudo yum install iptables # CentOS/RHEL
    
  2. 配置防火墙规则

    • 使用 iptables 设置允许 SSH 连接的规则:

      sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
      
    • 使用 firewalld 允许 SSH 服务:

      sudo firewall-cmd --permanent --add-service=ssh
      sudo firewall-cmd --reload
      
    • 使用 nftables 添加简单的过滤表和链:

      sudo nft add table inet filters
      sudo nft add chain inet filter input { type filter hook input }
      
  3. 持久化配置

    • 使用 iptables-saveiptables-restore 保存和恢复规则。
    • 使用 firewall-cmd --runtime-to-permanent 将运行时配置转换为永久配置。

安全加固建议

  1. 限制 SSH 远程登录

    • 修改 SSH 配置文件 /etc/ssh/sshd_config

      PermitRootLogin no
      PasswordAuthentication no
      
    • 重启 SSH 服务:

      sudo systemctl restart sshd
      
  2. 修改 SSH 默认端口

    • 编辑 SSH 配置文件,修改端口为一个较高的值(如 10000 以上),以减少被恶意扫描到的概率。
  3. 禁用 SSH 协议版本 1

    • 编辑 SSH 配置文件,注释掉或删除 protocol 2,1 这一行:

      protocol 2
      
  4. 禁止空密码登录

    • 确保 SSH 配置文件中 PermitEmptyPasswords no 这一行未被注释。
  5. 禁止 ping 请求

    • 通过以下命令禁止服务器响应 ping 请求:

      echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
      
  6. 用户和用户组安全管理

    • 遵循最小权限原则,删除不必要的默认用户和用户组。

    • 设置文件权限,防止信息泄露:

      chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow
      
  7. 日志审计

    • 确保 rsyslog 服务已启用,记录日志用于审计:

      sudo systemctl enable rsyslog
      sudo systemctl start rsyslog
      

注意事项

通过上述步骤和建议,你可以显著提升 Linux 防火墙的安全性,保护你的系统免受网络威胁。

0
看了该问题的人还看了