ubuntu

LNMP在Ubuntu上的权限管理技巧

小樊
43
2025-11-08 16:30:42
栏目: 智能运维

LNMP在Ubuntu上的权限管理技巧

1. 用户与组管理:最小权限原则

为LNMP组件创建专用低权限用户,避免使用root运行服务。Ubuntu默认已存在www-data(Nginx/PHP-FPM)、mysql(MySQL)用户,若未存在可通过以下命令创建:

sudo groupadd www-data  # 创建www-data组(若不存在)
sudo useradd -g www-data www-data  # 创建www-data用户并加入www-data组
sudo groupadd mysql     # 创建mysql组(若不存在)
sudo useradd -g mysql mysql  # 创建mysql用户并加入mysql组

将网站文件所有者设置为对应用户(如Nginx/PHP-FPM用www-data,MySQL用mysql):

sudo chown -R www-data:www-data /var/www/html  # 网站根目录
sudo chown -R mysql:mysql /var/lib/mysql       # MySQL数据目录

2. Nginx权限配置:避免过度开放

3. MySQL/MariaDB权限管理:精准控制数据库访问

4. PHP-FPM权限配置:同步用户与组

5. SELinux/AppArmor:强化访问控制

6. 定期审计与优化:保持权限安全

7. 额外技巧:使用ACL实现灵活权限

若需更细粒度的权限控制(如允许某用户访问特定目录),可使用访问控制列表(ACL):

sudo apt install acl  # 安装ACL工具
sudo setfacl -m u:username:rwx /var/www/html/specific_dir  # 给指定用户添加读/写/执行权限
sudo getfacl /var/www/html/specific_dir  # 查看ACL权限

通过以上技巧,可实现LNMP在Ubuntu上的精细化权限管理,平衡安全性与功能性。

0
看了该问题的人还看了