配置CentOS上的FTP服務器,可以使用vsftpd(Very Secure FTP Daemon)這個非常流行且安全的FTP服務器軟件。以下是詳細的配置步驟:
首先,確保你的系統是最新的,然后安裝vsftpd。
sudo yum update -y
sudo yum install vsftpd -y
vsftpd的主要配置文件位于/etc/vsftpd/vsftpd.conf。你可以使用文本編輯器打開并編輯這個文件。
sudo nano /etc/vsftpd/vsftpd.conf
以下是一些基本配置項:
anonymous_enable=YES: 允許匿名用戶登錄(不推薦用于生產環境)。local_enable=YES: 允許本地用戶登錄。write_enable=YES: 允許用戶寫入文件。chroot_local_user=YES: 將本地用戶鎖定在他們的主目錄中。allow_writeable_chroot=YES: 允許chroot目錄可寫(用于調試,不推薦在生產環境中使用)。anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=NO
listen=21: FTP默認端口是21。ftpd_banner: 自定義FTP歡迎信息。pam_service_name=vsftpd: 使用PAM進行身份驗證。userlist_enable=YES: 啟用用戶列表文件進行身份驗證。userlist_file=/etc/vsftpd/userlist: 用戶列表文件路徑。userlist_deny=NO: 允許用戶列表中的用戶登錄。listen=21
ftpd_banner=$歡迎信息
pam_service_name=vsftpd
userlist_enable=YES
userlist_file=/etc/vsftpd/userlist
userlist_deny=NO
local_umask: 本地用戶上傳文件的默認umask值。file_open_mode: 新文件創建時的權限。dirmessage_enable=YES: 顯示目錄消息。transferlog_enable=YES: 記錄傳輸日志。local_umask=022
file_open_mode=0664
dirmessage_enable=YES
transferlog_enable=YES
如果你啟用了用戶列表,需要創建一個用戶列表文件。
sudo touch /etc/vsftpd/userlist
sudo chmod 644 /etc/vsftpd/userlist
sudo nano /etc/vsftpd/userlist
在文件中添加允許登錄的用戶名,每行一個。
user1
user2
保存配置文件后,重啟vsftpd服務以應用更改。
sudo systemctl restart vsftpd
確保防火墻允許FTP流量。
sudo firewall-cmd --permanent --add-service=ftp
sudo firewall-cmd --reload
你可以使用ftp命令行工具或任何FTP客戶端(如FileZilla)來測試你的FTP服務器。
ftp localhost
輸入本地用戶名和密碼進行登錄。
以上步驟涵蓋了在CentOS上配置vsftpd的基本過程。根據你的具體需求,你可能需要進一步調整配置文件中的設置。確保在生產環境中關閉匿名訪問,并使用強密碼策略。