icomHOST

Wszystko o domenach i hostingach

Dlaczego poczta nie dochodzi mimo poprawnych ustawień

Dlaczego poczta nie dochodzi mimo poprawnych ustawień

Poczta elektroniczna bywa zdradliwa: konfiguracja wygląda poprawnie, test SMTP przechodzi, a mimo to wiadomości nie docierają do odbiorców albo znikają „po drodze”. W środowiskach hostingowych i na serwerach VPS/dedykowanych problem rzadko wynika z jednego błędu. Najczęściej to splot reputacji, polityk antyspamowych, ustawień DNS, limitów, błędów aplikacji oraz nieoczywistych odpowiedzi z serwerów zewnętrznych. Poniżej znajdziesz praktyczne powody, dla których poczta nie dochodzi mimo pozornie prawidłowych ustawień, oraz sposoby diagnozowania i naprawy.

Ścieżka dostarczenia maila: co może pójść nie tak po drodze

Zanim przejdziemy do konkretnych awarii, warto uporządkować, jak wygląda proces dostarczenia. Aplikacja lub klient wysyła wiadomość do serwera wychodzącego (MTA, np. Postfix/Exim). Ten serwer rozwiązuje DNS domeny odbiorcy (rekordy MX), łączy się z docelowym MTA i próbuje przekazać pocztę. Jeśli nie jest to możliwe, wiadomość trafia do kolejki i jest ponawiana. W tym łańcuchu występuje kilka „punktów kontrolnych”, w których wiadomość może zostać odrzucona, opóźniona albo trafić do spam/quarantine.

Najczęstszy błąd myślowy polega na tym, że „ustawienia są poprawne”, bo:

  • konto SMTP loguje się i wysyła testowo,
  • DNS domeny wydaje się prawidłowy,
  • wiadomość „wyszła” z formularza lub skryptu,
  • nie widać błędu w panelu hostingowym.

Tymczasem o sukcesie decydują: reputacja IP/domeny, zgodność z politykami odbiorcy, autoryzacja (SPF/DKIM/DMARC), brak blokad sieciowych, poprawna identyfikacja hosta (PTR/HELO), oraz to, czy serwer poprawnie obsługuje zwrotki i kolejkę.

Odrzucenie, soft-fail i „cisza”

Odpowiedź serwera odbiorcy może być natychmiastowa (hard reject) albo tymczasowa (4xx). Przy odpowiedzi 4xx wiadomość nie „ginie” — powinna zostać w kolejce i być ponawiana, aż do przekroczenia czasu życia. Zdarza się jednak, że użytkownik nie widzi opóźnień, bo wiadomość nie wraca jako błąd, a dostarczenie następuje po godzinach. W hostingach współdzielonych bywa, że kolejka jest duża, a dostarczanie spowalniają limity.

DNS i autoryzacja nadawcy: SPF, DKIM, DMARC oraz pułapki rekordów

Wymagania antyspamowe w ostatnich latach mocno się zaostrzyły. Dziś samo posiadanie poprawnego loginu SMTP to za mało. Odbiorcy (szczególnie duzi: Gmail, Microsoft, Yahoo) weryfikują spójność tożsamości nadawcy, a błędy w DNS są jedną z głównych przyczyn niedostarczania.

SPF: „poprawny rekord” to nie zawsze działający rekord

Rekord SPF określa, które serwery mogą wysyłać pocztę w imieniu domeny. Problem polega na tym, że SPF potrafi być formalnie obecny, ale praktycznie bezużyteczny.

  • Permutation: wysyłasz z innego IP niż to, które jest dopuszczone w SPF (np. serwer aplikacji wysyła bezpośrednio, a SPF dopuszcza tylko serwer hostingu).
  • Mechanizmy include tworzą zbyt dużo zapytań DNS (limit 10 lookupów). Po przekroczeniu limitu wiele serwerów traktuje SPF jako błąd permanentny.
  • Masz dwa rekordy SPF typu TXT — częsty błąd przy łączeniu usług (np. hosting + newsletter). Wtedy część walidatorów uzna SPF za nieważny.
  • Zakończenie polityki (~all vs -all) bywa źle dobrane. Dla domen produkcyjnych zwykle dąży się do jasno określonej polityki, ale tylko wtedy, gdy masz pewność, że wszystkie źródła wysyłki są ujęte.

DKIM: podpis jest, ale nie w tej domenie albo nie przechodzi weryfikacji

