понедельник, 2 мая 2011 г.

Проверка авторизации SMTP

После настройки авторизации нужно проверить, действительно ли она работает. Загвоздка заключается в том, что пароль передается не простым текстом, а в закодированном виде.

Для начала нужно получить закодированную парольную строчку:
perl -MMIME::Base64 -e 'print encode_base64("\0login\@domain.tld\0password")' 
AGxvZ2luQGRvbWFpbi50bGQAcGFzc3dvcmQ=
Именно ее и нужно передать серверу, но сначала надо отправить валидный helo. Я обычно использую имя ns2.mail.ru


telnet some.host.tld 25
Trying zzz.zzz.zzz.zzz...
Connected to
some.host.tld.
Escape character is '^]'.
220
some.host.tld ESMTP Exim 4.75 Mon, 02 May 2011 13:45:44 +0400
ehlo ns2.mail.ru
250-
some.host.tld Hello ns2.mail.ru [92.255.201.25]
250-SIZE 52428800
250-8BITMIME
250-AUTH PLAIN LOGIN CRAM-MD5
250-STARTTLS
250 HELP

Теперь пробуем авторизоваться
auth plain AGxvZ2luQGRvbWFpbi50bGQAcGFzc3dvcmQ=
235 Authentication succeeded

Естественно, все это будет работать только при условии,что сервер разрешает авторизацию типа PLAIN.

Комментариев нет:

Отправить комментарий