在CentOS上配置SFTP(Secure File Transfer Protocol)時,采取一系列安全策略至關重要。SFTP通過SSH協議進行加密和驗證,提供比傳統FTP更高的安全性。以下是一些關鍵的安全配置步驟和策略:
創建SFTP用戶組:
創建一個專門用于SFTP用戶的組,例如 sftpusers
。
groupadd sftpusers
創建SFTP用戶:
創建一個新用戶,并將其添加到 sftpusers
組。例如,創建用戶 testuser
。
useradd -s /sbin/nologin -G sftpusers testuser
設置用戶目錄權限:
為SFTP用戶創建家目錄,并設置適當的權限。
mkdir /srv/sftp/testuser
chown root:sftp /srv/sftp/testuser
chmod 755 /srv/sftp/testuser
修改SSH配置文件:
編輯 /etc/ssh/sshd_config
文件,配置SFTP子系統以使用 internal-sftp
。
Subsystem sftp internal-sftp
Match Group sftpusers
ChrootDirectory /srv/sftp/%u
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
重啟SSH服務:
保存配置文件并重啟SSH服務以應用更改。
systemctl restart sshd
禁用root登錄:
禁止root用戶通過SSH登錄,以減少潛在的安全風險。
PermitRootLogin no
限制用戶訪問目錄:
使用 chrootDirectory
指令將用戶限制在其主目錄中,防止訪問其他系統目錄。
ChrootDirectory /srv/sftp/%u
啟用日志記錄:
配置SSH和SFTP日志記錄,以便監控和審計用戶活動。
編輯 /etc/ssh/sshd_config
,添加或修改以下行:
SyslogFacility AUTHPRIV
重啟SSH服務以應用更改。
禁用不必要的端口和服務:
關閉不必要的服務和端口,以減少攻擊面。
systemctl disable sshd_config
systemctl stop sshd_config
定期更新和打補丁:
保持系統和軟件包的更新,以修復已知的安全漏洞。
sudo yum update
使用強密碼策略:
為所有用戶設置復雜且唯一的密碼,并定期更換密碼。
監控和審計:
定期檢查系統日志和SFTP日志,以檢測異?;顒?。
通過上述配置,可以顯著提高CentOS上SFTP的安全性。確保遵循最佳實踐并定期審查和更新安全策略,以應對不斷變化的威脅環境。