溫馨提示×

centos sftp權限怎么設置

小樊
44
2025-06-14 09:41:32
欄目: 智能運維

在CentOS系統中,設置SFTP(SSH File Transfer Protocol)權限通常涉及以下幾個方面:

  1. 用戶和組權限

    • 確保SFTP用戶屬于一個特定的組,例如sftp_users。
    • 使用usermod命令將用戶添加到該組:
      sudo usermod -aG sftp_users username
      
  2. 配置SSH服務器

    • 編輯SSH配置文件/etc/ssh/sshd_config。
    • 確保有以下配置項,并根據需要進行調整:
      Subsystem sftp internal-sftp
      Match Group sftp_users
          ChrootDirectory %h
          ForceCommand internal-sftp
          AllowTcpForwarding no
          X11Forwarding no
      
    • ChrootDirectory %h將用戶的根目錄限制在其主目錄中。
    • ForceCommand internal-sftp強制使用SFTP而不是SSH shell。
    • AllowTcpForwarding noX11Forwarding no禁用了TCP和X11轉發,以提高安全性。
  3. 設置目錄權限

    • 確保用戶的根目錄及其子目錄的權限設置正確。
    • 使用chmodchown命令設置權限:
      sudo chown root:root /home/username
      sudo chmod 755 /home/username
      sudo chown username:sftp_users /home/username/upload
      sudo chmod 755 /home/username/upload
      sudo chmod 700 /home/username/upload/*
      
    • 這里,/home/username是用戶的根目錄,/home/username/upload是用戶可以上傳文件的目錄。
  4. SELinux配置(如果啟用):

    • 如果系統啟用了SELinux,可能需要調整相關策略以允許SFTP訪問。
    • 使用setsebool命令啟用必要的布爾值:
      sudo setsebool -P sftp_home_dir on
      
  5. 重啟SSH服務

    • 保存并關閉sshd_config文件后,重啟SSH服務以應用更改:
      sudo systemctl restart sshd
      

通過以上步驟,你可以設置CentOS系統上的SFTP權限,確保用戶只能通過SFTP訪問其主目錄及其子目錄,并且不能執行其他命令或訪問其他用戶的文件。

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