在CentOS系統上進行SFTP安全加固,可以采取以下幾種方法:
默認情況下,root用戶可以通過SFTP登錄。為了提高安全性,應該禁用root用戶的SFTP登錄??梢酝ㄟ^編輯/etc/ssh/sshd_config
文件來實現:
Match User root
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
然后重啟SSH服務:
systemctl restart sshd
創建一個專用的SFTP用戶,并限制其訪問權限。例如,創建用戶sftpuser
,并將其主目錄設置為/home/sftpuser
:
useradd -m -s /sbin/nologin sftpuser
passwd sftpuser
編輯/etc/ssh/sshd_config
文件,添加或修改以下內容:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
重啟SSH服務以應用更改:
systemctl restart sshd
SELinux可能會限制SFTP的功能??梢酝ㄟ^以下命令臨時禁用SELinux:
setenforce 0
或者修改/etc/selinux/config
文件,將SELINUX=enforcing
設置為SELINUX=disabled
,然后重啟系統。
確保只允許必要的端口通過防火墻。例如,只允許SSH(端口22)和SFTP(通常也是端口22)通過防火墻:
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=sftp
firewall-cmd --reload
通過配置chrootDirectory
,可以將用戶限制在其主目錄中,防止用戶訪問其他系統目錄。
禁用密碼認證,使用公鑰認證可以提高安全性。編輯/etc/ssh/sshd_config
文件,確保以下配置是啟用的:
PasswordAuthentication no
PubkeyAuthentication yes
然后重啟SSH服務。
定期更新系統和軟件包,以修補已知的安全漏洞。同時,監控SSH和SFTP服務的日志文件,以便及時發現并響應任何異?;顒?。
以上步驟可以幫助你增強CentOS系統上SFTP的安全性。在進行任何配置更改后,建議仔細檢查配置文件,并確保所有服務都已正確重啟,以使更改生效。