安裝VSFTPD
sudo apt update && sudo apt install vsftpd
創建系統用戶
sudo adduser ftpuser # 按提示設置密碼
sudo passwd ftpuser # 修改密碼(可選)
設置用戶主目錄權限
sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
編輯配置文件
sudo nano /etc/vsftpd.conf
local_enable=YES
:允許本地用戶登錄。write_enable=YES
:允許上傳文件。chroot_local_user=YES
:限制用戶僅能訪問主目錄。allow_writeable_chroot=YES
:允許chroot目錄可寫(需與chroot_local_user=YES
配合)。啟用用戶列表(可選)
sudo nano /etc/vsftpd.user_list
# 添加用戶名(每行一個)
ftpuser1
ftpuser2
/etc/vsftpd.conf
中啟用:userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO # 允許列表內用戶登錄
創建虛擬用戶數據庫
sudo touch /etc/vsftpd/virtusers
echo "virtuser1:password1" | sudo tee -a /etc/vsftpd/virtusers
sudo db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
sudo chmod 600 /etc/vsftpd/virtusers.db
配置虛擬用戶權限
/etc/vsftpd/user_conf/virtuser1
):local_root=/home/virtuser1
write_enable=YES
/etc/vsftpd.conf
中添加:guest_enable=YES
guest_username=ftpuser # 指定虛擬用戶宿主
user_config_dir=/etc/vsftpd/user_conf
sudo systemctl restart vsftpd
使用FTP客戶端(如FileZilla)連接測試,確保用戶名、密碼及權限配置正確。
anonymous_enable=NO
。/etc/vsftpd.conf
中添加:ssl_enable=YES
rsa_cert_file=/etc/ssl/private/vsftpd.pem
```。
參考來源: