1

В настоящее время у меня есть эта строка в моем файле конфигурации пользователя amavis:

# BLACKLIST
read_hash(\%blacklist_sender, '/etc/amavis/blacklist');

Он отлично работает с такими записями, как:

.baddomain.net
.spam-galore.net

Но мне интересно, как использовать регулярные выражения в этом файле. Я попробовал следующее:

qr(\.domain[0-9]\.net)
qr'\.domain[0-9]\.net'

И ни один не работал.

1 ответ1

0

Addresses are converted from quoted form into internal (raw) form

Пока я это читаю
read_hash() не обслуживает регулярные выражения.

There is a subroutine read_hash() available for use in amavisd.conf. It can read keys from a plain text file, and load them into a Perl hash. Format of the text file: one address per line, anything from '#' to the end of line is treated as a comment, but '#' within correctly quoted rfc2821 addresses is not treated as a comment (e.g. a hash sign within "strange # \"foo\" address"@example.com is valid). Leading and trailing whitespace is discarded, empty lines (containing only whitespace and comment) are ignored. Addresses are converted from quoted form into internal (raw) form and inserted as keys into a given hash, with a value of 1 (true). Each address can have an associated optional value (also known as the 'righthand side' or RHS) separated from the address by whitespace. An absence of a value implies 1 (true). The $hashref argument is returned for convenience, so that one can say for example: $per_recip_whitelist_sender_lookup_tables = { '.my1.example.com' => read_hash({},'/var/amavis/my1-example-com.wl'), '.my2.example.com' => read_hash({},'/var/amavis/my2-example-com.wl') }

Источник: http://www.amavis.org/README.lookups.txt

Я думаю, вы могли бы внести изменения в код read_hash() - это perl.

На самом деле, это, вероятно, было бы плохо
вместо этого клонируйте его под новым именем, чтобы не сломать что-либо.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .