Amavisd-new

Антивирусы

Для работы с антивирусами нужно убрать комментарии в файле /etc/amavis/conf.d/15-content_filter_mode с строк:

@bypass_virus_checks_maps = (
   \%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re);

ClamAV

Для работы с ClamAV нужно:

1. Добавить пользователя clamav в группу amavis:

gpasswd -a clamav amavis

2. Убрать комментарии в файле /etc/amavis/conf.d/15-av_scanners с строк относящихся к ClamAV

3. Добавить в файл:

/etc/clamav/clamd.conf
AllowSupplementaryGroups true

Антиспам

Для работы с антиспамом, например с SpamAssassin нужно убрать комментарии в файле /etc/amavis/conf.d/15-content_filter_mode с строк:

@bypass_spam_checks_maps = (
   \%bypass_spam_checks, \@bypass_spam_checks_acl, \$bypass_spam_checks_re);

20-debian_defaults

Для переменных:

  • $final_virus_destiny
  • $final_banned_destiny
  • $final_spam_destiny
  • $final_bad_header_destiny

Предусмотрены следующие значения:

D_DISCARD блокировать, никаких уведомлений не отсылать
D_BOUNCE блокировать, отправить уведомление отправителю письма
D_REJECT почта не проходит к получателям, отправитель должен получить reject
D_PASS пропустить письмо

Настройка папки карантина:

$quarantine_subdir_levels Создание структуры из 62 папок (0-9, A-Z, a-z)
0= Нет
1 = Да
20-debian_defaults
$quarantine_subdir_levels = 0

Доставка SPAM с изменённой темой письма

Для того, чтобы доставлять SPAM с изменённой темой письма нужно:

/etc/amavis/conf.d/20-debian_defaults
$sa_spam_subject_tag = '***SPAM***';
$final_spam_destiny  = D_PASS;
/etc/amavis/conf.d/50-user
@local_domains_acl = ( "domain.ru", "domain2.ru" );

Доставка вирусов с изменённой темой письма

Для того, чтобы доставлять заражённые письма с изменённой темой письма нужно:

/etc/amavis/conf.d/20-debian_defaults
$final_virus_destiny      = D_PASS; ***INFECTED***

Белый список

/etc/amavis/conf.d/20-debian_defaults
read_hash(\%whitelist_sender, '/etc/amavis/whitelist');
@whitelist_sender_maps = (\%whitelist_sender);

Извлечение из карантина

Отправка письма из карантина получателю.

amavis_reslease.sh
#!/bin/sh
 
VIRUSMAILS_DIR="/var/lib/amavis/virusmails"
 
if [ -d $VIRUSMAILS_DIR ]; then
    cd $VIRUSMAILS_DIR
    amavisd-release $1
fi

Пример использования:

# amavis_reslease.sh spam-xNYUd-gWtWDk.gz

Очистка карантина

Для периодической очистки карантина можно создать задание для периодического выполнения с помощью Cron следующего скрипта:

amavis_clean_virusmails.sh
#!/bin/bash
 
VIRUSMAILS_DIR="/var/lib/amavis/virusmails"
 
if [ -d $VIRUSMAILS_DIR ]; then
    cd $VIRUSMAILS_DIR
    find $VIRUSMAILS_DIR -type d -mtime +30 -exec rm -r {} \;
    find $VIRUSMAILS_DIR -type f -mtime +30 -exec rm -r {} \;
fi

Отладка

# amavisd -c /etc/amavisd/amavisd.conf debug
image_pdfimage_print

Leave a Reply

Your email address will not be published. Required fields are marked *