运维

运维

Products

当前位置:首页 > 运维 >

如何设置防火墙以保障LNMP架构安全?

96SEO 2025-10-30 19:03 0


一、 前言

在LNMP架构中,防火墙是确保服务器平安的关键组成部分。通过合理的防火墙配置,可以有效防止未授权访问和网络攻击。

LNMP架构中如何配置防火墙

二、 配置开放端口

  1. 配置开放端口
    • LNMP核心服务需开放以下端口:
      • Nginx:HTTP、HTTPS;
      • MySQL:3306/tcp;
      • PHP-FPM:9000/tcp。

      使用以下命令开放:

      sudo firewall-cmd --permanent --add-service=http  # 开放HTTP服务
      sudo firewall-cmd --permanent --add-service=https # 开放HTTPS服务
      sudo firewall-cmd --permanent --add-port=3306/tcp # 开放MySQL端口
      sudo firewall-cmd --permanent --add-port=9000/tcp # 开放PHP-FPM端口
  2. 验证配置

    查看当前开放的端口和服务:

    sudo firewall-cmd --list-all

    输出应包含上述端口/服务。

三、 基于iptables的配置

iptables需手动添加规则,适合需要精细控制的场景:

Linux系统中常见的防火墙工具包括:

sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
  1. 允许必要流量
    • 允许已建立的连接:
    • sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    • 允许SSH、HTTP、HTTPS、MySQL:
    • sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
      sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
      sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
      sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
    • 允许本地回环接口:
    • sudo iptables -A INPUT -i lo -j ACCEPT
  2. 保存与重启规则

    CentOS 6使用service命令保存:

    sudo service iptables savesudo systemctl restart iptables

四、基于ufw的配置

ufw语法简洁,适合快速配置:

前言LNMP安装配置WAF防火墙前言。这里再讲个防CC教程, 使用Nginx+Lua设置WAF防火墙来防CC,还可以拦截Url关键词等,其优点Nginx占用小,高并发的优势,以及Lua语言的轻快,并在用户访问前就可以处理掉攻击,效果还是很不错的。由于配置前需要编译Lua模块, 而OneinStack的LNMP一键包中OpenResty自带Lua模块,所以博主建议使用该一键包安装网站环境。

firewalld通过“区域”和“服务”管理规则, 适合:

  1. 配置开放端口
    sudo apt update
    sudo apt install ufw
    sudo ufw enable  # 启用ufw,首次启用会提示确认
  2. 配置开放端口
    sudo ufw allow ssh           # 允许SSH
    sudo ufw allow 80/tcp        # 允许HTTP
    sudo ufw allow 443/tcp       # 允许HTTPS
    sudo ufw allow 3306/tcp      # 允许MySQL
    sudo ufw allow 9000/tcp      # 允许PHP-FPM
  3. 查看与验证
    sudo ufw status verbose

    输出应显示“ALLOW”状态的对应端口。

五、 平安增强建议

  1. 限制SSH访问
    • firewalld:
    • sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'
    • ufw:
    • sudo ufw allow from 192.168.1.100 to any port 22
  2. 关闭SELinux若不需要SELinux的强制访问控制,可临时关闭或永久关闭,但需注意这会降低系统平安性。
  3. 定期更新规则因为业务变化, 及时调整防火墙规则,删除不必要的端口开放。
  4. 监控日志查看防火墙日志,及时发现异常访问。

通过以上配置,可有效保护LNMP架构中的服务器免受非法访问和常见网络攻击。需根据实际业务需求调整端口开放范围,遵循“最小权限”原则。


标签: Linux

提交需求或反馈

Demand feedback