溫馨提示×

LNMP環境下Ubuntu如何管理用戶權限

小樊
69
2025-04-03 08:48:01
欄目: 智能運維

在LNMP(Linux, Nginx, MySQL, PHP)環境下,管理用戶權限是非常重要的,以確保系統的安全性和穩定性。以下是一些關鍵步驟和建議:

1. 用戶賬戶管理

  • 創建新用戶
    sudo adduser username
    
  • 刪除用戶
    sudo deluser username
    
  • 修改用戶密碼
    sudo passwd username
    

2. 文件和目錄權限

  • 設置文件權限
    chmod 644 filename
    
  • 設置目錄權限
    chmod 755 directoryname
    
  • 更改文件所有者
    sudo chown username:groupname filename
    
  • 更改目錄所有者
    sudo chown -R username:groupname directoryname
    

3. Nginx用戶權限

  • 配置Nginx運行用戶: 編輯/etc/nginx/nginx.conf,找到user指令并設置為非root用戶:
    user www-data;
    
  • 確保Nginx用戶有足夠的權限訪問網站文件
    sudo chown -R www-data:www-data /var/www/html
    

4. MySQL/MariaDB用戶權限

  • 創建數據庫用戶
    CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
    FLUSH PRIVILEGES;
    
  • 刪除數據庫用戶
    DROP USER 'username'@'localhost';
    FLUSH PRIVILEGES;
    

5. PHP-FPM用戶權限

  • 配置PHP-FPM運行用戶: 編輯/etc/php/7.x/fpm/pool.d/www.conf,找到usergroup指令并設置為非root用戶:
    user = www-data
    group = www-data
    
  • 確保PHP-FPM用戶有足夠的權限訪問網站文件
    sudo chown -R www-data:www-data /var/www/html
    

6. SELinux/AppArmor

  • SELinux: 如果系統啟用了SELinux,確保Nginx和PHP-FPM進程有足夠的權限:
    sudo setsebool -P httpd_can_network_connect_db 1
    
  • AppArmor: 如果系統啟用了AppArmor,確保配置文件允許Nginx和PHP-FPM訪問必要的文件和目錄。

7. 定期審計和監控

  • 使用auditd進行審計
    sudo apt-get install auditd audispd-plugins
    sudo auditctl -a exit,always -F arch=b32 -S execve -k execute
    sudo auditctl -a exit,always -F arch=b64 -S execve -k execute
    
  • 使用fail2ban防止暴力破解
    sudo apt-get install fail2ban
    sudo systemctl enable fail2ban
    sudo systemctl start fail2ban
    

通過以上步驟,可以有效地管理LNMP環境下的用戶權限,確保系統的安全性和穩定性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女