在CentOS系統中管理SFTP用戶主要包括創建用戶、設置用戶目錄和權限、以及配置SFTP服務器。以下是詳細的管理方法:
創建用戶組:
sudo groupadd sftp
創建用戶:
sudo useradd -g sftp -s /sbin/nologin username
這里-s /sbin/nologin
參數表示用戶不能通過SSH登錄到系統。
設置用戶密碼:
sudo passwd username
將用戶添加到sftp組(如果用戶已存在):
sudo usermod -aG sftp username
編輯SSH配置文件 /etc/ssh/sshd_config
:
sudo nano /etc/ssh/sshd_config
確保以下配置項已取消注釋(如果存在#
符號),或者如果不存在則添加它們:
Subsystem sftp internal-sftp
Match group sftp
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
這里Match group sftp
表示以上配置適用于屬于sftp
組的用戶,chrootDirectory %h
表示用戶的根目錄是用戶的家目錄。
重啟SSH服務以應用更改:
sudo systemctl restart sshd
創建SFTP Chroot Jail環境:
用戶將僅擁有SFTP訪問權限,SSH訪問權限將被禁用。
創建SFTP組并添加用戶到該組。
配置SSH以限制用戶僅訪問其家目錄。
chrootDirectory
時,確保該目錄及其所有上級目錄的所有者和組都是root,并且權限設置正確。chrootDirectory
設置的目錄權限及其所有的上級文件夾權限,只有屬主能擁有寫權限,權限最大設置只能是755。以上步驟可以幫助您在CentOS系統上配置和管理SFTP用戶,同時確保系統的安全性。