在安装vsFTP前,建议先更新Ubuntu的系统软件包列表及已安装的软件,确保后续安装过程顺利。
sudo apt update && sudo apt upgrade -y
使用Ubuntu的APT包管理器安装vsftpd(Very Secure FTP Daemon),-y参数表示自动确认安装过程中的提示。
sudo apt install vsftpd -y
vsftpd的主配置文件位于/etc/vsftpd.conf,需根据需求修改以下关键参数(建议先备份原配置文件):
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak  # 备份原配置
sudo nano /etc/vsftpd.conf                    # 编辑配置文件
常见配置项说明(取消注释或修改为以下值):
anonymous_enable=NO:禁用匿名访问(提升安全性);local_enable=YES:允许本地系统用户登录FTP;write_enable=YES:允许本地用户上传文件;chroot_local_user=YES:将用户限制在自己的主目录(防止访问系统其他目录);allow_writeable_chroot=YES:允许用户主目录可写(若启用chroot_local_user,需开启此选项,但需注意安全隐患,建议为用户创建单独的FTP目录并设置权限)。可选:配置用户隔离目录(更安全的做法)
若需将用户限制在特定子目录(而非整个主目录),可取消以下配置并创建对应目录:
# 取消注释或添加以下行
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
然后编辑/etc/vsftpd.chroot_list,添加允许隔离的用户名(每行一个)。
安装完成后,启动vsftpd服务并设置为系统开机自动启动:
sudo systemctl start vsftpd    # 启动服务
sudo systemctl enable vsftpd   # 设置开机自启
可通过以下命令检查服务状态,确认是否运行正常:
sudo systemctl status vsftpd
若系统启用了UFW防火墙,需开放FTP服务所需的端口(默认21端口用于控制连接,20端口用于数据传输):
sudo ufw allow 20/tcp          # 允许FTP数据端口
sudo ufw allow 21/tcp          # 允许FTP控制端口
sudo ufw reload                # 重新加载防火墙规则
使用FTP客户端(如FileZilla、WinSCP或命令行工具ftp)连接服务器,验证配置是否生效:
注意事项:
sudo adduser ftpuser);/var/log/vsftpd.log日志文件排查错误。