If it is not explicitly told in following recipe, setting up services are described for Ubuntu 20.04 server, but applications are described for Xubuntu 20.04 workstation. If you use different Ubuntu version or Linux distribution, settings as well as content, names and places of configuration files may be different!
Got it.

E-pasta autentifikācija ar DKIM, DMARC un SPF

Must prepare before:  Postfix e-pasta serveris

Šajā lapā aprakstīts, kā iestatīt Postfix e-pasta servera autentifikācju ar DKIM, DMARC un SPF.

Saturs

Visas zemāk minētās darbības jāveic kā root lietotājam. odo.lv vai jūsudomēns domēna vietā izmantojiet savu!

1. OpenDKIM uzstādīšana un iestatīšana

  1. Uzstāda nepieciešamās pakotnes:

    apt-get install opendkim opendkim-tools
  2. Failā /etc/opendkim.conf

    atkomentē un izmaina rindas:

    UMask 002
    Domain odo.lv
    KeyFile /etc/dkimkeys/dkim.key
    Selector mail
    Socket          inet:8891@localhost

    pievieno rindas:

    # Common settings. See dkim-filter.conf(5) for more information.
    AutoRestart             yes
    Background              yes
    Canonicalization        relaxed/relaxed
    DNSTimeout              5
    Mode                    sv
    SignatureAlgorithm      rsa-sha256
    SubDomains              no
    X-Header                no
  3. Failā /etc/postfix/main.cf pievieno rindas:

    # DKIM
    milter_default_action = accept
    milter_protocol = 2
    smtpd_milters = inet:localhost:8891
    non_smtpd_milters = inet:localhost:8891
  4. Izveido sertifikāta un atslēgas failus:

    opendkim-genkey -s mail -d odo.lv
  5. Iestata failu pieejas tiesības:

    chown opendkim:opendkim mail.private mail.txt
    chmod 600 mail.private mail.txt
  6. Pārvieto failus uz opendkim servera iestatījumos norādīto mapi:

    mv mail.private /etc/dkimkeys/dkim.key
    mv mail.txt /etc/dkimkeys/mail.txt
    chown opendkim:opendkim /etc/dkimkeys/dkim.key /etc/dkimkeys/mail.txt
  7. Palaiž opendkim un pārstartē postfix:

    systemctl restart opendkim postfix

2. DKIM DNS ieraksta izveide

DKIM ir (šajā gadījumā — e-pasta) autentifikācijas veids ar privāto-publisko atslēgu pāri, kur publisko atslēgu publicē DNS ierakstā.

  1. Apskata mail.txt faila saturu:

    cat /etc/dkimkeys/mail.txt

    iegūst kaut ko sekojošu:

    mail._domainkey IN TXT ( "v=DKIM1; k=rsa; "
     "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHd3JeBFyHt1wrCOXteu/p+D6u5nBI0VIHGXs3sRcrZSbGrdtB71EM/6O7PcMDiYgHa77GN0zGsmSELbDet/hu7cAFR3OhJ9YUoBebdmN7BZMIHAaZv6B9ZGprvZIa+ugInww/w0rVOazFs609RvTACIn+TlSpBwJjkXHnql/miQIDAQAB" )  ; ----- DKIM key mail for localhost

    Izveido TXT formāta DNS ierakstu tā, ka hostname ir mail._domainkey.jūsudomēns, bet saturs ir rindas no iestatījumu faila (drošības labad, pārrakstīts vienā vārdā), piemēram:

    Hostname: mail._domainkey.odo.lv

    Contents: v=DKIM1;g=*;k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHd3JeBFyHt1wrCOXteu/p+D6u5nBI0VIHGXs3sRcrZSbGrdtB71EM/6O7PcMDiYgHa77GN0zGsmSELbDet/hu7cAFR3OhJ9YUoBebdmN7BZMIHAaZv6B9ZGprvZIa+ugInww/w0rVOazFs609RvTACIn+TlSpBwJjkXHnql/miQIDAQAB;

    Piemēram, nic.lv tas izskatās šādi:

    Att01.png

Vairāks skatīt About DKIM.

3. SPF DNS ieraksta izveide

SPF publiski parāda saņēmēja attieksmi (drošības politiku) pret sūtītājiem, no tiem saņemot e-pastus. Parasti tajā publiski parāda "baltā saraksta" serverus un rīcību saņemot mēstules.

  1. Izveido DNS TXT ierakstu, kur hostname ir jūsu domēna nosaukums, bet saturs norāda atļautos e-pasta serverus (vairāk skatīt Gsuite admin help):

    Hostname: odo.lv
    Contents: v=spf1 mx include:_spf.google.com include:_netblocks.google.com include:_netblocks2.google.com include:_netblocks3.google.com -all

    Piemēram, nic.lv tas izsatās sekojoši:

    Att02.png

Piemērā norādītais serveru saraksts ir tikai priekš tam, lai uz jūsu e-pasta serveri greizi neskatītos Gmail. Šim sarakstam varat pievienot arī citus e-pasta serverus, kurus esat iekļāvuši "baltajā sarakstā".

4. DMARC DNS ieraksta izveide

DMARC publiski parāda, ka nosūtītās vēstules tiek pakļautas autentifikācijai, kā arī parāda, kur ziņot par kļūdām.

  1. Izveido DNS TXT ierakstu, kur hostname ir _dmarc.jūsudomēns, bet saturs norāda e-pastu politiku, piemēram sekojoši:

    Hostname: _dmarc.odo.lv
    Contents: v=DMARC1;p=reject;rua=mailto:postmaster@odo.lv;

    Piemēram, nic.lv tas izsatās sekojoši:

    Att03.png

Ja esat pārliecināti par sava servera drošību, pēc sākotnējās apskates uz postmaster@odo.lv saņemtos e-pastus var vienkārši izdzēst, jo parasti tie (diezgan grūti cilvēklasāmos XML failos) tikai apliecina, ka no domēna ir saņemtas 0 vēstules.

5. DNS ierakstu pārbaude ar dig

  1. DKIM ieraksta pārbaude

    dig +short TXT mail._domainkey.odo.lv

    atgriež:

    "v=DKIM1;g=*;k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHd3JeBFyHt1wrCOXteu/p+D6u5nBI0VIHGXs3sRcrZSbGrdtB71EM/6O7PcMDiYgHa77GN0zGsmSELbDet/hu7cAFR3OhJ9YUoBebdmN7BZMIHAaZv6B9ZGprvZIa+ugInww/w0rVOazFs609RvTACIn+TlSpBwJjkXHnql/miQIDAQAB;"
  1. SPF ieraksta pārbaude

    dig +short TXT odo.lv

    atgriež:

    ...
    "v=spf1 mx include:_spf.google.com include:_netblocks.google.com include:_netblocks2.google.com include:_netblocks3.google.com -all"
    ...
  2. DMARC ieraksta pārbaude

    dig +short TXT _dmarc.odo.lv

    atgriež:

    "v=DMARC1;p=reject;rua=mailto:postmaster@odo.lv;"

Ja nepieciešams, dig var norādīt konkrētu DNS serveri ar @serveris, piemēram dig @ns1.dns.lv nic.lv serverim, vai dig @8.8.8.8 Google serverim.

6. DNS iestatījumu pārbaude ar tīmekļa rīkiem

  1. Atver https://www.mail-tester.com/spf-dkim-check, norāda domēnu:

    Domain name: odo.lv
    DKIM Selector: mail

    Pārliecinās, ka rezultāts ir sekojošs:

    Att04.png

  2. Ar Google Check MX — atver https://toolbox.googleapps.com/apps/checkmx/, norāda, piemēram:

    Domain name:: odo.lv
    DKIM selector:: mail

    Pārliecinās, ka rezultāts ir sekojošs:

    Att05.png

7. E-pasta nosūtīšanas pārbaude

  1. Nosūta testa e-pastu ar komandrindu: 

    swaks -t check-auth2@verifier.port25.com -f jūsu.adres@jūsudomēns.com
  2. Pārliecinās, ka atbildes vēstule no check-auth2@verifier.port25.com satur rindas:

    ...
    ==========================================================
    Summary of Results
    ==========================================================
    SPF check:          pass
    "iprev" check:      pass
    DKIM check:         pass
    SpamAssassin check: ham
    ...

    Ja uz jūsu servera ir Postgrey mēstuļu filtrs, atbildes e-pastu var nākties gaidīt līdz kādām 30 minūtēm.

8. (Neobligāta) domēna reģistrācija iekš Google

Atver https://postmaster.google.com/managedomains, reģistrē jaunu domēnu un izpilda tajā dotās instrukcijas.
(Ar šo tiks izveidots vēl viens TXT formāta DNS ieraksts, kurā ir jānorāda Google uzģenerēts unikāls kods.)

Piemēram, nic.lv tas izskatās šādi:

Att06.png

Kļūdu risināšana

  1. root lietotājs novēro, kas tiek rakstīts e-pasta žurnāla failā:
tail -f /var/log/mail.log

Saites


  
Tags Epasts Serveris Linux
Created by Valdis Vītoliņš on 2019-02-19 12:36
Last modified by Valdis Vītoliņš on 2023-07-10 22:05
 
Xwiki Powered
Creative Commons Attribution 3.0 Unported License