Установить адрес отправителя в сообщениях электронной почты от cron/ Установить адрес по умолчанию для адреса sendmail

Как обычный пользователь я могу отправлять электронную почту, либо из командной строки, либо из PHP. Но когда задание cron выдает ошибку, отправка этого сообщения не удалась (у меня есть MAILTO=me@example.com вверху crontab). То же самое происходит для отправки из командной строки от имени пользователя root (*).

Я отследил это до: когда электронные письма работают, заголовки From и Return Path устанавливаются в me@valid.domain.com. Этот домен указан в /etc/mail/sendmail.mc, т.е. у меня есть три строки:

FEATURE(`allmasquerade') dnl
MASQUERADE_DOMAIN(`valid.domain.com.')dnl
MASQUERADE_AS(valid.domain.com)dnl

Для сообщений электронной почты, которые терпят неудачу, заголовки From и Return Path установлены в root@machinename.example2.com. example2.com существует, но имя машины не имеет записи DNS. Поэтому электронное письмо отклоняется с 550. machinename.example2.com - это первая запись в / etc / hosts для 127.0.0.1.

Я подозреваю, что изменение / etc / hosts с valid.domain.com может сработать, но это рабочий веб-сервер, и я не хочу ничего ломать. Также кажется, что это неправильное место для решения проблемы с электронной почтой. Поэтому я надеюсь, что это настройка sendmail или cron, которая мне нужна. (На другой машине, ubuntu/postfix, я, кажется, создал /etc/postfix/sender_canonical для этого.)

ОС: Centos 5.6

Почтовый сервер: sendmail 8.13.8

*: но в этом случае ошибка правильно отправляется на me@example.com, так как я установил псевдоним для root в / etc / aliases. Это не случается с электронными письмами cron все же; эти отказов письма помещаются в мой локальный почтовый ящик Unix.

0 ответов

Другие вопросы по тегам