在CentOS上安全加固FTPS(FTP over SSL/TLS)服務器涉及多個步驟,包括配置防火墻、禁用不必要的服務、設置強密碼策略、啟用SSL/TLS加密等。以下是一個詳細的指南:
首先,確保你已經安裝了vsftpd。如果沒有安裝,可以使用以下命令進行安裝:
sudo yum install vsftpd
安裝完成后,編輯vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
:
sudo vi /etc/vsftpd/vsftpd.conf
在配置文件中,禁用匿名訪問:
anonymous_enable=NO
允許本地用戶登錄,并限制對文件系統的寫權限:
local_enable=YES
write_enable=YES
local_umask=022
SELinux可以幫助你限制FTP用戶對文件和目錄的訪問。你可以通過以下命令啟用SELinux:
sudo setenforce 1
或者編輯 /etc/selinux/config
文件,將其設置為 permissive
模式:
SELINUX=permissive
然后重啟系統使修改生效:
sudo reboot
使用 firewalld
配置防火墻,只允許必要的端口通過:
sudo firewall-cmd --zone=public --permanent --add-port=21/tcp
sudo firewall-cmd --zone=public --permanent --add-service=ftp
sudo firewall-cmd --reload
為了加密數據傳輸,建議使用SSL/TLS。你可以通過以下命令啟用FTPS:
sudo yum install mod_ssl
然后在vsftpd配置文件中添加以下行:
ssl_enable=YES
rsa_cert_file=/etc/pki/tls/certs/ca-bundle.crt
rsa_private_key_file=/etc/pki/tls/private/server-key.pem
創建一個FTP用戶并設置密碼:
sudo useradd -m ftpuser
sudo passwd ftpuser
使用FTP客戶端連接到服務器,測試是否可以成功登錄和進行文件傳輸。
定期更新系統和軟件包,以獲取最新的安全修復和功能更新:
sudo yum update
定期檢查FTP服務器的日志文件,如 /var/log/secure
,以識別和解決安全問題。