[exim-conf] new version of check_relay_resolve.acl

Victor Ustugov victor на corvax.kiev.ua
Ср Авг 4 16:40:13 EEST 2004


Victor Ustugov wrote:

> итак, есть check_relay_resolve.acl, в котором проводится проверка 
> ризолвинга адреса хоста рилея в реверсной зоне DNS. но! при этом не 
> различается ситуация отсутствия записи в реверсной зоне и ситуация 
> несоответствия записей в реверсной и прямой зонах DNS.
> 
> я тут недавно таки отработал механизм проверки реверса, при котором эти 
> ситуации различаются:
> http://exim.org.ua/pipermail/exim-users/2004-July/002638.html
> 
> посему я собираюсь переделывать check_relay_resolve.acl в свете новых идей

[...]

> получается, что теперь можно создать новую переменную 
> confCHECK_RELAY_FORGED и указать действие, если записи в реверсной и 
> прямой зонах не совпадают. по идее, я оставлю те же действия, что и для 
> confCHECK_RELAY_RESOLVE.
> и еще - confCHECK_RELAY_FORGED будет действовать только тогда, когда 
> confCHECK_RELAY_RESOLVE присвоено значение, отличное от NO
> 
> теперь вопросы:
> 
> 1. если для confCHECK_RELAY_RESOLVE и confCHECK_RELAY_FORGED будет 
> указано REJECT (или DEFER), что делать с хостами из hosts-relayfrom и 
> аутентифицированными пользователями? понятно, что они будут указаны в 
> confCHECK_RELAY_RESOLVE_SKIP. но все же, надо ли хотя бы Warning 
> выводить в log файл?
> 
> 2. а если для confCHECK_RELAY_RESOLVE и confCHECK_RELAY_FORGED указано 
> действие WARN, то выводить ли в этом случае варнинги для локальных 
> хостов и аутентифицированных пользователей?
> 
> 3. может тогда еще для переменной confCHECK_RELAY_RESOLVE_SKIP добавить 
> возможное значение WARN?
> чтобы можно было указать не выводить в лог Warning'и для 
> аутентифицированных и локальных отправителей:
> define(`confCHECK_RELAY_RESOLVE_SKIP', `AUTH RELAY_FROM')dnl
> и выводить Warning'и для аутентифицированных и локальных отправителей:
> define(`confCHECK_RELAY_RESOLVE_SKIP', `AUTH RELAY_FROM WARN')dnl

вроде уже есть подписанные товарищи в листе. но пока или всем пофигу, 
как будет реализован acls/check_relay_resolve.acl, либо времени ни у 
кого нет

так я сделал по-простому - так, как выгодно мне:

dnl
dnl проверка наличия записи рилея в реверсной зоне DNS
dnl
dnl NO          - не проводить проверку
dnl WARN        - и вывода в лог файл предупреждения
dnl DEFER       - возврата клиенту кода 451
dnl REJECT      - возврата клиенту кода 5xx, если запись отсутствует в 
реверсной зоне
dnl               и 451 в случае проблем с резолвингом
dnl define(`confCHECK_RELAY_RESOLVE', `WARN')dnl
dnl
dnl проверка совпадения записей рилея в прямой и реверсной зонах DNS
dnl (проверка работает только если переменная confCHECK_RELAY_RESOLVE не 
установлена в NO)
dnl NO          - не проводить проверку
dnl WARN        - и вывода в лог файл предупреждения
dnl DEFER       - возврата клиенту кода 451
dnl REJECT      - возврата клиенту кода 5xx
dnl define(`confCHECK_RELAY_FORGED', `WARN')dnl
dnl
dnl исключеня из проверки резолвинга в реверсной зоне (список)
dnl NO          - не делать исключений из проверки резолвинга в 
реверсной зоне
dnl AUTH        - не проводить проверку аутентифицированных отправителей
dnl RELAY_FROM  - не проводить проверку исходящих сообщений
dnl WARN        - и вывода в лог файл предупреждения
dnl define(`confCHECK_RELAY_RESOLVE_SKIP', `AUTH RELAY_FROM')dnl
dnl в confCHECK_RELAY_RESOLVE_SKIP могут быть указаны несколько 
значений, разделеные пробелом
dnl
dnl exim должен быть скомпилирован с поддержкой dnsdb
dnl

если кому надо - велкам gmake sync

я у себя пока на _тестовом_ хосте использую:
define(`confCHECK_RELAY_RESOLVE',      `REJECT')dnl
define(`confCHECK_RELAY_FORGED',       `DEFER')dnl
define(`confCHECK_RELAY_RESOLVE_SKIP', `AUTH RELAY_FROM WARN')dnl

остальным пока можно посоветовать дефолтовые
define(`confCHECK_RELAY_RESOLVE',      `WARN')dnl
define(`confCHECK_RELAY_FORGED',       `WARN')dnl

и посматривать, сколько будет warning'ов по проверке ризолвинга
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Best wishes Victor Ustugov   mailto:victor на corvax.kiev.ua
public GnuPG/PGP key:        http://victor.corvax.kiev.ua/corvax.asc
ICQ: 77186900, 32418694      CRV2-RIPE, CRV-UANIC




Подробная информация о списке рассылки exim-conf