温馨提示×

linux ftpserver怎么设置匿名

小樊
53
2026-10-14 01:28:19
栏目: 智能运维

在 Linux 上搭建 FTP 服务器并开启匿名访问,常用的是 vsftpd(Very Secure FTP Daemon)。下面以 vsftpd 为例说明。


一、安装 vsftpd

CentOS / Rocky / Alma

yum install -y vsftpd

Ubuntu / Debian

apt update
apt install -y vsftpd

二、修改 vsftpd 配置(开启匿名)

编辑配置文件:

vim /etc/vsftpd/vsftpd.conf

(Ubuntu 路径也是 /etc/vsftpd.conf)

关键配置项

# 允许匿名登录
anonymous_enable=YES

# 匿名用户根目录(默认即可)
anon_root=/var/ftp

# 是否允许匿名上传(按需)
anon_upload_enable=YES

# 是否允许匿名创建目录(按需)
anon_mkdir_write_enable=YES

# 建议关闭本地用户登录(可选)
local_enable=NO

# 写权限总开关
write_enable=YES

⚠️ 如果只让下载,不开启 anon_upload_enable


三、设置匿名目录权限

默认匿名目录一般是 /var/ftp

chown root:root /var/ftp
chmod 755 /var/ftp

如果要匿名上传,建子目录:

mkdir /var/ftp/pub
chown ftp:ftp /var/ftp/pub
chmod 777 /var/ftp/pub

四、启动 vsftpd

systemctl enable vsftpd
systemctl start vsftpd

查看状态:

systemctl status vsftpd

五、防火墙 & SELinux

防火墙

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

SELinux(CentOS)

setsebool -P ftpd_anon_write on
setsebool -P allow_ftpd_anon_write on

六、测试匿名登录

ftp localhost

或

ftp ftp://localhost

用户名:

anonymous

密码:直接回车(或任意邮箱)


七、常见坑

✅ 匿名用户不能写 /var/ftp 根目录
✅ 只能写有写权限的子目录
✅ passive 模式需放行端口范围(云服务器特别注意)


如果你用的是 ProFTPD / Pure-FTPd,或者想限制匿名只读 / 限速 / 限制 IP,也可以告诉我。

0 踩