在CentOS系統上配置SFTP(Secure File Transfer Protocol)的最佳實踐包括以下幾個方面:
安裝和配置OpenSSH:
確保系統已安裝OpenSSH軟件包:
sudo yum install openssh-server
編輯/etc/ssh/sshd_config
文件,配置SFTP子系統:
Subsystem sftp internal-sftp
禁用root用戶登錄:
PermitRootLogin no
限制特定用戶訪問特定目錄:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
創建SFTP用戶和用戶組:
創建用戶組:
sudo groupadd sftp_users
創建SFTP用戶并添加到用戶組:
sudo useradd -m -G sftp_users -s /sbin/nologin sftpuser
設置用戶密碼:
sudo passwd sftpuser
設置SFTP用戶目錄權限:
創建用戶主目錄并設置權限:
sudo mkdir /home/sftpuser
sudo chown root:sftp_users /home/sftpuser
sudo chmod 755 /home/sftpuser
為用戶創建上傳目錄并設置權限:
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftp_users /home/sftpuser/upload
sudo chmod 755 /home/sftpuser/upload
配置SELinux和防火墻:
禁用SELinux(如果需要):
sudo setenforce 0
關閉防火墻(如果需要):
sudo systemctl stop firewalld
sudo systemctl disable firewalld
重啟SSH服務:
sudo systemctl restart sshd
測試SFTP連接: