我正在放弃 sendmail 和 mime-defang,我当前的设置拒绝小于 20kb 的 zip 文件,以尝试阻止勒索软件附件的传播。我知道这并不完美,但它确实有帮助。
我不会编程,也不懂正则表达式,但我的
/etc/postfix/mime_header_checks
/name=[^>]*\.(bat|com|exe|dll|vbs|cmd|docm|dotm|xlm|xlsm|xltm|pptm|potm|ppsm|sldm)/ REJECT We do not allow files of that type because of security concerns
这会处理不需要的文件,但不处理 zip 大小限制,下面是我需要转换为 Postifx 友好命令的 mime-defang 代码
sub filter ($$$$)
{
my($entity, $fname, $ext, $type) = @_;
open F, ">> /tmp/mimedefang.log";
if (defined($fname))
{
if ($fname =~ /zip$/i)
{
$size = (stat($entity->bodyhandle->path))[7];
if ($size < 20000 ) {
return action_bounce("REJECT ZIP - Zip files less than 20k are not
accepted $fname $size");
}
}
if ($fname =~ /docm$/i)
{
return action_bounce("REJECT DOCM - DOCM files are not accepted $fname $size");
}
}
close F;
}
我目前使用 Clamav、Spamassassin 作为过滤器,并使用 postscreen 进行 rbl 检查,系统是 Debain 9,带有 Postfix、Dovecot 和 postfixadmin。
如果有比 mime_header_checks 更好的方法,请告诉我