我正在尝试正确设置我的 ftp 服务器,但是我遇到了一个问题允许过滤器。
说明:
我想默认限制所有命令,只允许少数命令。这样可行。但是。正如你在我的配置中看到的,我想限制所有命令,只允许
列表 CDUP CWD XCWD XCUP MKD RETR RMD PWD MLS没有 AllowFilter
和
斯托尔斯托恩弗恩托德莱
使用 AllowFilter
一切都很顺利,但奇怪的部分来了。
问题:
如果我尝试重命名目录,则不允许该操作,因为我使用带有“RNFR RNTO”的 AllowFilter 来阻止其他文件扩展名。我只想允许 .zip 和 .rar 文件。
我的问题:我怎么能够禁用RNTO 和 RNFR 命令仅适用于文件夹。
该过滤器对于文件来说工作正常(您不能将 test.zip 重命名为 test.exe),但我不想在文件夹上启用它。
<Directory />
<Limit ALL>
DenyAll
</Limit>
<Limit LIST CDUP CWD XCWD XCUP MKD RETR RMD PWD MLSD>
AllowAll
</Limit>
<Limit STOR STOU RNFR RNTO DELE>
Order deny, allow
AllowFilter ^[a-zA-Z0-9-_].*\.(zip|rar)$
</Limit>
</Directory>
答案1
我找到了 2005 年的邮件列表条目。
Proftpd 开发人员说,您需要 Proftpd 的 mod_rename 模块。
“......但我不知道如何拒绝(使用文件名禁止或其他方式)上传文件名中包含无效字符且不影响目录的文件。”
来源:http://osdir.com/ml/network.proftpd.user/2005-01/msg00118.html
我正在检查 mod_rename 模块。
模块:http://www.castaglia.org/proftpd/modules/mod_rename.html
问候,
史蒂文