以下是LNMP在Ubuntu上的权限设置要点:
www-data),避免使用root用户运行服务:sudo adduser www-data # 若不存在
sudo usermod -aG www-data username # 将用户加入www-data组
644(所有者可读写,其他用户仅读),目录设为755(所有者可读写执行,其他用户仅读执行):sudo chmod 644 /var/www/html/*
sudo chmod 755 /var/www/html/
644权限,所有者为root。644权限,所有者为root,日志文件所有者为www-data。mysql,权限750。/etc/nginx/nginx.conf,将user指令设为www-data,确保与网站文件所有者一致。/etc/php/7.x/fpm/pool.d/www.conf,将user和group设为www-data,并确保其可访问网站文件。sudo setenforce 0 # 临时禁用
sudo ausearch -c 'nginx' --raw | audit2allow -M nginx_policy # 生成策略
sudo semodule -i nginx_policy.pp # 安装策略
sudo aa-enforce /etc/apparmor.d/usr.sbin.nginx
sudo aa-enforce /etc/apparmor.d/usr.sbin.php-fpm
auditd监控权限变更,fail2ban防止暴力破解。777等过度宽松权限。关键命令参考:
chmod(数字/符号模式)、chown(所有者/组)。.conf文件后,通过systemctl reload重启服务。注:生产环境中需严格遵循最小权限原则,避免直接使用root操作,优先通过sudo提权。