Как я уже писал ранее, при попытке отправить письмо через smtp.mail.spbnit.ru с помощью утилиты ssmtp:
$sendmail -v sometestguy1@yandex.ru < body.txt
получается вот такая штука:
[<-] 220 smtp.spbtlg.ru ESMTP Postfix [->] EHLO ubuntu [<-] 250 DSN [->] AUTH LOGIN [<-] 502 5.5.2 Error: command not recognized sendmail: Server didn't like our AUTH LOGIN (502 5.5.2 Error: command not recognized)
, то есть smtp серверу почему-то не нравится команда AUTH LOGIN, в чем можно убедиться если зайти через telnet:
$ telnet smtp.mail.spbnit.ru 25
вводим сначала «EHLO ubuntu» а потом «AUTH LOGIN»:
Trying 213.158.0.51... Connected to smtp.mail.spbnit.ru. Escape character is '^]'. 220 smtp.spbtlg.ru ESMTP Postfix EHLO ubuntu 250-smtp.spbtlg.ru 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN AUTH LOGIN 502 5.5.2 Error: command not recognized ^] telnet> quit Connection closed.
интересно, что если то же самое проделать с Yandex-ом, то с командой «AUTH LOGIN» всё будет нормально:
$ telnet smtp.yandex.ru 25
вводим сначала «EHLO ubuntu» а потом «AUTH LOGIN»:
Trying 213.180.204.38... Connected to smtp.yandex.ru. Escape character is '^]'. 220 smtp14.mail.yandex.net (Want to use Yandex.Mail for your domain? Visit http://pdd.yandex.ru) EHLO ubuntu 250-smtp14.mail.yandex.net 250-PIPELINING 250-SIZE 42991616 250-VRFY 250-ETRN 250-STARTTLS 250-AUTH PLAIN LOGIN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN AUTH LOGIN 334 VXNlcm5hbWU6 ^] telnet> quit Connection closed.
Какие тут соображения
Видно что smtp.yandex.ru выдаёт кроме всего прочего «250-AUTH PLAIN LOGIN», a smtp.spbtlg.ru такого не выдаёт, может быть, ему вообще не нужна авторизация, а ssmtp этого не понимает?
продолжение: Как работает почта в Авангарде (решение)