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

sendmail истекает время ожидания

sendmail истекает время ожидания на одном из наших серверов CentOS. Вот мой тест

[root@testserver ~]# echo "Subject: test" | /usr/lib/sendmail -v john@ourdomain.com

Вот результат:

john@ourdomain.com... Connecting to [127.0.0.1] via relay...
220 testserver.ourdomain.com ESMTP Sendmail 8.13.8/8.13.8; Thu, 23 Jun 2011 14:32:18 -0600
>>> EHLO testserver.ourdomain.com
250-testserver.ourdomain.com Hello localhost.localdomain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
>>> MAIL From:<root@testserver.ourdomain.com> SIZE=14 AUTH=root@testserver.ourdomain.com
250 2.1.0 <root@testserver.ourdomain.com>... Sender ok
>>> RCPT To:<john@ourdomain.com>
>>> DATA
250 2.1.5 <john@ourdomain.com>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
250 2.0.0 p5NKWInQ008636 Message accepted for delivery
john@ourdomain.com... Sent (p5NKWInQ008636 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 testserver.ourdomain.com closing connection

А через минуту /var/log/maillog показывает следующее:

Jun 23 14:32:18 testserver sendmail[8635]: p5NKWICR008635: to=john@ourdomain.com, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30014, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (p5NKWInQ008636 Message accepted for delivery)
Jun 23 14:33:00 testserver sendmail[8638]: p5NKWInQ008636: to=<john@ourdomain.com>, ctladdr=<root@testserver.ourdomain.com> (0/0), delay=00:00:42, xdelay=00:00:42, mailer=esmtp, pri=120313, relay=ourdomain.com. [173.201.XXX.XXX], dsn=4.0.0, stat=Deferred: Connection timed out with ourdomain.com.

Во второй записи журнала он, похоже, пытается использовать веб-сайт нашей внешней компании, чтобы попытаться ретранслировать электронное письмо ... Я понятия не имею, почему он пытается это сделать. Другой ИТ-парень недавно установил этот сервер, поэтому я не уверен, изменил ли он конфигурацию sendmail или что-то еще. Где мне искать, чтобы исправить это?

(очевидно, что имена, доменные имена и IP-адреса были изменены в приведенных выше журналах для защиты невиновных)

Проверьте, можете ли вы подключиться к ourdomain.com (хост указан как relay = в журнале) с помощью telnet на порт 25 (telnet 173.201.XXX.XXX 25). Если вы не можете этого сделать, значит, у вас есть проблема с брандмауэром или маршрутизацией с подключением к серверу ретрансляции, и вам следует изучить ее дополнительно с помощью ping / traceroute.

Отправка почтового сообщения на внешний хост с помощью sendmail теперь состоит из двух этапов. Первый шаг в основном отправляет электронное письмо локально для постановки в очередь для отправки извне. На следующем этапе процесса сообщение из очереди отправляется в соответствующее место. Если информация о маршрутизации назначения или информация о смарт-хосте не настроены, sendmail обращается к DNS, находя записи MX для этого домена, и использует одно из возможных имен хостов, возвращенных для отправки почты. Мне все это кажется нормальным, особенно если внешний MX-хост вам недоступен.

Вы хотите, чтобы этот хост отправлял почту извне или просто пересылал ее в центральное место? Если все, что вы хотите сделать, это последнее, можно сгенерировать файл конфигурации sendmail, чтобы вся электронная почта, отправляемая с вашего хоста, перенаправлялась на другой хост для передачи. Обычно это необходимо в крупных компаниях, таких как моя, чтобы ограничить пользователей от возможной бомбардировки сети поддельной электронной почтой из-за вирусов.