安裝vsftpd
sudo apt-get install vsftpd
啟動vsftpd服務
sudo systemctl start vsftpd
設置開機後自動啟動vsftpd服務
sudo systemctl enable vsftpd
設定防火牆
允許port21 (ftp預設端口)
sudo ufw allow 21
同時允許被動模式端口
sudo ufw allow 10000:11000/tcp
reload防火牆使之生效(一般ubuntu會自動生效, 可不用reload)
sudo ufw reload/tcp
新增vsftp使用者,如”ftpuser”
sudo adduser ftpuser
授予sudo權限
sudo usermod -G sudo ftpuser
創建ftp根目錄,如”ftp”
sudo mkdir /home/ftpuser/ftp
設置ftp根目錄權限
sudo chmod a-w /home/ftpuser/ftp
更改vsftpd設定
先備份設置文件
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
直接移除原有設文件並重新創建,亦可以更改vsftpd.conf內容
sudo rm /etc/vsftpd.conf
sudo nano /etc/vsftpd.conf
vsftpd.conf內容如下
listen=NO listen_ipv6=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd pasv_enable=Yes pasv_min_port=10000 pasv_max_port=11000 user_sub_token=$USER local_root=/home/$USER/ftp userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO chmod_enable=YES
“local_root=”為以”ftpuser”登入時ftp上載/下載的根目錄
anonymous_enable=YES“時需設置”anon_root”(即非local user登入時的上載/下載根目錄
按Ctrl+X->Y->Enter儲存並退出
添加用戶列表
sudo nano /etc/vsftpd.userlist
加入”ftpuser”並儲存
重啟vsftpd服務
sudo systemctl restart vsftpd
查看vsftpd狀態
sudo systemctl status vsftpd
active: (running)即正常啟動