Например имеем ящик test@example.com c паролем test .
Проверять валидность будем по PLAIN протоколу авторизации, то есть обычный пароль без шифрования
Кодируем данные для авторизации
perl -MMIME::Base64 -e 'print encode_base64(«\000test\000test»);'
electron:~# perl -MMIME::Base64 -e 'print encode_base64(«\000test\000test»);'
AHRlc3QAdGVzdA==
в общем плане :
perl -MMIME::Base64 -e 'print encode_base64(«\000user\000password»);'
На локальном сервере даем команду :
telnet localhost 25
Как только увидим приглашение, пишем :
ehlo example.ru
После того, как сервер поздоровается с нами и покажет протоколы авторизации, то пишем
auth plain AHRlc3QAdGVzdA==
То есть после plain вводим закодированные данные в Base64 и в случае верных данных увидим :
235 2.0.0 Authentication successful
Полный лог :
[root@hosterbit postfix]# telnet localhost 25
Trying 127.0.0.1…
Connected to localhost.
Escape character is '^]'.
220 hosterbit.ru ESMTP Postfix
ehlo example.com
250-example.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH PLAIN AHRlc3QAdGVzdA==
235 2.0.0 Authentication successful
quit
221 2.0.0 Bye
Connection closed by foreign host.