[sendmail-conf] Как проправить regex ?

Victor Ustugov victor на corvax.kiev.ua
Чт Ноя 11 11:57:49 EET 2004


Sergey Korolew wrote:

> Обнаружил у себя ложные срабатывания check_relay_dialup_regex. Вот конфиг:
> HACK(check_relay_dialup_regex,``^(.+[\.\-])?(adsl|cable|client|dhcp|dial|dial-in|dial-up|dialup|dsl|dyn|dynamic|dyndsl|pool|ppp|user|xdsl)[\.\-_0-9].+'')dnl
> HACK(check_relay_dialup_regex,``^(.+\.)*(.*dsl|pool-|dial-*(up|in)|ppp)-*[0-9A-Fa-f-]+[.-]'')dnl
> HACK(check_relay_dialup_regex,``(dial|dialup|adsl|dsl|dhcp|dyn|ip|ipt|ppp|cable|dslam|user|client|pool|subnet|network)(\.|-|[0-9]|_)'')dnl
> 
> Nov 10 02:54:45 bitty sendmail[53595]: iA9Nsibr053595: ruleset=check_rcpt, arg1=
> <ivc на bittu.org.ru>, relay=mailfe06.swip.net [212.247.154.161], reject=550 5.7.1
> <ivc на bittu.org.ru>... Access from dsl/dial-up/cable relays denied according to t
> he local policy
> 
> Nov 11 00:42:30 bitty sendmail[63259]: iAALgQbr063259: ruleset=check_rcpt, arg1=
> <ivc на bittu.org.ru>, relay=211-23-78-207.HINET-IP.hinet.net [211.23.78.207], reje
> ct=550 5.7.1 <ivc на bittu.org.ru>... Access from dsl/dial-up/cable relays denied a
> ccording to the local policy
> 
> Не пойму, какой regex срабатывает на эти имена. И тем более как его
> переписать.

для начала сделай для каждого регекспа чуть отличающееся сообщение об ошибке
а потом в sendmail -bt -d21.12 скорми адрес получателя и PTR и A запись 
рилея правилу check_rcpt

и еще - поищи по sendmail.cf все вхождения подстроки "Access from 
dsl/dial-up/cable relays denied according to the local policy". 
возможно, у тебя такое сообщение выводится не только в случае проверки 
регекспами...

> И вот еще:
> 
> Nov 11 00:28:30 bitty sendmail[63156]: iAALRwbr063156: ruleset=check_rcpt, arg1=
> <ivc на bittu.org.ru>, relay=1Cust247.tnt2.chi5.da.uu.net [67.195.140.247], reject=
> 550 5.7.1 <ivc на bittu.org.ru>... Rejected: 67.195.140.247 listed at dnsbl.njabl.o
> rg
> 
> Хак check_relay_dialup_digits с параметром 5 на это имя релея не сработал.

1. 5 - мало. есть куча валидных рилеев с пятью цифрами.
2. покажи вывод
grep grep '\[0-9\].*\[0-9\]' /etc/mail/sendmail.cf
а потом
echo 'Translate,checkrelay 1Cust247.tnt2.chi5.da.uu.net $| 
67.195.140.247' | sendmail -bt -d21.12

-- 
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




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