温馨提示×

Ubuntu LNMP防火墙配置指南

小樊
60
2025-07-17 11:58:50
栏目: 智能运维

在Ubuntu上配置LNMP(Linux, Nginx, MySQL, PHP)防火墙主要涉及配置UFW(Uncomplicated Firewall)。以下是详细步骤:

1. 安装UFW

首先,确保你的系统上已经安装了UFW。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install ufw

2. 启用UFW

安装完成后,启用UFW:

sudo ufw enable

系统会提示你确认是否启用UFW,输入 y 并按回车键。

3. 配置UFW规则

接下来,配置UFW规则以允许必要的端口。LNMP通常需要以下端口:

  • Nginx: 80 (HTTP), 443 (HTTPS)
  • MySQL: 3306
  • PHP-FPM: 9000 (默认端口)

你可以使用以下命令来添加这些规则:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 3306/tcp
sudo ufw allow 9000/tcp

4. 允许SSH访问

为了能够远程管理服务器,确保允许SSH访问:

sudo ufw allow ssh

5. 查看UFW状态

你可以使用以下命令查看当前的UFW状态和规则:

sudo ufw status

6. 禁用UFW(可选)

如果你需要临时禁用UFW,可以使用以下命令:

sudo ufw disable

7. 重新加载UFW(可选)

如果你在配置过程中修改了防火墙规则,可以重新加载防火墙以应用更改:

sudo ufw reload

8. 其他安全建议

  • 修改SSH端口:为了提高安全性,建议修改SSH的默认端口(22)为一个非标准端口,例如2222,并在 /etc/ssh/sshd_config 文件中进行配置:

    Port 2222
    

    然后重启SSH服务:

    sudo systemctl restart sshd
    
  • 修改Nginx配置:确保Nginx配置文件(通常位于 /etc/nginx/nginx.conf/etc/nginx/sites-available/default)中没有阻止外部访问的设置,并监听正确的端口。

  • MySQL安全配置:运行 mysql_secure_installation 脚本进行基本的安全设置,包括设置强密码、删除匿名用户、禁止远程root登录等。

  • PHP配置:编辑PHP配置文件(通常位于 /etc/php/7.x/fpm/php.ini),设置 display_errorsOn,以便在开发过程中显示错误信息,并设置 error_reportingE_ALL,以报告所有错误。

0