李守中

FTP 笔记

Table of Contents

1 配置

sudo dnf install vsftpd 安装 FTP 服务端。

sudo systemctl enable --now vsftpd 开机启动。

编辑 /etc/vsftpd/vsftpd.conf 进行配置:

# 关闭匿名用户登录
anonymous_enable=NO
# 生成目录默认777,文件默认666,尽量保持默认
#local_umask=000
# 不阻止用户访问上级目录
chroot_local_user=YES
# 不阻止用户访问上级目录
chroot_list_enable=YES
# 允许 chroot 用户具备写权限
allow_writeable_chroot=YES

启用 chroot_local_user ,就需要创建 /etc/vsftpd/chroot_list 文件:

# 填入用户,如 user1。
user1
# 如果不填 user1,那么 user1 登录后直接访问到的目录是 /home/ftp,并且不能访问上一级
# 如果填了 user1,那么 user1 可以访问上一级
# 不管填不填,都要有这个文件

通过搭配能实现以下几种效果:

  • chroot_list_enable=YES chroot_local_user=YES: /etc/vsftpd/chroot_list 文件中列出的用户,可以切到其他目录;未在文件中列出的用户,不能切到其他目录。
  • chroot_list_enable=YES chroot_local_user=NO: /etc/vsftpd.chroot_list 文件中列出的用户,不能切到其他目录;未在文件中列出的用户,可以切到其他目录。
  • chroot_list_enable=NO chroot_local_user=YES: 所有的用户不能切到其他目录。
  • chroot_list_enable=NO chroot_local_user=NO: 所有的用户可以切到其他目录。

配置好后重新启动 sudo systemctl restart vsftpd



Last Update: 2022-04-24 Sun 09:41

Contact: [email protected]     Generated by: Emacs 27.1 (Org mode 9.3)

若正文中无特殊说明,本站内容遵循: 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议