Облачный сервер, созданный третьей стороной, использует sendmail для отправки электронной почты.
Теперь sendmail настроен так, что письма от www-data@localhost
[1] отправляется как www-data@example.com
. Электронные письма в основном отправляются на стороннюю электронную почту, например someone@example2.net
(обратите внимание на другой целевой домен).
Однако теперь нам нужно также отправить электронное письмо на адрес admins@example.com
. Однако попытка сделать это приводит к 550 5.1.1 <admins@example.com>... User unknown
.
Я совершенно не разбираюсь в настройке sendmail.
Может ли кто-нибудь подсказать, как это сделать правильно?
[1] Это ServerAdmin
имя, как определено в /etc/apache2/sites-available/default
@MadHatter спросил:
«sendmail настроен так, что электронные письма с www-data @ localhost отправляются как www-data@example.com». Как именно?
я считать через следующие строки в /etc/mail/sendmail.mc
:
dnl # Replace sender's domain
MASQUERADE_AS(`example.com')dnl
FEATURE(masquerade_envelope)dnl
FEATURE(masquerade_entire_domain)dnl
MASQUERADE_DOMAIN(`example.com')dnl
(Опять же, не я создаю файл sendmail.mc; если есть определенная строка, которую нужно искать, я буду рад опубликовать ее здесь).
Вот дополнительная информация:
root@webserver:/etc/mail# grep '^Fw' sendmail.cf
Fw/etc/mail/local-host-names %[^\#]
root@webserver:/etc/mail# cat local-host-names
localhost
webserver
Является example.com
внесены в список локальных почтовых доменов? Чтобы получить список локальных почтовых доменов, выполните от имени пользователя root команду ниже:
echo '$=w' | sendmail -Am -bt
Sendmail по умолчанию добавляет автоматически определяемые локальные почтовые домены к доменам, перечисленным в /etc/mail/local-host-names
. Его можно отключить с помощью confDONT_PROBE_INTERFACES в sendmail.mc
define(`confDONT_PROBE_INTERFACES',`True')
sendmail.mc необходимо перекомпилировать в sendmail.cf, демон sendmail необходимо перезапустить или включить HUP, чтобы увидеть новый sendmail.cf.
спасибо за попытку ответить на мой вопрос!
За выходные парень, который изначально настраивал сервер, наконец-то изменил sendmail.mc
со следующим (я только что получил его электронное письмо сегодня утром):
define(`confDOMAIN_NAME', `example.com')dnl
MASQUERADE_AS(`example.com')dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnl MASQUERADE_DOMAIN(`example.com')dnl define(`MAIL_HUB', `mailgw.example.com.')dnl
Теперь письма на @example.com
правильно перенаправляется на фактический почтовый сервер, обслуживающий @example.com
.
Спасибо за помощь, ребята!