1. 更新系統包列表
在安裝任何軟件前,建議先更新系統包列表以確保獲取最新版本:
sudo apt update && sudo apt upgrade -y
2. 安裝vsftpd(Very Secure FTP Daemon)
vsftpd是Debian系統下常用的安全FTP服務器軟件,通過以下命令安裝:
sudo apt install vsftpd -y
3. 配置vsftpd
安裝完成后,需編輯vsftpd的主配置文件/etc/vsftpd.conf以調整安全及功能設置:
sudo nano /etc/vsftpd.conf
關鍵配置項說明(需根據需求調整):
anonymous_enable=NO(禁止匿名用戶登錄,避免未授權訪問);local_enable=YES(允許本地系統用戶登錄);write_enable=YES(允許用戶上傳文件)。chroot_local_user=YES(將本地用戶限制在其主目錄中,防止訪問系統其他目錄);allow_writeable_chroot=YES(允許chroot目錄可寫,解決部分系統下用戶無法上傳文件的問題)。pasv_enable=YES(啟用被動模式,解決主動模式下的防火墻連接問題);pasv_min_port=40000(設置被動模式最小端口);pasv_max_port=50000(設置被動模式最大端口,需與防火墻規則匹配)。Ctrl+X→Y→Enter保存并退出編輯器。4. 重啟vsftpd服務
配置生效后,重啟服務以應用更改:
sudo systemctl restart vsftpd
若需設置開機自啟,可執行:
sudo systemctl enable vsftpd
5. 配置防火墻(若啟用)
若系統啟用了ufw防火墻,需允許FTP流量及被動模式端口范圍:
sudo ufw allow 21/tcp # FTP控制端口(默認21)
sudo ufw allow 40000:50000/tcp # 被動模式端口范圍(根據配置調整)
sudo ufw enable # 啟用防火墻(若未啟用)
6. 創建FTP用戶及目錄
創建專門用于FTP訪問的系統用戶,并設置其家目錄權限:
sudo adduser ftpuser # 創建用戶(按提示設置密碼)
sudo mkdir -p /home/ftpuser/upload # 創建上傳目錄(可選)
sudo chown ftpuser:ftpuser /home/ftpuser/upload # 設置目錄所有者
sudo chmod 755 /home/ftpuser # 設置家目錄權限(755為常用權限)
7. 測試FTP連接
使用FTP客戶端(如FileZilla)或命令行工具測試連接:
ftp localhost
輸入創建的FTP用戶名(如ftpuser)和密碼,若能成功登錄則表示配置正確。8. 可選:配置SSL/TLS加密(提升安全性)
為避免FTP數據明文傳輸,建議配置SSL/TLS加密:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
/etc/vsftpd.conf中添加以下內容:ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
sudo systemctl restart vsftpd
此時,FTP連接將通過SSL/TLS加密,提升數據傳輸安全性。