温馨提示×

如何在Ubuntu上为PHP-FPM设置防火墙规则

小樊
47
2025-02-28 11:11:46
栏目: 编程语言
PHP开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu上为PHP-FPM设置防火墙规则,通常需要使用ufw(Uncomplicated Firewall)工具。以下是详细步骤:

1. 安装ufw

如果你的系统还没有安装ufw,可以使用以下命令进行安装:

sudo apt update
sudo apt install ufw

2. 启用ufw

安装完成后,启用ufw

sudo ufw enable

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

3. 允许HTTP/HTTPS流量

PHP-FPM通常通过HTTP或HTTPS协议提供服务,因此需要允许这些端口的流量。默认情况下,HTTP使用端口80,HTTPS使用端口443。

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

4. 允许PHP-FPM进程的网络访问

PHP-FPM默认监听Unix套接字(例如/var/run/php/php7.4-fpm.sock),如果你需要通过TCP/IP访问PHP-FPM,可以配置PHP-FPM监听TCP端口,并在防火墙中允许该端口的流量。

配置PHP-FPM监听TCP端口

编辑PHP-FPM配置文件(通常位于/etc/php/7.4/fpm/pool.d/www.conf):

sudo nano /etc/php/7.4/fpm/pool.d/www.conf

找到以下行并修改:

listen = /var/run/php/php7.4-fpm.sock

改为:

listen = 127.0.0.1:9000

或者你也可以监听所有接口:

listen = 0.0.0.0:9000

重启PHP-FPM服务

修改配置后,重启PHP-FPM服务以应用更改:

sudo systemctl restart php7.4-fpm

允许TCP端口9000的流量

sudo ufw allow 9000/tcp

5. 检查防火墙状态

你可以使用以下命令检查ufw的状态和已允许的规则:

sudo ufw status

6. 允许其他必要的端口

根据你的应用需求,可能还需要允许其他端口的流量,例如数据库端口(MySQL通常使用3306端口):

sudo ufw allow 3306/tcp

7. 禁用ufw(可选)

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

sudo ufw disable

通过以上步骤,你就可以在Ubuntu上为PHP-FPM设置防火墙规则了。确保在生产环境中仔细检查防火墙规则,以避免不必要的安全风险。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何在CentOS上设置防火墙规则

0