温馨提示×

debian ftpserver怎么改路径

小樊
43
2026-09-25 02:26:37
栏目: 智能运维

在 Debian 上“改 FTP 路径”通常指 修改 FTP 用户登录后的根目录(家目录),或者 修改 FTP 服务的共享根路径。下面按常见 FTP 服务分别说明。


一、先确认你用的是哪种 FTP 服务

dpkg -l | grep -E "vsftpd|proftpd|pure-ftpd"

常见有:

  • vsftpd(最常见)
  • proftpd
  • pure-ftpd

二、vsftpd(最常见)

1️⃣ 修改某个用户的 FTP 根目录

FTP 用户通常是系统用户,直接改家目录即可:

usermod -d /new/path username

例如:

usermod -d /data/ftp user1

然后确保目录权限正确:

chown user1:user1 /data/ftp
chmod 755 /data/ftp

⚠️ 如果开了 chroot_local_user=YES,用户不能写自己根目录


2️⃣ 允许写入根目录(可选)

编辑:

nano /etc/vsftpd.conf

确保:

chroot_local_user=YES
allow_writeable_chroot=YES

重启:

systemctl restart vsftpd

3️⃣ 匿名用户路径

匿名用户默认在:

/srv/ftp

修改:

anon_root=/new/path

三、ProFTPD

修改用户目录

usermod -d /new/path username

或编辑:

/etc/passwd

或修改全局根

nano /etc/proftpd/proftpd.conf
DefaultRoot /data/ftp

重启:

systemctl restart proftpd

四、Pure-FTPd

改用户目录

usermod -d /new/path username

或 pure-ftpd 虚拟用户:

pure-pw usermod user1 -d /new/path
pure-pw mkdb

五、虚拟用户(常见于 vsftpd)

如果是虚拟用户(guest_enable=YES):

local_root=/data/ftp/$USER

或统一:

local_root=/data/ftp

六、常见坑

✅ 目录必须存在
✅ 属主正确
✅ 不要对 chroot 根目录有写权限(除非允许)
✅ SELinux(Debian 默认无)


如果你能告诉我:

  • 用的 哪个 FTP 服务
  • 是 系统用户还是虚拟用户
  • 想改 哪个用户 / 匿名 / 全局

我可以直接给你一份精确配置。

0 踩