温馨提示×

centos vsftp如何安装

小樊
65
2026-09-29 22:03:02
栏目: 智能运维

下面以 CentOS 7 / CentOS 8 / Stream 为例,说明 vsftpd(Very Secure FTP Daemon) 的安装与基本配置。


一、安装 vsftpd

1. 更新系统(可选)

yum update -y

2. 安装 vsftpd

yum install vsftpd -y

二、启动与开机自启

systemctl start vsftpd
systemctl enable vsftpd

查看状态:

systemctl status vsftpd

三、防火墙设置(非常重要)

1. 开放 FTP 端口

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

如果是 被动模式(推荐),还需放行被动端口范围(见后面配置)。


四、SELinux 配置(CentOS 默认开启)

setsebool -P ftp_home_dir on
setsebool -P allow_ftpd_full_access on

五、基本配置(/etc/vsftpd/vsftpd.conf)

编辑配置文件:

vi /etc/vsftpd/vsftpd.conf

常用基础配置

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES

pasv_min_port=30000
pasv_max_port=31000

重启服务:

systemctl restart vsftpd

六、创建 FTP 用户

useradd ftpuser
passwd ftpuser

限制用户只能 FTP(不能登录系统,可选):

usermod -s /sbin/nologin ftpuser

设置家目录权限:

chown -R ftpuser:ftpuser /home/ftpuser

七、被动模式防火墙补充

如果使用了 pasv_min_port,需放行:

firewall-cmd --permanent --add-port=30000-31000/tcp
firewall-cmd --reload

八、测试 FTP

本地测试

ftp localhost

或客户端工具

  • FileZilla
  • WinSCP
  • lftp

九、常见问题

  1. 无法连接

    • 检查防火墙
    • 检查 SELinux
    • 检查 vsftpd 是否运行
  2. 530 Login incorrect

    • 用户被禁止登录(/etc/vsftpd/user_list / ftpusers)
  3. 上传失败

    • 检查 write_enable=YES
    • 检查目录权限

如果你需要:

  • ✅ 匿名 FTP
  • ✅ 虚拟用户
  • ✅ SSL/TLS 加密 FTP
  • ✅ CentOS 6 版本

可以继续告诉我你的具体需求。

0 踩