温馨提示×

ubuntu怎装vsftp

小樊
42
2026-08-11 21:33:43
栏目: 智能运维

Ubuntu 上安装并配置 vsftpd(Very Secure FTP Daemon) 的常见步骤如下(适用于 Ubuntu 20.04 / 22.04 / 24.04):


一、安装 vsftpd

sudo apt update
sudo apt install vsftpd

安装完成后,vsftpd 会自动作为服务运行。


二、启动并设置开机自启

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

查看状态:

sudo systemctl status vsftpd

三、备份并编辑配置文件

配置文件路径:

/etc/vsftpd.conf

先备份:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

编辑配置:

sudo nano /etc/vsftpd.conf

四、常用基础配置(推荐)

1️⃣ 允许本地用户登录

local_enable=YES
write_enable=YES

2️⃣ 禁止匿名登录(推荐)

anonymous_enable=NO

3️⃣ 限制用户只能访问自己的家目录(重要)

chroot_local_user=YES
allow_writeable_chroot=YES

⚠️ 如果不加 allow_writeable_chroot=YES,可能会登录失败。


4️⃣ 被动模式(云服务器必开)

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

并在防火墙放行这些端口。


五、创建 FTP 用户(可选)

sudo useradd -m ftpuser
sudo passwd ftpuser

限制只能通过 FTP 登录(不能 SSH):

sudo usermod -s /usr/sbin/nologin ftpuser

六、重启 vsftpd

sudo systemctl restart vsftpd

七、防火墙设置

如果用的是 UFW:

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 30000:31000/tcp
sudo ufw reload

八、测试 FTP

在另一台机器:

ftp 服务器IP

或使用工具:

  • FileZilla
  • WinSCP

九、常见问题

❌ 530 Login incorrect

  • 用户名/密码错误
  • 用户被禁止登录(检查 /etc/shells

❌ 无法连接

  • 云服务器安全组未放行 21 端口
  • 被动端口未放行

如果你告诉我:

  • Ubuntu 版本
  • 本地 / 云服务器
  • 是否要匿名访问
  • 是否要 chroot

我可以给你一份 完全定制的 vsftpd 配置

0