Ubuntu 20.04上[安装FTP服务器]
使用以下apt
命令安装vsftpd软件包:
sudo apt update
sudo apt upgrade
sudo apt install vsftpd
在Ubuntu系统上配置FTP服务器配置文件
vim /etc/vsftpd.conf
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
pasv_enable=Yes
write_enable=YES
pasv_min_port=10000
pasv_max_port=10100
allow_writeable_chroot=YES
# 允许匿名访问:anonymous_enable=YES
# 不允许本地用户,如root用户登陆。默认允许:local_enable=NO
#设置本地用户登录所在的目录。默认配置文件中没有该配置项,本地用户登录FTP服务器后所在的目录为所登录用户的主目录,如:对于root用户,则为/root目录
# local_root=/home/ftpuser
# 本地用户上传文件权限:local_umask=022
# 匿名用户上传文件权限:anon_umask=022
# 允许写入操作,否则不能上传文件:write_enable=YES
# 允许匿名用户上传文件,需要配合:write_enable=yes
anon_upload_enable=YES
# 控制匿名用户对文件和文件夹的删除和重命名(自己添加,没有该配置)
anon_other_write_enable=YES
# 允许匿名用户创建目录
anon_mkdir_write_enable=YES
# ftp工具连接成功提示
ftpd_banner=Welcome to blah FTP service.
# 所有用户均不能切换到上级目录:chroot_local_user=YES
# 是否启动限制用户的名单。YES为启用,NO禁用。默认禁用
chroot_list_enable=NO
# /etc/vsftpd/user_list文件不生效
userlist_enable=NO
#坑,添加以下配置。不添加此项,文件无法上传。报错:550 Permission denied
allow_writeable_chroot=YES
#匿名用户的根目录。这个非常重要
anon_root=/usr/local/ftpdir
#匿名用户不要密码就靠这个
no_anon_password=YES
# 匿名登录后的使用者
ftp_username=ftpuser
保存配置文件后,启动vsftpd并加入开机自启
sudo systemctl start vsftpd && sudo systemctl enable vsftpd
配置防火墙。如果尚未这样做,建议您ufw
为Ubuntu 20.04启用防火墙。
sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
创建ftp用户
$ sudo useradd -m xiaoqiang
$ sudo passwd xiaoqiang
使用命令行连接到FTP服务器
$ ftp 127.0.0.1
#或者 ftp 你的电脑IP地址