К основному контенту

Postfix: Частые проблемы при работе, примеры из‑логов и пути решения

Ниже собрана «полевая» шпаргалка: какие неполадки в Postfix встречаются чаще всего, как они проявляются в логах (/var/log/maillog, /var/log/mail.log) и что делать, чтобы почтовая служба снова заработала.



Категория

Сообщение в логе (фрагмент)

Причина

Коротко о решении

DNS / MX

connect to mail.example.com[203.0.113.5]:25: Connection timed out

Запись MX ведёт на хост, который не отвечает или не имеет A/AAAA

‑ Проверьте dig MX example.com и telnet 203.0.113.5 25  исправьте DNS или фаервол.
‑ Убедитесь, что PTR‑запись (rDNS) совпадает с имёнем сервера.

Host or domain name not found. Name service error

Нет A/AAAA для MX‑хоста, либо /etc/resolv.conf указывает на недоступный DNS‑сервер

‑ Добавьте/исправьте запись в зоне.
‑ Укажите рабочие
DNS в resolv.conf или systemdresolved.

TLS / сертификаты

SSL_accept error:1408F10B:SSL routines:ssl3_get_record:wrong version number

Клиент/сервер пытается договориться на несовместимом протоколе (часто — запрет TLSv1.0

1.1)

certificate verification failed for ...: untrusted issuer

Удалённая сторона прислала цепочку без RootCA или у вас устаревшее CA‑хранилище

‑ Обновите ca-certificates.
‑ Либо добавьте промежуточный сертификат в
 /etc/postfix/cacert.pem.

SPF / DKIM / DMARC

NOQUEUE: reject: RCPT from ...: 554 5.7.1 SPF permanent error: _spf.example.com: No valid SPF record

SPF‑запись отсутствует или синтаксически неверна

‑ Сгенерируйте корректную запись v=spf1 ip4:... -all, опубликуйте в DNS.

DKIM verification failed: signature verification failed

Неправильный селектор или DNS‑ключ обрезан строковыми кавычками

‑ Проверьте dig TXT selector._domainkey.example.com. Поправьте кавычки/длину.

Очередь (mail queue)

warning: queue file size limit exceeded

Письмо превысило message_size_limit

‑ Увеличьте параметр или ограничьте пользователей на уровне MUA.

deferred: Connection timed out (увеличивается количество в postqueue -p)

Не доставляется — проблемы сети/антиспам

postqueue -f после устранения сети.
‑ Настройте
smtp_tls_security_level на may, если TLShandshake ломает доставку.

Релей и анти‑релей

Relay access denied

Хост не включён в mynetworks или SASL‑аутентификация не работает

‑ Добавьте IP в mynetworks и перезапустите, либо почините saslauthd/SMTPAUTH.

SASL / SMTP‑AUTH

warning: SASL authentication failure: cannot connect to saslauthd socket

demon saslauthd не запущен или неверный путь в pwcheck_method

‑ Запустите/включите saslauthd, убедитесь в run_path=/run/saslauthd.

SASL authentication failed: authentication failure

Неверный логин/пароль, несогласованные реалмы

‑ Проверьте учётку в backend (PAM, LDAP, SQL).

Greylisting / RBL

blocked using zen.spamhaus.org

Сервер‑отправитель в чёрном списке

‑ Если это ваш сервер — очистите репутацию, смените IP.
‑ Для приёма почты можно временно отключить конкретный
RBL (reject_rbl_client)

Local delivery / Mailbox

mailbox full или Quota exceeded

Дисковая квота Maildir

‑ Увеличьте quota в dovecot.conf или сократите почту.

unknown user: "alice@example.com"

Нет такого ящика в virtual_mailbox_maps

‑ Добавьте в таблицу и postmap‑ните, затем postfix reload.

Permissions / chroot

open database /etc/postfix/virtual.db: Permission denied (в chroot)

Неправильные права/SELinux

chgrp postfix virtual /etc/postfix/virtual*.
‑ Разрешите контекст postfix_maps_t в SELinux.

IP‑блокировки / firewall

connect to ...:25: Connection refused

Локальный или удалённый фаервол блокирует 25 порт

‑ Проверьте iptables -L, правила cloudprovider, откройте 25/TCP, 587/TCP.

Systemd / service

fatal: parameter "myhostname" value is the empty string при старте

В /etc/hostname пусто или не совпадает

‑ Заполните FQDN, postfix set-permissions, systemctl restart postfix.

IPv6 специфично

Network is unreachable (delivery temporarily suspended) для адресов xxxx:...

Отсутствует IPv6‑маршрут или firewall‑блок

‑ Выключите IPv6‑доставку: inet_protocols = ipv4, либо настройте сеть.

Submission/587

Cannot start TLS: handshake failure при подключении из‑MUA

smtpd_tls_cert_file или key_file не читается

‑ Проверьте права 0600, владелец postfix.
‑ Обновите сертификат.

Амальгама мелких ошибок

warning: Illegal address syntax from ...

Кавычки/пробелы в поле From

‑ Попросите отправителя исправить клиент или принять reject_non_fqdn_sender.

lost connection after AUTH from ...

Клиент не поддерживает выбранный механизм (например, OAUTHBEARER)

‑ Оставьте login plain для обратной совместимости.

Разрывы при больших письмах

timeout while receiving end of data -- message abandoned

smtp_data_xfer_timeout слишком мал или сеть нестабильна

‑ Увеличьте до 600 s.


---

Универсальный алгоритм отладки

  1. Смотрим логи: tail -f /var/log/mail.log во время попытки отправки/приёма.

  2. Проверяем DNS: dig MX +short yourdomain, dig -x your.ip.

  3. Тестируем порт 25/587: openssl s_client -starttls smtp -connect host:587.

  4. Очередь: postqueue -p → postcat -vq <queue‑id>.

  5. Конфигурация: postconf -n — только изменённые параметры.

  6. Перезапуск: postfix reload после правок; иногда требуется postfix stop && start.


Важно: в большинстве случаев решение либо в DNS‑записях, либо в сетевых фильтрах, либо в неправильной аутентификации. Систематический анализ логов и пошаговая проверка исключат 90 % загадочных «не ходит почта».

Комментарии

Популярные сообщения из этого блога

Настройка и подключение IPSec в Windows

Настройка IPSec на Windows включает в себя создание правил безопасности и фильтров для защиты сетевого трафика. Ниже — пошаговое руководство. Включение службы IPSec Перед настройкой убедитесь, что служба IPSec Policy Agent запущена: Нажмите Win + R , введите services.msc и нажмите Enter . Найдите IPsec Policy Agent . Если она не работает, нажмите ПКМ → Свойства . Установите Тип запуска: Автоматически , затем нажмите Запустить . Настройка политики IPSec через «Локальную политику безопасности» Нажмите Win + R , введите secpol.msc , нажмите Enter . Перейдите в Политики IP-безопасности в локальном компьютере . В правом окне нажмите Создать политику IP-безопасности → Далее . Укажите имя политики (например, "IPSec VPN"), снимите флажок Активировать правило по умолчанию , нажмите Далее . Нажмите Добавить , чтобы создать правило. Транспортный или туннельный режим : Если IPSec для защищенной локальной сети – выберите Транспортный режим . Если IPSec для VPN – выберите Туннельн...

Как найти и изменить репозитарии для CentOS 8

В CentOS 8 официальные репозитории (BaseOS, AppStream и Extras) управляются с помощью dnf и файлов конфигурации в /etc/yum.repos.d/ . Вот как их найти и изменить: 1. Просмотр текущих репозиториев dnf repolist Если нужно увидеть подробную информацию: dnf repolist all 2. Изменение репозиториев Файлы конфигурации репозиториев находятся в /etc/yum.repos.d/ . Например, основной репозиторий может быть в файле CentOS-AppStream.repo . Открыть его можно так: nano /etc/yum.repos.d/CentOS-AppStream.repo Внутри можно изменить: enabled=1 → включает репозиторий enabled=0 → отключает репозиторий baseurl= или mirrorlist= → задать новый источник пакетов 3. Замена недоступных репозиториев CentOS 8 достиг конца поддержки , и официальные зеркала больше не работают. Вместо них можно подключить Vault или AlmaLinux/Rocky Linux : Использование архивного репозитория CentOS Vault Создайте резервную копию старых .repo файлов: mkdir /root/repo-backup && mv /etc/yum.repos.d/*.repo /root/repo-backu...

Пример по настройке и конфигурации IPsec-туннеля для безопасного соединения сетей

IPsec (Internet Protocol Security) используется для обеспечения безопасного обмена данными между сетями. В данной инструкции описывается настройка IPsec между двумя криптошлюзами:  GW-Alpha  (192.168.100.1) и  GW-Beta  (192.168.200.1). Все параметры вымышленные, но соответствуют типовым настройкам. Команды, использованные в инструкции, относятся к конфигурации VyOS или EdgeRouter (Ubiquiti) . Эти устройства используют синтаксис команд CLI, схожий с Juniper Junos, но ориентированный на программное обеспечение с открытым исходным кодом. Ниже приведены примеры для  Cisco, Mikrotik, Fortinet или pfSense , 1. Фазы работы IPsec IPsec работает в два основных этапа: Фаза 1 (IKE – Internet Key Exchange) Фаза 1 предназначена для установления безопасного канала между двумя узлами. Она включает в себя: Аутентификацию сторон – используется либо предварительно разделенный ключ (PSK), либо цифровые сертификаты. Обмен ключами – осуществляется с использованием алгоритма Диффи...