Полезные скрипты/настройки для exim.

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
32мб
рядовой
Сообщения: 10
Зарегистрирован: 2020-06-06 0:10:28

Полезные скрипты/настройки для exim.

Непрочитанное сообщение 32мб » 2020-06-06 3:42:52

Для версий Exim скомпилированных без SUPPORT_SPF=yes (например в Дебиан), можно конечно запилить доку как перекомпилить exim, но такая дока будет больше

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
32мб
рядовой
Сообщения: 10
Зарегистрирован: 2020-06-06 0:10:28

Полезные скрипты/настройки для exim.

Непрочитанное сообщение 32мб » 2020-06-06 17:11:55

Проверка DKIM без сторонних программ или скриптов

Здесь пример проверки DKIM стандартными средствами Exim, т.е. при помощи ACL.

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

1. Отклонение почты с существующими но кривыми DKIM-заголовками.

В главном конфиге (для дебиана рекомендуется создавать файл /etc/exim4/conf.d/main/00_exim4-user_options и там присать глобальные вещи) прописываем:

Код: Выделить всё

acl_smtp_dkim = acl_check_dkim
Далее где-нибудь в ACL'ах (для дебиана рекомендуется создать файл /etc/exim4/conf.d/acl/50_exim4-config_check_dkim)

Код: Выделить всё

acl_check_dkim:

    deny
        message = DKIM-Record failure
        !dkim_status = pass

    accept
Внимание, некоторые почтовики рассылают почту через релеи и бывает так, что у одного письма даже два и более DKIM заголовка. Для КАЖДОГО(!) DKIM-заголовка из них будет отдельно вызван этот ACL и если один из этих заголовков будет сломан - почта будет отклонена, даже если два других были корректными.

Что можно проверять в dkim_status:
pass - Сигнатура годная и подходит к ключу домена
invalid - Ошибка проверки, навозможно получить ключ или сисадмин домена запорол DNS-запись
fail - Битая или поддельная сигнатура.


2. Отконение почты где DKIM-заголовка вообще нет

В Файле /etc/exim4/conf.d/acl/40_exim4-config_check_data должно быть это

Код: Выделить всё

  deny
    message = Missing DKIM-signature
    condition = ${if !match{$h_DKIM-Signature:}{\Nv=\N}{yes}{no}}
Всё!

Настоятельно советую использовать этот метод только в комбинации с белыми листами, в которые записываются кривые сервера деловых партнеров. Которых к сожалению просто тонна. Или-же инкриминировать какой-нить счетчик баллов и писать соответствующие заголовки. Если тупо резать все мыло, как в примере, можно запороть много легитимной коммуникации.

Надеюсь что "это всё вот это" (с) натолкнет вас на мысль как сделать лучше, удачи 8) :good: