溫馨提示×

Ubuntu vsftpd權限設置詳解

小樊
44
2025-08-13 12:34:32
欄目: 智能運維

Ubuntu vsftpd權限設置主要涉及用戶權限、目錄權限及安全配置,以下是關鍵要點:

一、用戶權限配置

  1. 系統用戶創建

    • 創建專用FTP用戶(無SSH權限):
      sudo useradd -m -s /sbin/nologin ftpuser  # 禁止登錄系統  
      sudo passwd ftpuser  # 設置密碼  
      
  2. 配置文件權限控制

    • 編輯 /etc/vsftpd.conf
      • local_enable=YES:允許本地用戶登錄。
      • write_enable=YES:允許上傳/刪除文件。
      • chroot_local_user=YES:限制用戶僅能訪問其主目錄。
      • allow_writeable_chroot=YES:允許chroot目錄可寫(避免權限沖突)。
      • userlist_enable=YES + userlist_file=/etc/vsftpd.user_list:通過白名單控制可登錄用戶。

二、目錄權限設置

  1. 用戶主目錄權限
    • 創建用戶FTP根目錄并授權:
      sudo mkdir -p /home/ftpuser/ftp  
      sudo chown ftpuser:ftpuser /home/ftpuser/ftp  # 所有權歸用戶  
      sudo chmod 755 /home/ftpuser/ftp  # 主目錄可讀可執行(不可寫,避免越權)  
      
    • 若需上傳文件,單獨創建可寫子目錄:
      sudo mkdir /home/ftpuser/ftp/upload  
      sudo chown ftpuser:ftpuser /home/ftpuser/ftp/upload  
      sudo chmod 775 /home/ftpuser/ftp/upload  # 允許用戶讀寫執行  
      
      

三、安全增強配置

  1. 被動模式端口范圍

    • 避免使用默認端口,指定被動模式端口段(如30000-31000):
      pasv_enable=YES  
      pasv_min_port=30000  
      pasv_max_port=31000  
      
  2. 防火墻規則

    • 放行FTP控制端口(21)及被動模式端口:
      sudo ufw allow 21/tcp  
      sudo ufw allow 30000:31000/tcp  
      sudo ufw reload  
      
  3. 加密傳輸(可選)

    • 啟用SSL/TLS(需提前配置證書):
      ssl_enable=YES  
      rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem  
      rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key  
      

四、驗證與重啟

  • 重啟服務使配置生效:
    sudo systemctl restart vsftpd  
    
  • 測試連接:通過FTP客戶端(如FileZilla)使用創建的用戶登錄,驗證權限是否生效。

關鍵安全原則

  • 禁止匿名訪問(anonymous_enable=NO)。
  • 限制用戶僅能訪問其主目錄(chroot_local_user=YES),避免越權訪問系統文件。
  • 上傳目錄單獨設置可寫權限,主目錄保持只讀(755),防止誤操作破壞系統。

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