Назад | Перейти на главную страницу

linux sendmail не работает (stat = deferred)

Я настроил веб-сервер linux на моем raspberry pi и теперь хочу, чтобы сервер мог отправлять электронные письма без настройки полного почтового сервера.

Вот почему я выбрал MTA sendmail, который уже несколько дней пытаюсь правильно настроить.

В моем /etc/mail/sendmail.mc Я добавил эти строки:

define(`SMART_HOST',`[smtp.strato.de]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 465')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 465')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo/auth.db')dnl

В моем хеш /etc/mail/authinfo/auth у меня есть

AuthInfo: "U:root" "I:me@mydomain.com" "P:mypassword"

Но отправив такое тестовое письмо

echo "Just testing my sendmail relay" | mail -s "Sendmail Relay" somerecipient@email.com

не выдает мне никаких ошибок, но все равно не пришел получатель.

Давай проверим мой /var/log/mail.log

Mar 30 14:35:02 localhost sm-mta[2375]: v2UCKHOT002349: to=<somerecipient@email.com>, ctladdr=<root@localhost.localdomain> (0/0), delay=00:14:45, xdelay=00:02:00, mailer=relay, pri=300405, relay=smtp.strato.de. [81.169.145.133], dsn=4.0.0, stat=Deferred: Connection reset by smtp.strato.de.
Mar 30 14:35:02 localhost sm-mta[2375]: v2UAPG9t014829: to=<somerecipient@email.com>, ctladdr=<root@localhost.localdomain> (0/0), delay=02:09:46, xdelay=00:00:00, mailer=relay, pri=1380405, relay=smtp.strato.de., dsn=4.0.0, stat=Deferred: Connection reset by smtp.strato.de.
Mar 30 14:35:02 localhost sm-mta[2375]: v2UAHJSs014703: to=<somerecipient@email.com>, ctladdr=<root@localhost.localdomain> (0/0), delay=02:17:43, xdelay=00:00:00, mailer=relay, pri=1470405, relay=smtp.strato.de., dsn=4.0.0, stat=Deferred: Connection reset by smtp.strato.de.

Что значит stat=Deferred: Connection reset by smtp.strato.de. значит?

Что я могу сделать, чтобы наконец решить мою проблему с отправкой электронной почты?

Благодарю за любую подсказку!

Думаю, я решил свою проблему

  1. Использование порта 587 вместо 465, благодаря подсказке Анджея
  2. Указание почты отправителя, потому что мой хост-страто отказывался от писем, которые не прошли аутентификацию (в моем случае root@localhost.localdomain)

Итак, отправка тестового письма с этой командой сработала

mail -s "Some random subject" -a "From: me@mydomain.com" somerecipient@email.com

Не забудьте отправить последнее письмо, нажав [ctrl] + [d]

Что касается вашего буквального вопроса "Сброс соединения через smtp.strato.de". означает, что удаленный сервер закрыл TCP-соединение до того, как он смог отправить сообщение, обычно без отправки кода ошибки или прощального сообщения.

Используйте порт 587 (msa) вместо порта 465 (smtps).

smtp.strato.de, похоже, поддерживает оба.