Я застрял с проблемой, связанной с Postfix MX.
Я только что перенес очень старый сервер Centos 5 на v7, поэтому я использую postfix -2.10.1-7.el7.x86_64. Я обновил устаревшую конфигурацию постфикса (возможно, причина этого ада) и другие дополнительные вещи, которые, похоже, работают:
После многих невзгод Я думаю, что у меня работает большая часть системы, за исключением раздражающих проблем, связанных с MX, например (из / var / log / maillog):
Mar 28 14:26:48 tormento postfix/smtpd[1021]: warning: Unable to look up MX host for spmailtechn.com: Host not found, try again
Mar 28 14:26:51 tormento postfix/smtpd[1052]: warning: Unable to look up MX host for inlumine.ual.es: Host not found, try again
Mar 28 14:31:38 tormento postfix/smtpd[1442]: warning: Unable to look up MX host for aol.com: Host not found, try again
Mar 28 13:07:53 tormento postfix/smtpd[26556]: warning: Unable to look up MX host for hotmail.com: Host not found, try again
Mar 28 13:12:06 tormento postfix/smtpd[26650]: warning: Unable to look up MX host for facebookmail.com: Host not found, try again
Mar 28 13:12:31 tormento postfix/smtpd[26650]: warning: Unable to look up MX host for joker.com: Host not found, try again
Mar 28 13:13:02 tormento postfix/smtpd[26650]: warning: Unable to look up MX host for bounce.linkedin.com: Host not found, try again
и:
Mar 28 14:50:36 tormento postfix/smtp[1700]: 7B6C69C6A2: to=<ismael.olea@gmail.com>, orig_to=<ismael@olea.org>, relay=none, delay=1142, delays=1142/0.07/0/0, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=gmail.com type=MX: Host not found, try again)
Mar 28 14:32:05 tormento postfix/smtp[1383]: 721A19C688: to=<XXXXX@yahoo.com>, orig_to=<XXXX@olea.org>, relay=none, delay=4742, delays=4742/0/0/0, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=yahoo.com type=MX: Host not found, try again)
в качестве примеров.
Первым подозреваемым является разрешение DNS, но это работают как с использованием DNS-серверов Hetztner (где компьютер является хостом), так и с 8.8.8.8 или 9.9.9.9.
$ cat /etc/resolv.conf
; generated by /usr/sbin/dhclient-script
nameserver 213.133.100.100
nameserver 213.133.98.98
nameserver 213.133.99.99
и / etc / hosts:
195.201.24.84 tormento tormento.olea.org
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4
# The following lines are desirable for IPv6 capable hosts
::1 tormento tormento.olea.org
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
Боюсь, я упускаю что-то действительно очевидное, но Я два дня гуглил, выполняя любое количество тестов, и теперь не знаю, что еще делать.
Поскольку Serverfault отклонил мой исходный вопрос как спам, я поместил данные журнала и конфигурации в свой личный блог: http://olea.org/diario/2019/03/28/Postfix_MX_not_found.html
Заранее спасибо.
Что ж, это неловко. Как я и предсказывал, моя проблема была вызвана самой очевидной и тривиальной причиной: отсутствие доступа для чтения к /etc/resolv.conf для пользователя postfix o_0
Как вы, вероятно, знаете подпроцессы postfix (smtp, smtpd, qmgr и т. Д.) работает с пользователем postfix. Все полученные мной комментарии и предложения были связаны с проблемами доступа к данным разрешения DNS, и обычно подозреваемыми были SELinux или chrooted postfix. Вы все были правы в последней причине. Последовав совету и попробовал:
# sudo -u postfix -H cat /etc/resolv.conf
cat: /etc/resolv.conf: Permission denied
Итак ... Что ??
# ls -l /etc/resolv.conf
-rw-r-----. 1 root named 118 mar 28 20:34 /etc/resolv.conf
OMG! ... тогда после chmod o + r и перезапуска Postfix вся заблокированная электронная почта может быть обработана и отправлена, а новая почта будет обработана как
Я сомневаюсь, что изменил разрешения на чтение resolv.conf, но не могу быть уверен на 100%. Итак, наконец, проблема решена, и мне очень жаль, что я привлек внимание всех вас по этой нелепой причине. Спасибо вам всем.
шаг 1. Я проверяю gmail.com на доступ к записи mx на моем сервере. сначала я установил сервер привязки с помощью yum install bind-utils
и проверил gmail.com с помощью следующей команды:
root@host# host -t mx gmail.com
;; connection timed out; no servers could be reached
итак, я изменил свой DNS-сервер на 8.8.8.8
с помощью nmtui команду и перезагрузите мой сервер ...
после перезагрузки я выполняю host -t mx gmail.com, и мой тайм-аут был исправлен thsi houtput:
root#host# host -t mx gmail.com
gmail.com mail is handled by 10 alt1.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 30 alt3.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 20 alt2.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 40 alt4.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 5 gmail-smtp-in.l.google.com.
Но основная проблема для меня еще не решена ... итак, Я выполнил шаг 2 ...
шаг 2. На моем сервере нет папки и т. Д. На / var / spool / postfix /
. Итак, я создал папку и т. Д. Вручную ... Затем скопируйте на нее три файла. /etc/host.conf
, /etc/resolv.conf и / etc / servoces
root@host# mkdir /var/spool/postfix/etc
root@host# cp /etc/host.conf /var/spool/postfix/etc/
root@host# cp /etc/resolv.conf /var/spool/postfix/etc/
root@host# cp /etc/services /var/spool/postfix/etc/
Основная проблема MX еще не решена ...
шаг 3. Я меняю режим /etc/resolv.conf
и / var / pool / postfix / etc / *
на 1777
и наконец исправил свою проблему
root@host# chmod 1777 /etc/resolve.conf
root@host# chmod 1777 -R /var/spool/postfix/etc
. перезапустите службу postfix, используя systemctl restart postfix.service
, и мой smtp работал нормально!