新闻资讯
当前位置当前位置: 首页 > 新闻资讯 > 行业资讯

高防御服务器centos7如何操作防火墙设置

发布时间: 2025-05-26 15:27:33 来源:南数网络

一、基础防火墙配置(firewalld)

1. 启动与状态检查

bash
systemctl start firewalld  # 启动防火墙systemctl enable firewalld # 设置开机自启firewall-cmd --state       # 查看状态(running为正常)

2. 端口管理

  • 开放端口(以 80/443 为例):

    bash
    firewall-cmd --zone=public --add-port=80/tcp --permanentfirewall-cmd --zone=public --add-port=443/tcp --permanentfirewall-cmd --reload    # 生效配置
    

     

  • 查看开放端口:

    bash
    firewall-cmd --zone=public --list-ports
    

     

  • 关闭端口:

    bash
    firewall-cmd --zone=public --remove-port=80/tcp --permanent
    

     

3. 服务管理

  • 允许特定服务(如 SSH):

    bash
    firewall-cmd --zone=public --add-service=ssh --permanent
    

     

  • 查看服务规则:

    bash
    firewall-cmd --zone=public --list-services
    

     

4. 区域配置

  • 查看活动区域:

    bash
    firewall-cmd --get-active-zones
    

     

  • 设置默认区域:

    bash
    firewall-cmd --set-default-zone=public
    

     

二、高防御场景的强化配置

1. 与硬件防护联动

  • 流量清洗规则:
    高防御服务器通常已部署硬件级流量清洗(如 BGP Anycast),需..防火墙规则与清洗策略一致:

    bash
    # 允许清洗设备回源IP段firewall-cmd --zone=public --add-source=清洗设备IP/24 --permanent
    

     

  • 阻断攻击特征流量:

    bash
    # 禁止SYN Flood攻击(防护Layer4)firewall-cmd --zone=public --add-rich-rule='rule protocol value="tcp" drop' --permanent
    

     

2. 精细化流量控制

  • 限制并发连接数:

    bash
    firewall-cmd --zone=public --add-rich-rule='rule service name="http" limit value="1000/sec" accept' --permanent
    

     

  • 禁止特定 IP 段访问:

    bash
    firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" reject' --permanent
    

     

3. 协议与端口优化

  • 关闭不必要的端口:

    bash
    firewall-cmd --zone=public --remove-service=dhcpv6-client --permanent
    

     

  • 允许 UDP 协议(游戏 / 视频业务):

    bash
    firewall-cmd --zone=public --add-port=10000-20000/udp --permanent
    

     

三、日志监控与攻击溯源

1. 开启防火墙日志

bash
# 修改配置文件vi /etc/firewalld/firewalld.confLogDenied=all  # 将此项设置为allsystemctl restart firewalld

2. 分析攻击流量

  • 实时查看拒绝日志:

    bash
    tail -f /var/log/firewalld
    

     

  • 过滤特定攻击类型:

    bash
    grep "DROP" /var/log/firewalld | awk '{print $7}' | sort | uniq -c | sort -nr
    

     

3. 结合 fail2ban 动态封禁

  • 安装与配置:

    bash
    yum install fail2ban -yvi /etc/fail2ban/jail.local
    


    添加以下规则:

    ini
    [ssh-iptables]enabled = trueport = sshfilter = sshdlogpath = /var/log/securemaxretry = 3bantime = 3600findtime = 600
    

     

  • 启动服务:

    bash
    systemctl start fail2ban
    systemctl enable fail2ban
    

     

四、常见问题与解决方案

1. 端口无法访问

  • 检查 SELinux:

    bash
    getenforce  # 若为Enforcing状态,临时关闭:setenforce 0
    

     

  • 验证云服务商安全组:
    阿里云 / 腾讯云等需同时配置控制台安全组规则。

2. 防火墙规则冲突

  • 排查 firewalld 与 iptables 冲突:

    bash
    systemctl stop firewalld
    iptables -L -n  # 查看残留规则iptables -F     # 清空规则
    

     

3. 高并发场景性能优化

  • 启用 SYN Cookies:

    bash
    echo "1" > /proc/sys/net/ipv4/tcp_syncookiesvi /etc/sysctl.conf
    net.ipv4.tcp_syncookies = 1sysctl -p
    

     

五、安全增强..实践

  1. 禁止 root 直接 SSH 登录:

    bash
    vi /etc/ssh/sshd_config
    PermitRootLogin no
    systemctl restart sshd
    

     

  2. 限制 SSH 登录频率:

    bash
    vi /etc/hosts.deny
    sshd: ALL: denyvi /etc/hosts.allow
    sshd: 192.168.1.0/24: allow
    

     

  3. 启用 BGP 多线防护:
    联系 IDC 服务商配置 BGP 多线接入,提升防御带宽和路由冗余。

六、验证与维护

  1. 端口连通性测试:

    bash
    telnet your_ip 80  # 检查HTTP端口nmap -p 80 your_ip # 详细端口状态
    

     

  2. 定期审计规则:

    bash
    firewall-cmd --list-all  # 检查开放端口与服务
    

     

  3. 系统更新:

    bash
    yum update -y  # 保持系统补丁
    

     

 

通过以上配置,可充分发挥高防御服务器的硬件防护能力,同时通过软件防火墙规则实现精细化流量控制,结合日志分析和动态封禁机制,构建多层防护体系。建议定期进行安全扫描(如 Nessus)和渗透测试,持续优化防御策略。

 

(声明:本文来源于网络,仅供参考阅读,涉及侵权请联系我们删除、不代表任何立场以及观点。)


高防御服务器centos7如何操作防火墙设置 第1张