温馨提示×

Linux FTPServer怎么添加用户

小樊
44
2026-08-16 21:58:26
栏目: 智能运维

在 Linux 上添加 FTPServer 用户,常见做法取决于你使用的 FTP 服务软件。最常用的是 vsftpd,下面以它为主说明,同时补充 pure-ftpd 的做法。


一、使用 vsftpd 添加 FTP 用户(最常见)

1️⃣ 安装 vsftpd

# Ubuntu / Debian
sudo apt update
sudo apt install vsftpd

# CentOS / Rocky / Alma
sudo yum install vsftpd

2️⃣ 创建 FTP 用户(系统用户)

方式一:允许登录系统(简单)

sudo useradd -m ftpuser
sudo passwd ftpuser

测试登录:

ftp localhost

方式二:禁止 SSH 登录(更安全 ✅)

sudo useradd -m -s /sbin/nologin ftpuser
sudo passwd ftpuser

如果 /sbin/nologin 不在 shell 列表:

sudo echo "/sbin/nologin" >> /etc/shells

3️⃣ 设置 FTP 目录权限

sudo mkdir -p /home/ftpuser/ftp
sudo chown ftpuser:ftpuser /home/ftpuser/ftp
sudo chmod 755 /home/ftpuser

4️⃣ 配置 vsftpd(重要)

编辑配置文件:

sudo vim /etc/vsftpd.conf

推荐配置:

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

重启服务:

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

5️⃣ 防火墙放行 FTP

# Ubuntu
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp

# CentOS
sudo firewall-cmd --add-port=21/tcp --permanent
sudo firewall-cmd --reload

二、pure-ftpd 添加用户(虚拟用户,推荐用于多用户)

1️⃣ 安装 pure-ftpd

sudo apt install pure-ftpd

2️⃣ 创建虚拟 FTP 用户

sudo pure-pw useradd ftpuser -u www-data -d /home/ftpuser
sudo pure-pw mkdb

3️⃣ 启用虚拟用户认证

sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
sudo systemctl restart pure-ftpd

三、常见问题排查

✅ 登录失败

sudo tail -f /var/log/vsftpd.log

✅ SELinux 影响(CentOS)

setsebool -P ftp_home_dir on

四、推荐做法(生产环境)

✅ 使用 虚拟用户
✅ 禁止 SSH 登录
✅ 开启 FTPS(TLS)
✅ 限制目录(chroot)


如果你能告诉我:

  • 使用的 Linux 发行版
  • FTP 软件(vsftpd / pure-ftpd / proftpd)
  • 是否需要加密(FTPS)

我可以给你一份完全定制的配置方案

0