Иногда нужно проверить, работает ли SMTP сервер, отправляются ли письма. Не всегда есть под рукой подходящий почтовый клиент. Выход есть — telnet. Будем отправлять с аутентификацией login.
Ссылки
Без аутентификации:
Base64
Для отправки методом login нам понадобится перевести логин и пароль в формат Base64. Можно найти онлайн декодер.
- Логин "info@testsender.internet-lab.ru" в Base64 — "aW5mb0B0ZXN0c2VuZGVyLmludGVybmV0LWxhYi5ydQ==".
- Пароль "888776" в Base64 — "ODg4Nzc2".
Отправка email
Коннектимся на SMTP порт нашего сервера:
telnet smtp.mail_server 25
Если сервер работает, он ответит кодом 220:
220 mail.domain.ru
Представимся:
helo Host
Сервер ответит кодом 250:
250 mail.domain.ru
Строка AUTH PLAIN LOGIN символизирует наличие возможности аутентификации.
Аутентифицируемся:
auth login
Сервер ответит кодом 334. Вводом логин в формате Base64:
aW5mb0B0ZXN0c2VuZGVyLmludGVybmV0LWxhYi5ydQ==
Сервер ответит кодом 334. Вводом пароль в формате Base64:
ODg4Nzc2
Сервер ответит кодом 235 при успехе:
235 2.7.0 Authentication successful
Указываем свой email:
mail from: vpupkin@domain.ru
Сервер ответит кодом 250:
250 2.1.0 Ok
Указываем получателя:
rcpt to: test@gmail.com
Сервер ответит кодом 250:
250 2.1.0 Ok
Пишем тело письма:
data
Сервер ответит:
354 End data with <CR><LF>.<CR><LF>
Вводим тему:
Subject: Test
Текст письма:
Here is my text
Заканчиваем ввод тела переводом строки и точкой:
.
Сервер ответит:
250 2.0.0 Ok: queued as 55C66BFE07
Письмо отправлено. Для выхода:
quit