Таки баг.
Разбираюсь с утренним попаданием в RBL:
exim -bh 84.96.74.32
220 iTL.UA ESMTP Server Ready.
ehlo noc.mediationtelecom.net
>>> verifying EHLO/HELO argument "noc.mediationtelecom.net"
>>> matched host name
>>> host in pipelining_advertise_hosts? yes (matched "*")
>>> host in auth_advertise_hosts? yes (matched "*")
>>> host in tls_advertise_hosts? yes (matched "*")
250-mail.itl.ua Hello noc.mediationtelecom.net [84.96.74.32]
250-SIZE 52428800
250-8BITMIME
250-ETRN
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
auth login
>>> using ACL "acl_check_auth"
>>> processing "warn"
>>> check set acl_c10 =
>>> warn: condition test succeeded
>>> processing "deny"
>>> check condition = ${if eq{$acl_c10}{}{no}{yes}}
>>> = no
>>> deny: condition test failed
>>> processing "accept"
>>> accept: condition test succeeded
334 VXNlcm5hbWU6
L3dlYm1hc3Rlcg==
334 UGFzc3dvcmQ6
>>> srv_auth_login authenticator:
>>> $auth1 = /webmaster
>>> $auth2 =
>>> $1 = /webmaster
>>> $2 =
>>> expanded string: 1
235 Authentication succeeded
В configure все прозрачно:
srv_auth_login:
driver = plaintext
public_name = LOGIN
server_prompts = Username:: : Password::
server_condition =
${perl{imap_login}{217.12.192.20}{143}{$auth1}{$auth2}}
server_set_id = $auth1
Баг в exim.pl или Mail::IMAPClient. Я не знаток перла ну совсем. Поэтому
делаем кривой тестовый прогон:
#!/usr/local/bin/perl
use Mail::IMAPClient;
#my($host, $port, $account, $password) = @_;
$host='217.12.192.20';
$port='143';
$account='/webmaster';
$password='';
if ($imap = Mail::IMAPClient->new(
Server => $host,
Port => $port,
User => $account,
Password => $password
)) {
$imap->logout();
print 'Success\n';
} else {
print 'Fail\n';
}
mail# perl test.pl
Success\nmail#
Т.е. получается, что если не указан пароль, то авторизация через IMAP
будет всегда успешной, несмотря на то, что IMAP уверенно отвечает, что
недостаточно параметров для авторизации:
A01 LOGIN /webmaster
A01 NO Error in IMAP command received by server.
Но Mail::IMAPClient успешно не возвращает ошибку. Для справки -
установлен p5-Mail-IMAPClient-2.2.9 Perl5 module to talk to a IMAP4rev1
(RFC2060) server.
Пошел выносить себя из RBL...
Victor Ustugov пишет:
>>>> Вопрос - а из-за чего после 535 Incorrect authentication data успешно
>> проходит дальнейшая сессия ?
>> считается, что аутентификации вообще не было
>>> По-моему, это не совсем верное поведение.
>> если 217.12.192.20 согласен рилеить входящую почту домена itl.ua без
> аутентификации, то exim ведет себя абсолютно корректно
>----------- следущая часть -----------
A non-text attachment was scrubbed...
Name: axl.vcf
Type: text/x-vcard
Size: 265 bytes
Desc: отсутствует
URL: <http://mta.org.ua/pipermail/exim-conf/attachments/20070227/999c3c8e/attachment.vcf>