温馨提示×

Ubuntu FTP如何配置匿名

小樊
35
2026-08-02 12:31:07
栏目: 智能运维

在 Ubuntu 上配置 匿名 FTP(Anonymous FTP),通常使用 vsftpd(Very Secure FTP Daemon),这是最常见、最安全的选择。下面给你一个从安装到可用的完整配置示例(适用于 Ubuntu 20.04 / 22.04 / 24.04)。


一、安装 vsftpd

sudo apt update
sudo apt install vsftpd -y

安装完成后,服务会自动启动。


二、备份原配置文件

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

三、配置匿名 FTP

编辑配置文件:

sudo nano /etc/vsftpd.conf

✅ 最小可用匿名配置(推荐)

# 启用匿名访问
anonymous_enable=YES

# 禁止本地用户登录(可选)
local_enable=NO

# 允许匿名用户上传(可选,慎用)
# anon_upload_enable=YES

# 允许匿名用户创建目录(可选)
# anon_mkdir_write_enable=YES

# 匿名用户根目录
anon_root=/srv/ftp

# 禁止匿名用户写操作(更安全)
write_enable=NO

# 允许下载
download_enable=YES

# 日志
xferlog_enable=YES

# 监听 IPv4
listen=YES
listen_ipv6=NO

⚠️ 注意

  • anon_root 是匿名用户登录后看到的目录
  • 默认 FTP 匿名用户是 ftp

四、创建匿名 FTP 目录

sudo mkdir -p /srv/ftp/pub
sudo chown nobody:nogroup /srv/ftp
sudo chmod 755 /srv/ftp

如果你启用了上传:

sudo mkdir /srv/ftp/upload
sudo chown ftp:nogroup /srv/ftp/upload
sudo chmod 733 /srv/ftp/upload

五、重启 vsftpd 服务

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

检查状态:

sudo systemctl status vsftpd

六、测试匿名 FTP

1️⃣ 本机测试

ftp localhost

登录时:

  • 用户名:anonymous
  • 密码:直接回车(或任意邮箱)

2️⃣ 浏览器访问

ftp://你的服务器IP

七、防火墙配置(如有 UFW)

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw reload

八、常见问题排查

❌ 530 Login incorrect

  • 确认 anonymous_enable=YES
  • 确认 /srv/ftp 权限正确
  • 确认没有启用 PAM 强制本地用户

❌ 无法上传

  • 确认 write_enable=YES
  • 确认 anon_upload_enable=YES
  • 确认目录属主是 ftp

九、安全建议(重要)

生产环境不建议开启匿名上传
✅ 匿名 FTP 应只允许只读
✅ 可结合 chrootTCP Wrappers 或防火墙限制来源 IP


十、总结一句话

Ubuntu 上开启匿名 FTP,核心是: 安装 vsftpd → 启用 anonymous_enable → 配置 anon_root → 重启服务


如果你需要:

  • 匿名 + 只读
  • 匿名 + 上传
  • 配合公网 / 云服务器
  • 和 Nginx / 文件服务器一起用

可以直接告诉我你的使用场景,我可以给你定制配置。

0