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

mail () отправляется / не отправляется беспорядочно

Некоторые электронные письма, отправленные по почте () на моем сервере, не достигают места назначения. Я проверил журналы электронной почты, и у меня нет записей с 5 августа. Я не уверен, с чего начать искать, в чем может быть проблема. Я подтвердил, что некоторые письма отправляются / принимаются.

Возможно, вы захотите использовать что-то вроде tshark, чтобы подтвердить, что данные покидают ваш ящик для доставки. Если он у вас есть, попробуйте использовать смарт-хост, предпочтительно тот, который принадлежит вашему интернет-провайдеру, а также посмотрите записи SRV.

Проверьте свой почтовый журнал

используя ваш предпочтительный редактор, откройте /var/log/mail.log или /var/log/mail из, если вы хотите видеть только последние записи, которые вы можете использовать tail -f /var/log/mail, вы также можете отправить электронное письмо и выполнить команду tail, чтобы следовать за ним.

Убедитесь, что sendmail запущен и работает

ps -auxf |grep sendmail

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

/etc/init.d/sendmail stop
/etc/init.d/sendmail start

НОТА: Эта команда может отличаться от ОС к ОС;


Проверка разрешения адресов и псевдонимов

/usr/sbin/sendmail  -bv  -v  -oL10  address [address...]

В -bv Параметр (режим проверки) заставляет sendmail проверять адреса без сбора или отправки сообщения.

В -v (подробный) флаг заставляет sendmail сообщать о раскрытии псевдонима и подавлении дубликатов.

В -oL10 Параметр (уровень журнала) устанавливает уровень журнала до 10. На уровне журнала 10 и выше sendmail -bv сообщает почтовую программу и хост, к которым он разрешает адреса получателей.

Для хостов, которые разрешаются в почтовые программы IPC, MX-хосты не сообщаются при использовании режима проверки, потому что MX-записи не собираются, пока не будет осуществлена ​​фактическая попытка доставки.

Если адрес не разрешается должным образом, возможно, вам придется изменить одно или несколько из следующего:

  • Файл конфигурации sendmail.
  • Файлы или программы, из которых создаются классы файлов.
  • Конфигурация сервера имен.
  • Конфигурация UUCP.

Более подробная информация о том, как файл конфигурации перезаписывает адреса получателей, предоставляется в режиме проверки адресов:

/usr/sbin/sendmail -bt


Связь с демоном sendmail для проверки подключения

Можно напрямую общаться с демоном sendmail и другими SMTP-серверами с помощью следующей команды:

telnet  host  25

Это можно использовать, чтобы определить, работает ли SMTP-сервер на хосте. В противном случае ваша попытка подключения вернет «Соединение отклонено».

После того, как вы установили соединение с демоном sendmail, вы можете использовать команду SMTP VRFY, чтобы определить, может ли сервер выполнять маршрутизацию на определенный адрес. Например,

telnet yourdomain.com 25
220 yourdomain.com SMTP server ready
vrfy webnet
250 Webnet <webnet@yourdomain.com>
vrfy another@yourdomain.com
554 another@anotherdomain.com: unable to route to domain anotherdomain.com
quit
221 yourdomain.com SMTP server shutting down

Не все SMTP-серверы поддерживают команды VRFY и EXPN.