温馨提示×

centos ftpserver怎样加用户

小樊
55
2026-09-27 05:03:56
栏目: 智能运维

在 CentOS 上搭建 FTP 服务器(常用 vsftpd),“加用户”通常有两种做法:

  1. 系统用户(本地用户)登录 FTP
  2. 虚拟用户(推荐,更安全)登录 FTP

下面分别说明。


一、使用系统用户(最简单)

1. 安装 vsftpd

yum install -y vsftpd
systemctl enable vsftpd
systemctl start vsftpd

2. 创建 FTP 用户

useradd -m ftpuser
passwd ftpuser

3. 设置 FTP 目录(可选)

mkdir -p /home/ftpuser/ftp
chown ftpuser:ftpuser /home/ftpuser/ftp

4. 修改 vsftpd 配置

编辑 /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES

5. 重启服务

systemctl restart vsftpd

✅ 用 ftpuser 和密码即可登录 FTP


二、使用虚拟用户(推荐用于生产环境)

1. 安装依赖

yum install -y vsftpd pam* db4*

2. 创建虚拟用户文件

vim /etc/vsftpd/vusers.txt

内容:

user1
password1
user2
password2

3. 生成用户数据库

db_load -T -t hash -f /etc/vsftpd/vusers.txt /etc/vsftpd/vusers.db
chmod 600 /etc/vsftpd/vusers.db

4. 配置 PAM

vim /etc/pam.d/vsftpd

清空后写入:

auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers

5. 创建系统映射用户

useradd -d /data/ftp -s /sbin/nologin vftp
mkdir -p /data/ftp/user1
chown -R vftp:vftp /data/ftp

6. 修改 vsftpd 配置

anonymous_enable=NO
local_enable=YES
write_enable=YES
guest_enable=YES
guest_username=vftp
virtual_use_local_privs=YES
chroot_local_user=YES
allow_writeable_chroot=YES

7. 重启 vsftpd

systemctl restart vsftpd

✅ 用 user1 / password1 登录 FTP


三、防火墙 & SELinux(常见坑)

防火墙

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

SELinux

setsebool -P ftpd_full_access on

如果你告诉我:

  • 用的是 CentOS 几
  • 用的是 vsftpd 还是 proftpd / pure-ftpd
  • 是 内网还是公网
  • 是否需要 只读 / 上传权限

我可以直接给你一套完整配置。

0 踩