vsftpd单用户多目录的配置

  在使用vsftpd过程中,我们会经常发现vsftpd在默认情况下一个用户(无论是系统用户还是虚拟用户)只能拥有一个目录,一般是根目录。如果此时再要向该用户添加其它目录的话,那么就无法直接添加了(在配置用户只能访问自身目录的情况下)。
  一开始我想到了软连接的方式,结果是vsftpd不支持软连接,硬链接又不允许将硬链接指向目录。最后想到了mount --bind目录挂载来实现这个功能

如:

  • ftp用户目录:/data/guoke
  • 其他目录: /data/share
# 创建ftp用户能访问的挂载目录
mkdir /data/guoke/share

# 将/data/share挂载到ftp用户目录中
mount --bind /data/share /data/guoke/share

这里要注意一点的是 /data/share目录的权限,需要ftp用户有对应读写权限才可以读写。

这样挂载后重启后就失效了,可以写到/etc/rc.local文件中

vim /etc/rc.local

#在最后添加
mount --bind /data/share /data/guoke/share
0%