Почему письма, отправленные через мой локальный почтовый сервер, доходят с задержкой в несколько дней?

У меня локальный сервер: некоторые письма отсылаются сразу, но доходят с задержкой, тогда как на другую почту приходят нормально — в чём может быть причина?
  • 1 апреля 2026 г. 13:00
Ответы на вопрос 2
Кратко — задержки почти всегда связаны не с «магией» почтового клиента, а с политикой/настроем почтовых серверов по пути (вашего или получателя) или с DNS/репутацией вашего IP. То, что часть писем доходит сразу, а часть с задержкой, сильно указывает на то, что именно некоторые получатели (или промежуточные хосты) временно отклоняют (4xx) или замедляют приём.

Что проверить первым делом
- Посмотреть логи вашего MTA (Postfix/Exim/Sendmail). Ищите строки с "deferred", "status=deferred", "timeout", "450", "421", "greylist" и т. п.
  - Postfix: tail -f /var/log/mail.log или journalctl -u postfix; mailq / postqueue -p; postcat -q <ID>
  - Exim: exim -bp; tail -f /var/log/exim/mainlog; exim -Mvl <ID>
- Посмотреть заголовки письма, когда оно придёт: цепочка Received покажет, какой сервер долго держал письмо.
- Проверить очередь исходящих сообщений: есть ли много писем/старые письма в очереди.
- Проверить ответ удалённого SMTP при доставке (в логах будет код 4xx/5xx и текст).

Наиболее частые причины и как их отличить
1. Greylisting у получателя
   - Получатель отвечает 4xx при первой попытке; сервер ожидает повторной отправки через минут/час.
   - Логи: "450 4.2.0 try again later", "greylist".
   - Решение: ничего сделать нельзя со стороны отправителя, только повторные попытки MTA; можно использовать smarthost с хорошей репутацией, который обычно не грейлистится.

2. Ограничения/троттлинг у получателя
   - Крупные провайдеры (Google, Microsoft, Yahoo и др.) могут ограничивать скорость приёма с новых/неавторизованных IP.
   - Логи: сообщения о "rate limit", "too many connections", или просто много повторных попыток.
   - Решение: поднять репутацию, уменьшить частоту отправки, использовать smarthost.

3. DNS / обратная запись (PTR), SPF/DKIM/DMARC проблемы
   - Если у вашего IP нет корректного PTR или DNS/HELO не совпадает — некоторые серверы ставят в очередь или сильно фильтруют.
   - Проверяйте: PTR, SPF запись, DKIM подписи, DMARC политика.
   - Инструменты: dig, host, online-валидаторы (mxtoolbox и пр.).
   - Решение: настроить PTR на ваш FQDN; настроить SPF, DKIM; корректный HELO/hostname.

4. IP в RBL/черных списках
   - Некоторые провайдеры при обнаружении IP в списке задерживают или проверяют письма вручную.
   - Проверка: mxtoolbox, multi-rbl, командные запросы к RBL.
   - Решение: запрос на делистинг после устранения причины; использовать сервис отправки почты.

5. ISP блокирует/маршрутизирует SMTP (динамический IP, порт 25)
   - Если у вас динамический адрес или провайдер ограничивает исходящую почту, писем может не быть или их релоадить через smarthost.
   - Проверка: попытка telnet IP:25 к внешним MX; узнать, не перенаправляет ли провайдер трафик.
   - Решение: запросить статический IP, использовать SMTP-Relay провайдера или сторонний SMTP (SendGrid, Mailgun и т. п.) на 587.

6. Ошибки сетевого уровня / IPv6-вопросы
   - Сервер пробует соединяться по IPv6, но связь не работает — и только после таймаута пробует IPv4.
   - Логи: "connect to [IPv6]:25: Network is unreachable" и затем попытка по IPv4.
   - Решение: настроить правильные A/AAAA записи, отключить/исправить некорректный IPv6.

7. Проблемы на вашей стороне MTA (застрявшие очереди, конфигурация retry)
   - Неправильные retry-интервалы или проблемы с памятью/CPU приводят к задержкам.
   - Проверка: состояние очереди, нагрузка сервера, конфиг retry в Postfix (smtpd_* параметры).
   - Решение: починить конфигурацию, увеличить ресурсы, очистить/переслать очередь.

Что можно сделать прямо сейчас (пошагово)
1. Посмотрите логи на момент отправки (grep по Message-ID или по адресу получателя).
2. Смотрите код отклика: 4xx = временная ошибка (будет повторная попытка и возможна задержка), 5xx = постоянная ошибка (bounce).
3. Проверьте очередь: mailq / postqueue -p / exim -bp.
4. Проверьте PTR, SPF, DKIM, DMARC и наличие в RBL.
5. Посмотрите заголовки уже пришедших задержанных писем — они покажут, где произошло ожидание.
6. При возможности используйте relay (ISP/SMTP-провайдер) — быстрое решение для надёжной доставки.

Если хотите, могу помочь конкретнее — пришлите:
- Фрагмент логов (строки с попытками доставки для проблемного письма),
- Заголовки (полный Received) одного из задержанных писем,
- Вывод mailq/postqueue -p или exim -bp,
- Название MTA (Postfix/Exim/Sendmail) и пример домена/получателя, куда письма задерживаются.

Это позволит точно указать причину и предложить исправление.
в админке mailcow: System → Configuration → Quarantine, подними порог score или отключи совсем. А конкретных отправителей вайтлисти через Email Setup → Mailboxes → твой ящик → Spam Filter. <br/> <br/> p.s. если задержка прям на дни — проверь ещё greylisting, он первые письма от незнакомых серверов притормаживает
Похожие вопросы