在Ubuntu系统中,使用UFW(Uncomplicated Firewall)作为防火墙工具来设置LNMP(Linux, Nginx, MySQL, PHP)环境的防火墙规则。以下是一些基本的步骤和示例,帮助你配置UFW以保护你的LNMP服务器。
首先,确保UFW已经安装在你的系统上。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install ufw
安装完成后,启用UFW:
sudo ufw enable
系统会提示你确认是否启用防火墙,输入y
并按回车键。
设置默认的入站和出站策略为拒绝,只允许特定的流量通过:
sudo ufw default deny incoming
sudo ufw default allow outgoing
为了能够远程管理服务器,需要允许SSH连接:
sudo ufw allow ssh
Nginx作为Web服务器,需要允许HTTP(80端口)和HTTPS(443端口)流量:
sudo ufw allow http
sudo ufw allow https
如果你使用的是MySQL或MariaDB,需要允许来自本地主机的连接:
sudo ufw allow mysql
如果你需要从远程主机连接MySQL/MariaDB,可以指定具体的IP地址:
sudo ufw allow from <remote_ip> to any port mysql
如果你使用PHP-FPM,可能需要允许相关的端口。默认情况下,PHP-FPM使用9000端口:
sudo ufw allow 9000/tcp
你可以随时查看UFW的状态和规则:
sudo ufw status
如果你需要临时禁用UFW,可以使用以下命令:
sudo ufw disable
以下是一个完整的示例,展示了如何设置UFW规则来保护一个基本的LNMP环境:
# 安装UFW
sudo apt update
sudo apt install ufw
# 启用UFW
sudo ufw enable
# 设置默认策略
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 允许SSH连接
sudo ufw allow ssh
# 允许HTTP和HTTPS流量
sudo ufw allow http
sudo ufw allow https
# 允许MySQL/MariaDB连接
sudo ufw allow mysql
# 允许PHP-FPM连接
sudo ufw allow 9000/tcp
# 查看UFW状态
sudo ufw status
通过这些步骤,你可以为你的Ubuntu LNMP环境设置一个基本的防火墙规则集,确保服务器的安全性。