Отправка почты через telnet.

cmd1 Все кто более или менее имеет отношение к системному администрированию слышали что такое почта и протокол SMTP.

Под Windows есть несколько программ работающих из под командной строки и позволяющие отправить почту (например программа blat ).

Но мы пойдем другим путем: попробуем вам показать на примере как можно используя только командную строку и программу telnet  отправить письмо. Все что здесь описано – действительно работает 😉

Доступ к SMTP через telnet (отправка почты).

telnet mail.mydomain.ru 25
mail.mydomain.ru – адрес smtp сервера
25 – smtp-порт сервера с которым должен соедениться telnet
220 mail.mydomain.ru ESMTP Sendmail 8.13.1/8.13.1; Sat, 6 Oct 2007 09:50:16 +0400
ehlo lo (или просто ehlo или уж в очень редком случае набрать helo)
ehlo lo – поздоровались с удалённым smtp-сервером
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
mail from: test@mydomain.ru
тут мы говорим что адрес почтовый отправителя письма test@mydomain.ru
250 2.1.0 test@mydomain.ru… Sender ok
поверка отправителя прошла успешно
rcpt to: test@remote.ru
здесь мы ввели постовый адрес получателя нашего письма test@remote.ru
250 2.1.5 test@remote.ru… Recipient ok
проверка получателя прошла успешно
data
комманда data говорит о том, что дальше пойдёт тело письма
354 Enter mail, end with “.” on a line by itself
ответ сервера говорит нам о том что закончить письмо мы должны набрать точку “.” на новой строке после набранного нами сообщения (тела письма)
this test mail bla-bla-bla.
это наш текст
.
точка – даём понять серверу что письмо набрано и его пора отправлять адресату
250 2.0.0 l965oGGR025162 Message accepted for delivery
ответ сервера – письмо ушло на отправку