温馨提示×

centos ftpserver怎么修改根目录

小樊
49
2026-09-24 07:24:13
栏目: 智能运维

在 CentOS 上修改 FTP 服务器根目录,取决于你用的是哪种 FTP 服务。最常见的是 vsftpd,下面以 vsftpd 为例说明(如果是 Pure-FTPd / ProFTPD 也可以告诉我)。


一、vsftpd 修改 FTP 根目录(常见场景)

1️⃣ 修改匿名用户根目录(anonymous)

匿名用户默认根目录是 /var/ftp

编辑配置文件:

vi /etc/vsftpd/vsftpd.conf

修改或添加:

anon_root=/data/ftp

创建目录并授权:

mkdir -p /data/ftp
chown ftp:ftp /data/ftp
chmod 755 /data/ftp

2️⃣ 修改本地用户 FTP 根目录(推荐用 chroot)

例如用户 ftpuser

方法一:统一设置所有本地用户根目录

local_root=/data/ftp
chroot_local_user=YES
allow_writeable_chroot=YES

方法二:给指定用户单独设置(更灵活)

编辑用户配置目录:

vi /etc/vsftpd/vsftpd.conf

确保有:

user_config_dir=/etc/vsftpd/user_conf

创建用户配置:

mkdir -p /etc/vsftpd/user_conf
vi /etc/vsftpd/user_conf/ftpuser

写入:

local_root=/data/ftp/ftpuser

创建目录:

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

3️⃣ SELinux 必须处理(CentOS 常见坑)

否则会连不上或看不到目录:

setsebool -P ftp_home_dir on
semanage fcontext -a -t public_content_t "/data/ftp(/.*)?"
restorecon -Rv /data/ftp

4️⃣ 重启 vsftpd

systemctl restart vsftpd
systemctl enable vsftpd

二、验证

ftp localhost

或用 FileZilla 测试。


三、如果你用的是别的 FTP 服务

  • Pure-FTPd
  • ProFTPD

告诉我你用的版本,我可以给你对应配置。


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

  1. CentOS 版本(7 / 8 / Stream)
  2. 使用的是 vsftpd 还是其他
  3. 是匿名用户还是本地用户

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

0 踩