[exim] demime deprecated in 4.88

Начиная с версии 4.88 acl demime признан устаревшим и больше недоступен:

JH/02 The obsolete acl condition «demime» is removed (finally, after ten
years of being deprecated). The replacements are the ACLs
acl_smtp_mime and acl_not_smtp_mime

Ниже совет с сайта forum.lissyara.su как правильно сделать замену acl’y

acl_smtp_mime           = acl_check_mime



accept hosts          = :

# --- accept messages for abuse / postmaster
accept condition      = $acl_m_pm

deny   decode         = default
condition      = ${if >{$mime_anomaly_level}{1}}
message        = This message contains a MIME error ($mime_anomaly_text)

# --- Check MIME boundary delimiter according RFC2046
deny   condition      = ${if match{$mime_boundary}{\N( |\t)$\N}}
message        = MIME boundary delimiter ends with whitespace

deny   condition      = ${if >{${strlen:$mime_boundary}}{70}}
message        = Too long MIME boundary delimiter

accept authenticated  = *

warn  !hosts          = +relay_from_hosts
condition      = ${if >{$mime_anomaly_level}{0}}
set acl_c0     = ${eval:$acl_c0+20}
set acl_c1     = DEMIME(20) found MIME error ($mime_anomaly_text); $acl_c1


Если хочется по расширениям, то где-то после decode = default можно типа такого написать:

deny   condition      = ${if match{${lc:$mime_filename}}{\N(\.com|\.vbs|\.bat|\.pif|\.scr|\.exe)$\N}}
message = Forbidden file type in attachment found

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *