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

Ошибка пересылки электронной почты root exim4

Прежде чем кто-нибудь спросит, да, я прочитал другие 50 веток об этом, но ни один из них не работал. (И моя репутация настолько низка, что я не могу комментировать существующие темы, поэтому мне приходится перезапускать этот пост снова.)

Я успешно настроил пересылку mdadm на servermonitoring@example.org (размещенный в Google) с помощью exim4, но любые электронные письма, отправленные на root, не маршрутизируются правильно. Все в конечном итоге отправляются прямо на root@example.org, который взрывается, так как в настоящее время не существует. Я запустил newalises, перезапустил exim4 и т.д., и никакой радости. Я знаю, что это должно быть просто, но я просто не совсем понимаю, в чем проблема.

Пара небольших заметок перед появлением файлов конфигурации:

  1. rDNS не настроен, так как это случайный домашний сервер. (Запись MX для домена указывает на gmail, поскольку gmail обрабатывает фактический хостинг электронной почты домена.)
  2. Эта ветка кажется близким к правильному, но имя хоста моего сервера не имеет формата asdf.example.org, поэтому я не совсем уверен, как его перевести. (Различные попытки не совсем сработали.)

Имя хоста системы:

root@zetaServer:~# hostname
zetaServer

Содержимое / etc / aliases:

postmaster:    root
root: servermonitoring@example.org, /root/mailbox

Содержимое /root/.forward:

servermonitoring@example.org

Содержимое /etc/exim4/update-exim4.conf.conf:

dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1 ; ::1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.gmail.com::587'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

Содержимое / var / log / exim4 / mainlog после отправки тестового электронного письма:

root@zetaServer:~# echo test | mail -s "test message" root
root@zetaServer:~# tail /var/log/exim4/mainlog -n 3
2016-11-24 20:55:29 1cA7bl-0006Xf-K0 <= root@example.org U=root P=local S=482
2016-11-24 20:55:30 1cA7bl-0006Xf-K0 => root@example.org R=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com [74.125.28.109] X=TLS1.2:RSA_AES_128_CBC_SHA1:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=smtp.gmail.com" A=gmail_login C="250 2.0.0 OK 1480046130 c15sm63433639pfd.36 - gsmtp"
2016-11-24 20:55:30 1cA7bl-0006Xf-K0 Completed

Ошибка Gmail:

Delivery to the following recipient failed permanently:

root@example.org

Я знаю, что должен быть рядом ... Просто нужна небольшая помощь.

АГА! Я понял!

Мне нужно было установить имя хоста самого моего сервера (zetaServer) в качестве системного почтового имени, а не example.org! :)

Поскольку вы находитесь в домашней сети, маловероятно, что вы получите действующий rDNS, и ваше имя хоста, скорее всего, будет недействительным. Хотя должно получиться что-то вроде myhost.example.org.

Попробуйте настроить ввод пароля для Gmail в /etc/exim/passwd.client. Проверьте конфигурацию аутентификации, чтобы убедиться, что код аутентификации клиента не закомментирован. (Я считаю, что он включен по умолчанию.) Используйте действительные учетные данные для своей учетной записи Gmail.

Проверьте файл (ы) журнала в /var/log/exim4 для любых сообщений, указывающих, почему сообщение не удалось. Неудачные сообщения должны были быть возвращены в локальную учетную запись. В файле журнала должна отображаться локальная доставка сообщения о недоставке.

Exim не будет доставить как root, поэтому, если вы хотите локальную доставку для root-доступа real-root как местный адрес. Лучше всего использовать псевдоним root для локального пользователя и использовать псевдоним для удаленной доставки. Тогда будет проще выполнять отказы и локальную доставку. Для локальной доставки при использовании настройки smarthost поставьте перед нужным пользователем префикс real- который будет обходить удаленный псевдоним.