Pereiti prie pagrindinio turinio

SPF ir DKIM naudojimas Ubuntu/Debian aplinkoje

Atnaujinta prieš daugiau kaip savaitę

SPF (Sender Policy Framework) yra metodas, skirtas kovoti su SPAM laiškų siuntimu. SPF yra tiesiog tekstinis įrašas domeno DNS zonoje, nurodantis kokie serveriai turi teisę siųsti el. laiškus to domeno vardu. Metodas yra labai paprastas ir aiškus, tad šis kovos su SPAM laiškais metodas sparčiai populiarėja. Platesnę informaciją galite rasti oficialiame SPF puslapyje:
http://www.open-spf.org/Introduction/

DKIM (DomainKeys Identified Mail) yra siunčiamų laiškų autentifikavimo metodas, kai siunčiamas laiškas yra pasirašomas šifruotu (kriptografiniu) parašu. Laiško išsiuntimo metu, laišką siunčiantis serveris sugeneruoja šifruotą raktą, kuris laikomas laiško parašu. Laiško gavėjo serveris, pagal siuntėjo domeno DNS įrašuose pateikiamą šakninį raktą gali dešifruoti siuntėjo pridėtą šifruotą raktą ir matyti ar laiškas yra pasirašytas tikrai iš korektiško serverio, kuris turi leidimą siųsti domeno laiškus. Platesnę informaciją galite rasti oficialiame DKIM puslapyje:
http://www.dkim.org/

0. Preliminarūs reikalavimai:
- Įrašytas mūsų parengtas Ubuntu/Debian operacinės sistemos šablonas;

1. SPF nustatymas

SPF naudojimui užtenka nustatyti TXT įrašą domeno zonos įrašuose. TXT įrašo nustatymo žingsniai priklauso nuo Jūsų domeno registratoriaus. Jeigu domeną esate registravę mūsų sistemoje, SPF įrašą galite nustatyti pagal mūsų parengtą pamoką:

https://pagalba.iv.lt/lt/articles/380770-spf-irasas

Standartinis SPF TXT tipo įrašas:

"v=spf1 a mx -all"

Šis įrašas nurodo, kad laiškai gali būti siunčiami iš serverių, kurie nurodyti A ir MX tipo domeno įrašuose.

Pastaba: Nurodant šiuos įrašus būtina naudoti kabutes priekyje ir gale.

2. DKIM nustatymas

Naudojant Postfix pašto tarnybą (įdiegiama automatiškai naudojant mūsų šablonus) visų pirma įsidiekite reikiamus paketus įvykdę komandą:

apt-get install opendkim opendkim-tools -y

Atsidarykite etc/opendkim.conf konfigūracinį failą:

nano /etc/opendkim.conf

Pastaba: Jeigu ši komanda neveiks, tai reiškia, kad neturite dokumentų redagavimo programos nano. Ją įsidiegti galite įvykdę komandą:

sudo apt-get install nano


Atsidarę failą įkelkite tekstą:

Domain    your_domain KeyFile   /etc/postfix/dkim.key Selector  dkim SOCKET    inet:8891@localhost


Išsaugokite ir atsidarykite kitą failą /etc/default/opendkim:

nano /etc/default/opendkim


Bei pridėkite tekstą:

SOCKET="inet:8891@localhost"


Atsidarykite kitą konfigūracinį failą su nano programa:

nano /etc/postfix/main.cf


Ir patikrinkite ar šios dvi eilutės yra tokios pačios, bei neužkomentuotos:

milter_protocol = 2
milter_default_action = accept


Jeigu šios eilutės yra, pridėkite žemiau pateiktas eilutes ir išsaugokite (nurodytas prievadas turi būti toks pat, kaip ir anksčiau nurodytas):

smtpd_milters = unix:/spamass/spamass.sock, inet:localhost:8891
non_smtpd_milters = unix:/spamass/spamass.sock, inet:localhost:8891


Jeigu atsidarius failą /etc/postfix/main.cf nematysite milter eilučių, įveskite dvi naujas eilutes:

smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

2.1. Privataus ir viešo rakto generavimas

Serveryje paleiskite DKIM raktų generavimo kodą:

opendkim-genkey -t -s dkim -d your_domain


Pastaba: Vietoje dkim reikėtų įrašyti Selector reikšmę, kuri nurodoma faile /etc/opendkim.conf . Vietoje your_domain įrašykite savo domeno vardą.

Jums bus sugeneruotos dvi reikšmes saugomos failuose dkim.private bei dkim.txt. dkim.private yra RSA privatus raktas, o dkim.txt faile rasite reikšmę, kurią reikės įkelti į domeno zonos įrašus.

Sekančiame žingsnyje perkelkite privatų raktą į postfix katalogą, tačiau prieš šį veiksmą neužmirškite išsisaugoti šio failo kopijos:

mv dkim.private /etc/postfix/dkim.key


Po šių veiksmų reikia perkrauti Postfix ir OpenDKIM tarnybas:

service opendkim start
service postfix restart

2.2. Privataus rakto įrašo įvedimas domeno zonos įrašuose

Kaip ir minėjome anksčiau, papildomo įrašo įvedimas priklauso nuo domeno registratoriaus. DKIM TXT įrašo tekstą galite rasti faile atsidarę jį serveryje:

cat dkim.txt

2.3. DKIM rakto naudojimas keliems serveriams

Jeigu norite naudoti DKIM raktą keliems domenams, naudojantis ta pačia pašto tarnyba, tokiu atveju atsidarykite failą /etc/opendkim.conf:

nano /etc/opendkim.conf


Ir vietoje šios reikšmės:

Domain    your_domain
KeyFile /etc/postfix/dkim.key
Selector dkim
SOCKET inet:8891@localhost


Naudokite šią:

Domain    *
KeyFile /etc/postfix/dkim.key
Selector dkim
SOCKET inet:8891@localhost


Testavimas
Prieš atliekant testavimą palaukite kol pilnai įsigalios įvestas TXT įrašas. Tada galėsite atlikti testą naudodami MailTester.com.

Ar gavote atsakymą į savo klausimą?