溫馨提示×

怎樣設置Linux SFTP用戶權限

小樊
53
2025-08-09 22:04:50
欄目: 智能運維

在Linux系統中,設置SFTP用戶權限通常涉及以下幾個步驟:

  1. 創建新用戶(如果需要):

    sudo adduser username
    
  2. 設置用戶密碼

    sudo passwd username
    
  3. 限制用戶的shell訪問: 為了安全起見,你可以將用戶的默認shell更改為/sbin/nologin/bin/false,這樣用戶就不能通過SSH登錄,只能使用SFTP。

    sudo usermod -s /sbin/nologin username
    
  4. 配置SSH和SFTP: 編輯/etc/ssh/sshd_config文件,確保以下配置存在并且沒有被注釋掉:

    Subsystem sftp internal-sftp
    

    這告訴SSH服務器使用內置的SFTP子系統。

  5. 創建一個組來管理SFTP用戶(可選): 創建一個專門用于SFTP用戶的組,并將SFTP用戶添加到這個組中。

    sudo groupadd sftpusers
    sudo usermod -aG sftpusers username
    
  6. 設置用戶的主目錄權限: 確保用戶的主目錄權限設置正確,以防止用戶訪問其他用戶的文件。

    sudo chown root:root /home/username
    sudo chmod 755 /home/username
    
  7. 限制用戶訪問特定目錄(可選): 如果你想限制SFTP用戶只能訪問特定的目錄,可以使用chroot jail。首先,確保用戶的主目錄及其所有父目錄的所有者和組都是root。

    sudo chown root:root /home/username
    sudo chmod 755 /home/username
    

    然后,在sshd_config文件中添加或修改以下配置:

    Match Group sftpusers
        ChrootDirectory %h
        ForceCommand internal-sftp
        AllowTcpForwarding no
        X11Forwarding no
    

    這會將屬于sftpusers組的用戶限制在他們自己的主目錄中。

  8. 重啟SSH服務: 使配置生效,重啟SSH服務。

    sudo systemctl restart sshd
    

通過以上步驟,你可以設置Linux系統中的SFTP用戶權限,確保用戶只能通過SFTP訪問文件,并且不能通過SSH登錄。

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