Есть ли способ изменить исходящую электронную почту для root, т.е. вместо root@localhost.localdomain
к root@apps.mydomain.com
?
Я использую Postfix.
В наборе Postfix:
myhostname = host.example.com
в main.cf
Измените файл псевдонимов на свой вкус. Он будет в / etc, или / etc / mail, или / etc / postfix, или в любом другом каталоге, в зависимости от вашего MTA. Вам также может потребоваться перестроить alias db или перезагрузить MTA (см. Документацию MTA).
Ситуация: Я переименовал Digital Ocean Droplet (старый домен исчез), однако корневая почта по-прежнему отправляла письма со старым доменом (при выполнении сценариев bash). Старое письмо было видно в заголовке письма:
конверт из
Обратный путь:
От: root@old.domain.com (root)
С помощью hostname=newdomain.com
то перезапуск сервера не помог.
Точно так же это не помогло:
sudo postconf -e 'myhostname = newdomain.com'
sudo postconf -e 'smtp_helo_name = newdomain.com'
sudo service postfix restart
Затем я заглянул в /etc/postfix/main.cf
который раскрывает одну важную строку:
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
Наконец, я смог определить проблему до этот файл:
/etc/mailname
который все еще имел старая запись.
Итак, я отредактировал файл и установил новое имя файла.
После этого в SSH я выполнил:
newaliases
(не уверен, нужно ли)sudo service postfix restart
И вуаля, письмо отправлено с нового адреса электронной почты.
Я нашел решение его smtp_generic_maps (по умолчанию: пусто)
Необязательные таблицы поиска, которые выполняют перезапись адреса в SMTP-клиенте, обычно для преобразования локально действительного адреса в глобально допустимый адрес при отправке почты через Интернет. Это необходимо, когда у локального компьютера нет собственного имени домена в Интернете, но вместо него используется что-то вроде localdomain.local.