DKIM podpisuje treść i nagłówki, co ma potwierdzić, że wiadomość nie została zmieniona w drodze oraz że wysłał ją podmiot dysponujący kluczem prywatnym. Typowe problemy:

  • Rekord DKIM istnieje, ale serwer nie podpisuje wiadomości (np. wysyłka przez funkcję PHP mail() omija podpisywanie, jeśli MTA nie jest skonfigurowany do DKIM).
  • Niewłaściwy selector, brak aktualizacji rekordów po migracji.
  • Zbyt „agresywne” modyfikowanie wiadomości przez pośredników (np. bramki, filtry, stopki dodawane po podpisaniu) — podpis nie przechodzi.

DMARC: polityka, raporty i przypadki, gdy DMARC sam blokuje pocztę

DMARC scala SPF i DKIM, wprowadza pojęcie zgodności domen (alignment) i pozwala odbiorcy stosować politykę: none/quarantine/reject. To potężne narzędzie, ale źle wdrożone może uciąć dostarczalność:

  • Masz ustawione reject, ale część źródeł wysyłki nie przechodzi SPF/DKIM — odbiorcy odrzucają.
  • Forwarding (przekazywanie) często łamie SPF, a jeśli DKIM nie przechodzi lub nie jest aligned, DMARC może zablokować wiadomość.
  • Brak monitoringu raportów DMARC powoduje, że problem trwa tygodniami, bo nikt nie widzi, które systemy wysyłają w imieniu domeny.

MX, A/AAAA i szczegóły, które bolą

Oprócz autoryzacji liczą się też „pozornie drobne” elementy DNS:

  • MX wskazuje na host, który nie ma działającego serwera poczty (błędna migracja, literówka, usunięty rekord A).
  • Brak IPv4, a jest tylko IPv6 (lub odwrotnie). Część serwerów nadal ma problemy z niektórymi ścieżkami IPv6, co może dawać losowe opóźnienia.
  • Zbyt niski TTL podczas migracji i „stare” cache’e po stronie odbiorców, przez co część ruchu trafia na stary serwer.

Reputacja IP i domeny: gdy technicznie jest OK, ale odbiorca nie ufa

Wysyłka z serwera to również kwestia reputacji. Możesz mieć poprawne SPF/DKIM/DMARC, a i tak trafiać do spamu lub być odrzucanym, bo adres IP lub domena mają złą historię. W hostingach współdzielonych to wyjątkowo częste — jeden „sąsiad” potrafi pogorszyć ocenę całej puli IP.

Listy RBL/blacklist i blokady operatorów

Jeśli Twoje IP trafi na listę RBL, część serwerów odbiorczych będzie odrzucać wiadomości natychmiast. Przyczyny:

  • wysyłka dużej liczby wiadomości (nawet legalnej) bez rozgrzewania IP,
  • kompromitacja skrzynki i wysyłka spamu przez zalogowanego użytkownika,
  • błędnie skonfigurowany serwer (open relay, podatność w formularzu),
  • współdzielone IP z innymi klientami hostingu.

PTR/rDNS i zgodność HELO/EHLO

W świecie serwerów pocztowych nadal ważne są podstawy „higieny”:

  • IP powinno mieć poprawny PTR wskazujący na nazwę hosta.
  • Nazwa z PTR powinna mieć rekord A/AAAA wracający na to IP (FCrDNS).
  • Serwer powinien wysyłać HELO/EHLO, które nie wygląda podejrzanie (np. „localhost”).

Nawet jeśli część dostawców przymyka oko, inni wykorzystują te sygnały jako element punktacji antyspamowej. Efekt: wiadomości nie tyle nie wychodzą, co są „przycinane” na etapie akceptacji przez serwer odbiorcy.

Wysyłka z IP hostingu a domena „bez historii”

Nowa domena lub nowy serwer potrafią mieć gorszą dostarczalność tylko dlatego, że nie mają wypracowanej reputacji. Przy większych wolumenach konieczne jest stopniowe zwiększanie liczby wiadomości (tzw. warm-up). Bez tego odbiorcy mogą stosować ograniczenia, a nawet tymczasowe blokady (4xx), które generują opóźnienia.

Konfiguracja serwera i hostingu: limity, kolejki, filtry i błędy aplikacji

Jeżeli DNS i reputacja wyglądają dobrze, problem często tkwi „lokalnie”: w MTA, filtrach, limitach panelu lub w samej aplikacji wysyłającej.

Kolejka MTA i opóźnienia: wiadomość wysłana ≠ dostarczona

Administratorzy często patrzą na logi aplikacji („wysłano”), ale kluczowe są logi MTA. Wiadomość może utknąć w kolejce, jeśli:

  • serwer odbiorcy zwraca 4xx (greylisting, tempfail),
  • Twoje IP ma ograniczenia rate limit po stronie odbiorcy,
  • DNS czasowo nie odpowiada,
  • na serwerze są problemy z resolverem lub z siecią.

W praktyce oznacza to, że mail może dojść po 30 minutach albo po 6 godzinach, a użytkownik uzna to za „nie dochodzi”.

Limity hostingu: throttle, limity godzinowe i blokady antyspamowe

Na hostingach współdzielonych spotyka się limity typu: X wiadomości na godzinę/dzień, limit liczby odbiorców w jednym mailu, limit równoległych połączeń SMTP. Gdy limit zostanie przekroczony:

  • część wiadomości jest odrzucana lokalnie,
  • część trafia do kolejki z dużym opóźnieniem,
  • konto wysyłkowe bywa czasowo blokowane.

W panelu może nie być jasnej informacji, a aplikacja dostaje ogólny błąd, który ginie w logach.

Filtry antywirusowe i antyspamowe po stronie serwera nadawcy

Serwer może sam odrzucać lub „kwarantannować” pocztę wychodzącą, jeśli lokalne filtry uznają treść za podejrzaną. Dotyczy to zwłaszcza:

  • załączników wykonywalnych lub archiwów z hasłem,
  • wiadomości z podejrzanymi linkami,
  • maili generowanych masowo z podobną treścią.

Bywa, że administrator widzi tylko to, że wiadomości „nie ma u odbiorcy”, podczas gdy została zatrzymana już na serwerze wysyłającym.

Błędy aplikacji: nagłówki, kodowanie, błędny envelope-from

Aplikacje wysyłające (CMS, sklepy, systemy CRM) potrafią generować wiadomości, które formalnie są niepoprawne lub wyglądają jak fałszerstwo:

  • niepoprawny nagłówek From (np. inna domena niż domena serwera),
  • brak poprawnego Message-ID,
  • zła składnia MIME, mieszanie kodowań, uszkodzone załączniki,
  • nieprawidłowy envelope-from powoduje, że zwrotki (bouncy) nie wracają i nie widzisz błędów dostarczenia.

PHP mail() vs SMTP: różnica, która zmienia wszystko

Wiele stron nadal wysyła przez lokalne mail() zamiast przez uwierzytelniony SMTP. To może działać, ale często pogarsza dostarczalność, bo:

  • wysyłka idzie z IP serwera WWW, nie z dedykowanego serwera pocztowego,
  • łatwiej o błędy nagłówków,
  • trudniej spiąć to z DKIM i kontrolą ruchu,
  • łatwiej o nadużycia przy lukach w formularzach.

Odbiorca też ma znaczenie: przekierowania, duplikacja filtrów i „znikanie” w spamie

Problem nie musi leżeć po stronie nadawcy. Coraz częściej wiadomość jest przyjmowana przez serwer odbiorcy, ale trafia do spamu, kwarantanny lub jest kasowana według polityk organizacji.

Spam folder i firmowe bramki bezpieczeństwa

Duże organizacje korzystają z bramek typu secure email gateway. Wiadomość może zostać:

  • przekierowana do kwarantanny bez informacji dla odbiorcy,
  • opóźniona do czasu skanowania,
  • odrzucona, jeśli linki są ocenione jako ryzykowne.

W efekcie nadawca widzi „wysłane”, odbiorca „nic nie dostał”, a jedynym dowodem bywa log w bramce lub raport administratora domeny odbiorcy.

Forwarding i aliasy: klasyczny zabójca SPF

Przekazywanie poczty (np. z adresu w domenie firmowej na prywatny Gmail) często powoduje, że SPF nie przechodzi, bo mail jest dostarczany z serwera pośredniczącego. Jeśli DKIM nie jest stabilny, a DMARC jest restrykcyjny, mail może zostać odrzucony mimo „poprawnych ustawień” na serwerze nadawcy.

Duplikacja polityk: DKIM/DMARC przechodzi, ale treść wygląda jak phishing

Odbiorcy oceniają nie tylko autoryzację, ale też treść i kontekst. Wiadomość może zostać odfiltrowana, gdy:

  • podszywa się stylistycznie pod bank/kuriera (frazy, układ),
  • zawiera skrócone linki lub domeny o słabej reputacji,
  • ma niezgodność domen w linkach (np. From: twojadomena.pl, linki do innej domeny),
  • ma nietypowe załączniki lub makra.

Diagnostyka krok po kroku: jak znaleźć przyczynę, a nie zgadywać

Najlepsza diagnostyka zaczyna się od danych. Jeśli mail „nie dochodzi”, potrzebujesz potwierdzić, na którym etapie zniknął: aplikacja → MTA nadawcy → serwer odbiorcy → skrzynka użytkownika.

Sprawdź logi i status w kolejce

Na serwerze pocztowym kluczowe są logi MTA oraz informacja, czy wiadomość wisi w kolejce. W logach szukaj odpowiedzi z serwera docelowego (kody 5xx lub 4xx) oraz przyczyny odrzucenia. Jeśli widzisz 4xx, problem to zwykle opóźnienie, limity albo reputacja, a nie „zła konfiguracja konta”.

Weryfikuj autoryzację na realnej wiadomości

Test rekordów DNS „na sucho” bywa mylący. Najpewniejsze jest sprawdzenie nagłówków dostarczonej wiadomości na skrzynce testowej i ocena:

  • czy SPF ma pass, softfail czy fail,
  • czy DKIM jest podpisany i ma pass,
  • czy DMARC ma pass i czy alignment jest zgodny.

Kontroluj tożsamość serwera i sieć

Zweryfikuj, czy IP ma PTR, czy PTR pasuje do HELO, oraz czy serwer nie wychodzi na świat z innego adresu niż zakładasz (np. NAT, dodatkowy interfejs, zmiana routingu). W środowiskach VPS zdarza się, że administrator konfiguruje DNS, ale zapomina o rDNS ustawianym u dostawcy.

Sprawdź, czy nie wysyłasz „za dużo” lub „za szybko”

Jeżeli wysyłasz newsletter lub powiadomienia systemowe, pilnuj tempa. Warto wdrożyć kolejkę aplikacyjną i kontrolę rate limit, aby nie generować nagłych skoków wolumenu z jednego IP. To jedna z najczęstszych przyczyn tymczasowych blokad i długich opóźnień.

Najczęstsze scenariusze z hostingu i serwerów: przykłady, które wyglądają „jakby było dobrze”

Poniżej kilka realnych schematów awarii, które regularnie pojawiają się w środowiskach hostingowych:

Scenariusz 1: Migracja strony na VPS i „nagle maile nie dochodzą”

Strona działa, SMTP testuje się poprawnie, ale maile z formularza kontaktowego nie docierają. Powód: formularz korzysta z mail(), a serwer VPS wysyła bez DKIM, bez poprawnego PTR i z „gołej” reputacji IP. Odbiorcy przyjmują, ale wrzucają do spamu albo odrzucają. Naprawa: wysyłka przez uwierzytelniony SMTP, konfiguracja DKIM, ustawienie rDNS, dopięcie DMARC i stopniowe budowanie reputacji.

Scenariusz 2: Dwa rekordy SPF po podpięciu narzędzia marketingowego

Administrator dopisuje drugi TXT „v=spf1 …” zamiast scalić mechanizmy w jeden rekord. Część odbiorców uznaje SPF za invalid. Skutek: losowa dostarczalność, czasem odrzucenia. Naprawa: jeden rekord SPF, kontrola lookupów DNS i porządek w include.

Scenariusz 3: „Nie ma bounce, nie ma błędu”

Wiadomości „znikają”, a zwrotki nie przychodzą. Często winny jest błędny envelope-from lub brak działającej skrzynki zwrotnej. Serwer odbiorcy nie ma gdzie odesłać informacji o odrzuceniu. Naprawa: poprawny adres zwrotny, działająca obsługa bounce i monitoring statusów dostarczenia.

Scenariusz 4: Współdzielone IP hostingu trafia na blokadę

Klient ma idealne DNS i treści, ale nadal jest problem. Przyczyna: IP hostingu ma złą reputację. Naprawa: przejście na wysyłkę przez zewnętrznego dostawcę SMTP lub na IP dedykowane, ograniczenie wolumenu, audyt bezpieczeństwa kont.

Jak zapobiegać problemom: praktyki, które podnoszą skuteczność dostarczania

Jeśli chcesz, aby poczta dochodziła stabilnie, warto traktować ją jak usługę krytyczną, a nie dodatek do hostingu.

  • Utrzymuj spójne SPF/DKIM/DMARC i monitoruj raporty DMARC.
  • Dbaj o logi i alerty: kolejka, błędy 4xx/5xx, wzrost odrzuceń.
  • Stosuj uwierzytelniony SMTP zamiast mail().
  • Zapewnij poprawny PTR i sensowne HELO.
  • Rozważ IP dedykowane lub renomowaną usługę wysyłkową, gdy rośnie wolumen.
  • Weryfikuj treść i linki pod kątem filtrów antyspamowych; unikaj „ryzykownych” wzorców.
  • Chroń formularze i konta przed nadużyciami (CAPTCHA, limity, WAF), bo kompromitacja natychmiast niszczy reputację.

Jeżeli mimo to pojawiają się problemy, najważniejsze jest ustalenie faktów: czy serwer odbiorcy przyjął wiadomość, czy nastąpiło odrzucenie, czy jest opóźnienie w kolejce, czy mail trafił do spamu, oraz czy autoryzacja domeny przechodzi w rzeczywistych nagłówkach. Dopiero wtedy „poprawne ustawienia” przestają być wrażeniem, a stają się mierzalną konfiguracją, którą można skutecznie utrzymać.