我正在运行使用虚拟用户的 vsFTP 服务器。我将每个用户 chroot 到他们自己的个人子目录。为了方便使用,我想使我的用户名不区分大小写,但我遇到了一些麻烦,因为服务器总是使用他们输入的确切大小写来解析他们的 chroot 目录。显然这行不通,因为 *NIX 文件系统区分大小写。有没有办法在 vsftpd.conf 中指定一个值为小写(例如 ToLower($USER))?这样,无论用户输入的是 JSMITH 还是 jsmith,他们都会始终被 chroot 到 jsmith/?
答案1
不,vsftpd 不支持此功能。但是,proftpd 可以使用其mod_rewrite 模块。 具体来说
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteCondition %m USER
RewriteRule (.*) ${lowercase:$1}
</IfModule>