温馨提示×

Debian FTPServer如何建用户

小樊
46
2026-08-06 08:41:12
栏目: 智能运维

在 Debian 上搭建 FTPServer(FTP over SSL/TLS)创建用户,常见做法是使用 vsftpd + SSL/TLS。下面我按完整流程给你说明,包括:

  1. 安装 vsftpd
  2. 配置 FTPS(SSL/TLS)
  3. 创建 FTP 用户
  4. 设置目录权限
  5. 测试连接

一、安装 vsftpd

sudo apt update
sudo apt install vsftpd

二、配置 SSL/TLS(FTPS)

1️⃣ 生成 SSL 证书(自签)

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/vsftpd.key \
-out /etc/ssl/certs/vsftpd.crt

按提示填写信息即可。


2️⃣ 编辑 vsftpd 配置文件

sudo nano /etc/vsftpd.conf

✅ 最小可用 FTPS 配置(推荐)

listen=YES
listen_ipv6=NO

anonymous_enable=NO
local_enable=YES
write_enable=YES

chroot_local_user=YES
allow_writeable_chroot=YES

ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/vsftpd.crt
rsa_private_key_file=/etc/ssl/private/vsftpd.key
force_local_data_ssl=YES
force_local_logins_ssl=YES

pasv_min_port=40000
pasv_max_port=50000

3️⃣ 重启服务

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

三、创建 FTP 用户(重点)

✅ 方法一:系统用户(最常用)

1️⃣ 创建用户

sudo useradd -m ftpuser
sudo passwd ftpuser

2️⃣ 设置 FTP 根目录

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

⚠️ 注意:
chroot 要求 家目录不能被写
所以真正的上传目录是 ftp/


✅ 方法二:虚拟用户(更安全,进阶)

如果你需要 多个用户、无系统权限,可以用虚拟用户(基于 PAM + db)。
如果你需要我也可以单独给你写一份完整配置。


四、防火墙设置(如果有)

sudo ufw allow 21
sudo ufw allow 40000:50000/tcp

五、客户端连接方式

✅ 使用 FileZilla 测试

  • 协议:FTP over TLS (Explicit)
  • 主机:服务器 IP
  • 用户:ftpuser
  • 端口:21

六、常见问题

❌ 530 Login incorrect

  • 密码错误
  • PAM 限制
  • 用户被 nologin 限制

❌ vsftpd 登录后无法上传

  • 目录权限不对
  • write_enable=YES 未开启

七、总结

✅ Debian FTPServer 建用户核心步骤:

  1. 安装 vsftpd
  2. 开启 SSL/TLS
  3. 创建 Linux 用户
  4. 设置 不可写的 chroot 目录 + 可写子目录
  5. 使用 FTPS 客户端连接

如果你愿意,可以告诉我:

  • 公网服务器 还是 内网
  • 是否需要 虚拟用户
  • 是否要 只读 / 只写 / 多用户隔离

我可以帮你定制一份完整配置。

0