温馨提示×

centos ftpserver如何禁止匿名

小樊
39
2026-09-11 23:05:09
栏目: 智能运维

在 CentOS 上搭建的 FTP 服务器通常使用的是 vsftpd(Very Secure FTP Daemon)。要禁止匿名登录,可以按以下步骤操作:


一、修改 vsftpd 配置文件

  1. 编辑配置文件:
vi /etc/vsftpd/vsftpd.conf
  1. 找到或添加以下配置项,确保匿名被禁用:
anonymous_enable=NO

(如果前面有 #,去掉注释)

  1. 确保本地用户可登录(可选但常见):
local_enable=YES
write_enable=YES

二、重启 vsftpd 服务

systemctl restart vsftpd

设置开机自启(如未设置):

systemctl enable vsftpd

三、验证是否禁止匿名

使用 ftp 客户端测试:

ftp localhost

当提示输入用户名时,尝试使用 anonymousftp

  • 若返回 Login failed530 Permission denied,说明已成功禁止匿名。

四、补充:创建可用 FTP 用户(如需要)

useradd ftpuser
passwd ftpuser

如果用户不能登录,检查:

  • 用户是否被锁定
  • /etc/shells 是否包含该用户 shell
  • SELinux 是否开启(见下)

五、SELinux 相关(CentOS 常见坑)

如果 FTP 登录异常,可检查 SELinux:

getsebool -a | grep ftp

允许本地用户登录 FTP:

setsebool -P ftp_home_dir on

六、防火墙(如有)

确保 21 端口开放:

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

✅ 完成以上步骤后,CentOS 的 FTP 服务器就禁止了匿名访问,只能通过有效用户登录。

如果你用的是 ProFTPD / Pure-FTPd 或其他 FTP 服务,也可以告诉我,我可以给你对应配置方法。

0