Debian下vsftp权限管理

Debian下vsFTP权限管理主要涉及用户、目录、配置文件及服务设置,具体如下:

  1. 用户管理

    • 创建专用FTP用户(如ftpuser)并设置密码:
      sudo adduser ftpuser
    • 限制用户主目录权限(通常为755):
      sudo chown ftpuser:ftpuser /home/ftpuser
      sudo chmod 755 /home/ftpuser
  2. 配置文件设置(/etc/vsftpd.conf)

    • 基础权限
      • 启用本地用户登录:local_enable=YES
      • 允许写操作(上传/删除):write_enable=YES
      • 禁止匿名访问(可选):anonymous_enable=NO
    • 安全限制
      • 限制用户至主目录(chroot):chroot_local_user=YES
        allow_writeable_chroot=YES
      • 通过用户列表控制访问(白名单):
        userlist_enable=YES
        userlist_file=/etc/vsftpd.userlist
        userlist_deny=NO
  3. 目录权限

    • 上传目录需单独设置写权限(若允许上传):
      sudo mkdir /home/ftpuser/uploads
      sudo chown ftpuser:ftpuser /home/ftpuser/uploads
      sudo chmod 775 /home/ftpuser/uploads
  4. 服务与防火墙

    • 重启vsFTP服务应用配置:
      sudo systemctl restart vsftpd
    • 配置防火墙(以UFW为例):
      sudo ufw allow 20/tcp 21/tcp 1024:1048/tcp
      sudo ufw reload
  5. 高级选项(可选)

    • 启用被动模式端口范围:pasv_enable=YES
      pasv_min_port=1024 pasv_max_port=1048
    • 禁用SELinux或调整策略(若启用):
      sudo setenforce 0 或通过/etc/selinux/config永久设置。

关键文件说明

  • /etc/vsftpd.conf:核心配置文件,控制用户权限、传输模式等。
  • /etc/vsftpd.userlist:定义允许/拒绝访问的用户列表。
  • 日志文件:/var/log/vsftpd.log,用于排查权限或连接问题。

参考来源: