Poradnik PepperTools
Technika i serwery

Prawidłowa konfiguracja e-mail: SPF, DKIM i DMARC dla początkujących (Część 3 z 3)

Część 3 serii „Własny serwer – od 0 do bezpieczeństwa": konfiguracja SPF, DKIM i DMARC tak, by Twoje e-maile były bezpiecznie dostarczane i nie trafiały do spamu. Z rekordami DNS do skopiowania, OpenDKIM na własnym serwerze i darmowymi narzędziami testowymi.

Prawidłowa konfiguracja e-mail: SPF, DKIM i DMARC dla początkujących (Część 3 z 3)

Prawidłowa konfiguracja e-mail: SPF, DKIM i DMARC dla początkujących (Część 3 z 3)

Seria „Własny serwer – od 0 do bezpieczeństwa" · 3 części:

  1. Konfiguracja i zabezpieczenie serwera Debian vServer
  2. Instalacja i konfiguracja Froxlora
  3. Prawidłowa konfiguracja e-mail: SPF, DKIM i DMARCJesteś tutaj

Ten poradnik to Część 3 i kończy serię. Zakłada serwer z serwerem poczty, jaki zbudowały Część 1 i Część 2.

SPF, DKIM und DMARC für Einsteiger

Spis treści


W skrócie: SPF, DKIM i DMARC to trzy rekordy w DNS Twojej domeny. Dowodzą, że e-mail naprawdę pochodzi od Ciebie. Bez nich Twoje wiadomości dziś często lądują w spamie – albo są całkiem odrzucane. Od 2024 Google i Yahoo wymagają tej autentykacji, Microsoft od 2025. Konfiguracja zajmuje 20–30 minut.

Jeśli wysyłasz e-maile przez własny serwer (np. faktury lub wiadomości z formularza kontaktowego), nie wystarczy „po prostu" prowadzić serwer poczty. Musisz też udowodnić serwerom odbierającym, że mail jest prawdziwy. Służą do tego trzy elementy. Skonfigurujemy wszystkie trzy – przyjaźnie początkującym i do skopiowania.

Wymagania wstępne

  • Serwer z serwerem poczty (Postfix/Dovecot), np. skonfigurowany przez Froxlora z Części 2.
  • Dostęp do zarządzania DNS Twojej domeny – obszar u dostawcy domeny (lub w Froxlorze, jeśli tam zarządzasz DNS), w którym możesz tworzyć „rekordy TXT".
  • Adres IP Twojego serwera.

Ważne – właściwa kolejność: Najpierw skonfiguruj SPF i DKIM i poczekaj, aż oba będą aktywne (co najmniej kilka godzin), zanim włączysz DMARC na ostro. I zawsze zaczynaj DMARC od łagodnego ustawienia p=none.

Czym są SPF, DKIM i DMARC?

Trzy proste obrazy:

  • SPF to lista gości. Określa, które serwery mogą wysyłać e-maile w Twoim imieniu. Jeśli serwer wysyłający nie jest na liście, mail jest podejrzany.
  • DKIM to podpis cyfrowy. Każdy wychodzący mail jest podpisywany kryptograficznie. Odbiorca sprawdza, czy jest prawdziwy i czy nie został zmieniony po drodze.
  • DMARC to regulamin. Mówi odbiorcy, co ma się stać, gdy SPF lub DKIM zawiedzie: przepuścić, przenieść do spamu lub odrzucić. I wysyła Ci raporty.

Wszystkie trzy są technicznie tylko rekordami TXT w DNS – poza kluczem DKIM, który generujemy na serwerze. Bardzo dobre, szczegółowe wyjaśnienie oferuje poradnik Mailvergleich.de.

Krok 1: Konfiguracja SPF

SPF to jeden rekord TXT, który tworzysz w DNS swojej domeny. Wejdź do zarządzania DNS i utwórz nowy rekord:

Typ:      TXT
Nazwa:    @            (oznacza domenę główną)
Wartość:  v=spf1 a mx ip4:SERVER-IP -all

Zastąp SERVER-IP adresem IP serwera. Co oznaczają części:

  • v=spf1 – oznaczenie wersji (zawsze na początku).
  • a mx – serwery, na które wskazują rekordy A i MX domeny, mogą wysyłać.
  • ip4:SERVER-IP – ten konkretny IP może wysyłać.
  • -allwszystkie inne nie mogą wysyłać (ścisła wersja). Jeśli nie masz pewności lub korzystasz z dodatkowych usług (newsletter, CRM), zacznij od łagodniejszej wersji ~all i później przełącz na -all.

Tylko jeden rekord SPF! Domena może mieć dokładnie jeden rekord TXT SPF. Jeśli korzystasz z kolejnych usług, dodaj ich wpisy include: do tego jednego rekordu, np. v=spf1 a mx include:_spf.example.com -all.

Krok 2: Konfiguracja DKIM (podpisywanie na własnym serwerze)

Inaczej niż przy wynajętej skrzynce, DKIM musisz wygenerować na własnym serwerze samodzielnie. Używamy do tego OpenDKIM, który wpina się w Postfix i podpisuje każdy wychodzący mail.

2.1 Instalacja OpenDKIM:

sudo apt install -y opendkim opendkim-tools

2.2 Wygenerowanie klucza (zastąp twoja-domena.pl):

sudo mkdir -p /etc/opendkim/keys/twoja-domena.pl
sudo opendkim-genkey -b 2048 -d twoja-domena.pl -D /etc/opendkim/keys/twoja-domena.pl -s mail -v
sudo chown -R opendkim:opendkim /etc/opendkim

2.3 Konfiguracja OpenDKIM. Otwórz główną konfigurację:

sudo nano /etc/opendkim.conf

Dodaj na końcu:

Canonicalization   relaxed/simple
Mode               sv
Socket             inet:8891@localhost
KeyTable           /etc/opendkim/KeyTable
SigningTable       /etc/opendkim/SigningTable
ExternalIgnoreList /etc/opendkim/TrustedHosts
InternalHosts      /etc/opendkim/TrustedHosts

Utwórz trzy tabele:

echo "mail._domainkey.twoja-domena.pl twoja-domena.pl:mail:/etc/opendkim/keys/twoja-domena.pl/mail.private" | sudo tee /etc/opendkim/KeyTable
echo "*@twoja-domena.pl mail._domainkey.twoja-domena.pl" | sudo tee /etc/opendkim/SigningTable
printf "127.0.0.1\nlocalhost\ntwoja-domena.pl\n" | sudo tee /etc/opendkim/TrustedHosts

2.4 Połączenie OpenDKIM z Postfix. Otwórz konfigurację Postfix:

sudo nano /etc/postfix/main.cf

Dodaj na końcu:

milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

Uruchom usługi ponownie:

sudo systemctl restart opendkim postfix

2.5 Opublikowanie rekordu DNS DKIM. OpenDKIM zapisał Twój klucz publiczny do pliku. Wyświetl go:

sudo cat /etc/opendkim/keys/twoja-domena.pl/mail.txt

Zobaczysz długą wartość w postaci v=DKIM1; k=rsa; p=.... Utwórz z nią w DNS rekord TXT:

Typ:      TXT
Nazwa:    mail._domainkey
Wartość:  v=DKIM1; k=rsa; p=MIIBI...   (pełna wartość p= z pliku)

Ilustrowaną pomoc krok po kroku do DKIM znajdziesz też u saschafix.de.

Krok 3: Konfiguracja DMARC

DMARC łączy SPF i DKIM oraz ustala regułę. Utwórz w DNS kolejny rekord TXT:

Typ:      TXT
Nazwa:    _dmarc
Wartość:  v=DMARC1; p=none; rua=mailto:dmarc@twoja-domena.pl; fo=1

Znaczenie:

  • p=noneobserwuj, ale nic nie blokuj. Tak zawsze zaczynasz, by sprawdzić, czy wszystko działa czysto, bez zagrażania legalnym mailom.
  • rua=mailto:dmarc@twoja-domena.pl – na ten adres odbiorcy wysyłają codzienne raporty. Utwórz tę skrzynkę.
  • fo=1 – bardziej szczegółowe raporty błędów.

Stopniowe zaostrzanie: Gdy po jednym–dwóch tygodniach raporty pokażą, że Twoje prawdziwe maile przechodzą SPF/DKIM, zwiększ surowość – najpierw na p=quarantine (podejrzane maile do spamu), później na p=reject (podejrzane maile odrzucane):

v=DMARC1; p=quarantine; rua=mailto:dmarc@twoja-domena.pl; fo=1

Nigdy nie zaczynaj od p=reject! Inaczej ryzykujesz, że odrzucone zostaną też legalne maile (np. od usług newslettera lub CRM).

Krok 4: Sprawdzenie i testowanie wszystkiego

Zmiany DNS potrzebują trochę czasu (często minuty, czasem do 24 godzin). Następnie sprawdź konfigurację darmowymi narzędziami:

  • MXToolbox – sprawdza rekordy SPF, DKIM i DMARC pojedynczo (wybierz u góry „SPF Record Lookup", „DKIM Lookup", „DMARC Lookup").
  • mail-tester.com – wyślij prawdziwy mail testowy na wyświetlony adres; celem jest ocena co najmniej 8/10.
  • Sprawdzenie nagłówka Gmail: wyślij sobie mail na konto Gmail, otwórz go, kliknij trzy kropki → „Pokaż oryginał". Tam przy SPF, DKIM i DMARC powinno być „PASS".

Test DKIM bezpośrednio na serwerze możesz dodatkowo wykonać tak:

sudo opendkim-testkey -d twoja-domena.pl -s mail -vvv

Jeśli pojawi się „key OK", klucz jest poprawnie opublikowany.

Częste błędy i rozwiązania

ProblemPrzyczynaRozwiązanie
Maile nadal lądują w spamieDNS jeszcze nie rozpropagowanypoczekać kilka godzin, sprawdzić MXToolbox
SPF „PermError"więcej niż jeden rekord SPFpołączyć wszystkie wpisy w jeden rekord SPF
DKIM „fail"błędna/niepełna wartość p=przejąć pełną wartość z mail.txt dokładnie (bez łamań wiersza)
DMARC bez efektuliterówka w nazwierekord musi nazywać się dokładnie _dmarc
Brak raportów DMARCskrzynka rua nie istniejeutworzyć adres dmarc@twoja-domena.pl

Lista kontrolna

  • [ ] Rekord TXT SPF obecny (dokładnie jeden), kończy się na -all lub ~all
  • [ ] OpenDKIM zainstalowany, połączony z Postfix, usługi uruchomione ponownie
  • [ ] Rekord TXT DKIM (mail._domainkey) opublikowany, opendkim-testkey zgłasza „key OK"
  • [ ] Rekord TXT DMARC (_dmarc) z p=none aktywny
  • [ ] mail-tester.com pokazuje ≥ 8/10
  • [ ] Gmail „Pokaż oryginał": SPF, DKIM, DMARC = PASS
  • [ ] Po jednym–dwóch tygodniach DMARC zwiększony do quarantine/reject

Najczęściej zadawane pytania (FAQ)

Czy nie wystarczy sam SPF? Nie. Google, Yahoo i Microsoft wymagają co najmniej SPF lub DKIM, ale dla najlepszej ochrony i dostarczalności skonfiguruj wszystkie trzy.

Jaka jest różnica między ~all a -all? ~all („soft fail") oznacza niewymienionych nadawców tylko jako podejrzanych, -all („hard fail") odrzuca ich ściśle. W razie wątpliwości zacznij od ~all i później przełącz na -all.

Czy raporty DMARC są istotne dla ochrony danych? Raporty zbiorcze (rua) nie zawierają treści maili, lecz statystyki o adresach IP i wynikach autentykacji. Raporty forensyczne (ruf) mogą zawierać więcej – wielu rezygnuje więc z ruf ze względów RODO.

Czy muszę to regularnie utrzymywać? Raz skonfigurowane działa. Na początku zaglądaj do raportów DMARC i zwiększaj surowość stopniowo.

Podsumowanie

W trzech krokach zabezpieczyłeś swoje e-maile: SPF określa, kto może wysyłać, DKIM podpisuje każdą wiadomość, DMARC ustala regułę i dostarcza raporty. Ważna jest kolejność – najpierw SPF i DKIM, potem DMARC, a DMARC zawsze zaczynaj od p=none. Po teście w mail-tester.com wiesz, że Twoje maile docierają.

Tym samym seria jest kompletna: w Części 1 skonfigurowałeś bezpieczny serwer, w Części 2 zainstalowałeś Froxlora, a tutaj zabezpieczyłeś wysyłkę e-maili.

Nie chcesz tego prowadzić samodzielnie, lecz wolisz gotowe rozwiązanie albo indywidualny rozwój? PepperTools Ci pomoże – zgłoś się przez formularz kontaktowy.

Źródła

Stan: czerwiec 2026. Polecenia i wymagania dużych dostawców poczty mogą się zmieniać – wiążące są ich oficjalne wskazówki i dokumentacja używanego oprogramowania.

Latwiejsze fakturowanie

Easy Invoice laczy oferty, faktury i zarzadzanie klientami w chmurze.

Wyprobuj Easy Invoice

Wersje jezykowe