溫馨提示×

ubuntu lamp權限管理如何操作

小樊
43
2025-08-07 06:09:50
欄目: 智能運維

Ubuntu LAMP權限管理主要涉及用戶、文件目錄、服務配置等方面,以下是關鍵操作步驟及安全建議:

一、基礎權限設置

  1. Web目錄權限

    • 將Web根目錄(通常為/var/www/html)所有者設為Apache用戶(www-data):
      sudo chown -R www-data:www-data /var/www/html  
      
    • 設置目錄權限為755(可讀可執行)、文件權限為644(可讀可寫):
      sudo find /var/www/html -type d -exec chmod 755 {} \;  
      sudo find /var/www/html -type f -exec chmod 644 {} \;  
      
    • 若需上傳功能,單獨設置上傳目錄權限(如/var/www/html/uploads)為770
      sudo chmod -R 770 /var/www/html/uploads  
      
  2. 服務用戶配置

    • 確保Apache/PHP以www-data用戶運行:
      編輯/etc/apache2/envvars,確認以下行:
      export APACHE_RUN_USER=www-data  
      export APACHE_RUN_GROUP=www-data  
      
      重啟Apache生效:
      sudo systemctl restart apache2  
      

二、數據庫權限管理

  1. 創建專用數據庫用戶

    • 登錄MySQL,避免使用root賬戶:
      mysql -u root -p  
      
    • 創建用戶并授權(僅允許本地訪問):
      CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'strongpassword';  
      GRANT SELECT, INSERT, UPDATE ON appdb.* TO 'appuser'@'localhost';  
      FLUSH PRIVILEGES;  
      
  2. 數據目錄權限

    • 確保MySQL數據目錄(/var/lib/mysql)僅mysql用戶可訪問:
      sudo chown -R mysql:mysql /var/lib/mysql  
      sudo chmod -R 750 /var/lib/mysql  
      

三、安全增強配置

  1. 禁用危險權限

    • 避免使用chmod 777,優先通過chown和最小權限原則控制訪問。
    • 禁用SELinux(若啟用):
      sudo setenforce 0  # 臨時  
      sudo sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config  # 永久  
      
  2. 配置文件權限

    • 限制Apache配置文件訪問(如/etc/apache2/):
      sudo chmod 644 /etc/apache2/*.conf  
      sudo chmod 755 /etc/apache2  
      
  3. PHP安全設置

    • 編輯php.ini,限制文件訪問范圍和禁用危險函數:
      open_basedir = /var/www/html/  
      disable_functions = exec,passthru,shell_exec  
      

四、驗證與維護

  • 定期檢查權限:
    ls -l /var/www/html  # 查看目錄權限  
    sudo apache2ctl configtest  # 檢查Apache配置  
    
  • 更新系統和軟件包:
    sudo apt update && sudo apt upgrade  
    

注意:生產環境需嚴格遵循最小權限原則,開發環境可適當放寬,但避免全局開放寫權限。

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