本文详细介绍在CentOS 7.6系统上搭建vsftpd服务器,实现双用户权限(匿名用户和本地用户)并配置被动模式。无论你是初学者还是有一定经验的运维人员,都可以按照本教程一步步完成FTP服务器的搭建。
确保你的CentOS 7.6系统可以正常联网,并且具备sudo权限。关闭防火墙或开放相应端口,SELinux可能也需要调整。本教程假设使用最小化安装的CentOS 7.6。
使用yum安装vsftpd:
sudo yum install -y vsftpd 安装完成后,可以查看版本确认:vsftpd -version
编辑主配置文件:
sudo vi /etc/vsftpd/vsftpd.conf 以下为关键配置项,请根据实际情况修改:
# 基本设置anonymous_enable=YES # 允许匿名用户local_enable=YES # 允许本地用户write_enable=YES # 允许写入(本地用户)local_umask=022 # 本地用户上传文件权限掩码anon_upload_enable=YES # 允许匿名用户上传(可选)anon_mkdir_write_enable=YES # 允许匿名用户创建目录anon_umask=022 # 匿名用户上传文件权限掩码# 双用户权限控制:通过chroot限制用户在家目录chroot_local_user=YES # 所有本地用户被限制在其家目录allow_writeable_chroot=YES # 允许chroot后可写(避免500错误)# 被动模式配置pasv_enable=YESpasv_min_port=30000pasv_max_port=31000pasv_address=你的公网IP或域名 # 如果服务器有公网IP,填写公网IP,否则可注释pasv_addr_resolve=YES # 如果pasv_address是域名,启用此选项 注意:双用户权限的实现依赖于同时启用匿名和本地用户,并分别设置权限。匿名用户默认访问/var/ftp目录,本地用户访问自己的家目录。如果需要匿名用户上传,需要修改/var/ftp权限或设置anon_root指向其他目录。
被动模式配置中,指定的端口范围需要在防火墙中开放。如果服务器位于NAT后面,需要正确设置pasv_address为公网IP,并确保网络设备允许这些端口转发。
开放FTP服务和被动端口范围:
sudo firewall-cmd --permanent --add-service=ftpsudo firewall-cmd --permanent --add-port=30000-31000/tcpsudo firewall-cmd --reload 如果SELinux开启,需要允许FTP相关布尔值:
sudo setsebool -P ftpd_full_access on 或者根据需求只开启必要项。
创建一个本地用户用于测试:
sudo useradd ftpusersudo passwd ftpuser 为匿名用户准备上传目录(如果启用匿名上传):
sudo mkdir /var/ftp/uploadsudo chown ftp:ftp /var/ftp/upload # 确保匿名用户可写,匿名用户映射为ftp用户 sudo systemctl start vsftpdsudo systemctl enable vsftpdsudo systemctl status vsftpd 使用FTP客户端(如FileZilla)或命令行ftp测试:
ftp 你的服务器IP 分别使用匿名用户(用户名anonymous,密码任意或邮箱)和本地用户(ftpuser)登录,验证权限和被动模式是否正常工作。
allow_writeable_chroot=YES解决。/var/ftp/upload目录权限正确,且anon_upload_enable=YES。通过以上步骤,你应该成功在CentOS 7.6上搭建了支持双用户权限和被动模式的vsftpd服务器。本教程覆盖了关键配置,希望能帮助你快速部署FTP服务。
—— 完 ——
本文由主机测评网于2026-02-28发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20260227756.html