Puncte:6

Nu există antete DKIM în e-mailurile trimise de la Postfix

drapel pl

Am două postfix, unul pentru primirea e-mail-urilor și celălalt pentru trimiterea e-mail-urilor și întâmpin probleme la semnarea dkim pe e-mailurile mele trimise. Am urmat asta tutorial.

De asemenea, jurnalele nu mă ajută să atrag atenția către problema principală. OpenDKIM funcționează bine:

â opendkim.service - OpenDKIM DomainKeys Identified Mail (DKIM) Milter
     Încărcat: încărcat (/lib/systemd/system/opendkim.service; activat; prestabilit furnizor: activat)
     Activ: activ (în rulare) din vineri 2021-06-18 17:39:40 UTC; acum 4s
       Documente: man:opendkim(8)
             man:opendkim.conf(5)
             om:opendkim-genkey(8)
             om:opendkim-genzone(8)
             om:opendkim-testadsp(8)
             om:opendkim-testkey
             http://www.opendkim.org/docs.html
    Proces: 246310 ExecStart=/usr/sbin/opendkim -x /etc/opendkim.conf (cod=exit, status=0/SUCCESS)
   PID principal: 246321 (opendkim)
      Sarcini: 7 (limită: 4681)
     Memorie: 2,8 M
     CGroup: /system.slice/opendkim.service
             ââ246321 /usr/sbin/opendkim -x /etc/opendkim.conf
             ââ246322 /usr/sbin/opendkim -x /etc/opendkim.conf

18 iunie 17:39:40 testmailcdo systemd[1]: Se pornește OpenDKIM DomainKeys Identified Mail (DKIM) Milter...
18 iunie 17:39:40 testmailcdo systemd[1]: A pornit OpenDKIM DomainKeys Identified Mail (DKIM) Milter.
18 iunie 17:39:40 testmailcdo opendkim[246322]: Începe filtrul OpenDKIM v2.11.0 (args: -x /etc/opendkim.conf)

Postfixul meu main.cf:

milter_default_action = accept
milter_protocol = 6
#smtpd_milters = inet:localhost:8891
smtpd_milters = local:opendkim/opendkim.sock
non_smtpd_milters = $smtpd_milters

master.cf:

smtp inet n - y - - smtpd
#smtp inet n - y - 1 postscreen
#smtpd trece - - y - - smtpd
#dnsblog unix - - y - 0 dnsblog
#tlsproxy unix - - y - 0 tlsproxy
depunerea inet n - y - - smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=mai
  -o smtpd_sasl_auth_enable=da
# -o smtpd_tls_wrappermode=nu
# -o smtpd_tls_auth_only=da
  -o smtpd_enforce_tls=da
# -o smtpd_reject_unlisted_recipient=nu
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=$smtpauth_recipient_restrictions
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o smtpd_client_restrictions=
  -o smtpd_sender_restrictions=
  -o smtpd_sasl_tls_security_options=noanonymous

opendkim.conf:

# Aceasta este o configurație de bază care poate fi ușor adaptată pentru a se potrivi unui standard
# instalare. Pentru opțiuni mai avansate, consultați opendkim.conf(5) și/sau
# /usr/share/doc/opendkim/examples/opendkim.conf.sample.

# Conectați-vă la syslog
Syslog da
# Necesar pentru a utiliza socket-ul local cu MTA-uri care accesează socket-ul ca non-
# utilizator privilegiat (de exemplu, Postfix)
UMask 007

# Semnează de exemplu.com cu cheia în /etc/dkimkeys/dkim.key folosind
# selector „2007” (de exemplu, 2007._domainkey.example.com)
#Domeniu testmailcdo.apolloglobal.net
#KeyFile /etc/dkimkeys/dkim.key
#Selector mail1

# Opțiuni utilizate în mod obișnuit; versiunile comentate arată valorile implicite.
Canonicalizarea relaxată/relaxată
Mod sv
Subdomeniile nr

Repornire automată da
Rata de repornire automată 10/1M
Fundal da
DNSTimeout 5
Algoritmul semnăturii rsa-sha256

# Socket smtp://localhost
#
# ## Socketspec
# ##
# ## Denumește priza unde acest filtru ar trebui să asculte pentru conexiunile milter
# ##
# ## Denumește priza unde acest filtru ar trebui să asculte pentru conexiunile milter
# ## de la MTA. Necesar. Ar trebui să fie în una dintre aceste forme:
# ##
# ## inet:port@address pentru a asculta pe o anumită interfață
# ## inet:port pentru a asculta pe toate interfețele
# ## local:/path/to/socket pentru a asculta pe un socket de domeniu UNIX
#
#Socket inet:8891@localhost
#Socket local:/var/spool/postfix/opendkim/opendkim.sock
#Socket local:/var/spool/postfix/opendkim/opendkim.sock
Socket local:/var/spool/postfix/opendkim/opendkim.sock
## Nume fișier PidFile
### implicit (niciunul)
###
### Numele fișierului în care filtrul ar trebui să-și scrie pid-ul înainte de a începe
### operațiuni normale.
#
PidFile /var/run/opendkim/opendkim.pid


# Suprasemnați întotdeauna De la (semnați folosind De la real și un De la nul pentru a preveni
# câmpuri de antet semnături rău intenționate (De la și/sau altele) între semnatar
# și verificatorul. From este suprasemnat în mod implicit în pachetul Debian
# pentru că este adesea cheia de identitate folosită de sistemele de reputație și astfel
# oarecum sensibil la securitate.
OversignHeaders De la

## Nume fișier ResolverConfiguration
## implicit (niciunul)
##
## Specifică un fișier de configurare care va fi transmis bibliotecii Unbound care
##
## Specifică un fișier de configurare care va fi transmis bibliotecii Unbound care
## efectuează interogări DNS aplicând protocolul DNSSEC. Vedeți Unbound
## documentație la http://unbound.net pentru conținutul așteptat al acestui fișier.
## Rezultatele utilizării acesteia și a setării TrustAnchorFile în același timp
## orele sunt nedefinite.
## În Debian, /etc/unbound/unbound.conf este livrat ca parte a Sugested
## pachet nelegat

# ResolverConfiguration /etc/unbound/unbound.conf

## TrustAnchorFile nume de fișier
## implicit (niciunul)
##
## Specifică un fișier din care datele de ancorare de încredere ar trebui să fie citite atunci când se face
## Interogări DNS și aplicarea protocolului DNSSEC. Consultați documentația Unbound
## la http://unbound.net pentru formatul așteptat al acestui fișier.

TrustAnchorFile /usr/share/dns/root.key

## Userid userid
### implicit (niciunul)
###
### Schimbați la „userid” înainte de a începe funcționarea normală? Poate include
### un ID de grup, de asemenea, separat de userid prin două puncte.
#
ID utilizator opendkim
# Hartați domeniile în De la adrese la cheile utilizate pentru semnarea mesajelor
KeyTable refile:/etc/opendkim/key.table
SigningTable refile:/etc/opendkim/signing.table

# Gazde de ignorat la verificarea semnăturilor
ExternalIgnoreList /etc/opendkim/trusted.hosts

# Un set de gazde interne a căror e-mail ar trebui să fie semnată
InternalHosts /etc/opendkim/trusted.hosts

Jurnalele la trimiterea e-mailurilor afectează de gazde de încredere

18 iunie 18:14:08 testmailcdo postfix/submission/smtpd[247218]: conectați de la necunoscut[202.60.9.10]
18 iunie 18:14:08 testmailcdo postfix/submission/smtpd[247218]: 6D0D413C124: client=unknown[202.60.9.10]
18 iunie 18:14:08 testmailcdo postfix/cleanup[247221]: 6D0D413C124: message-id=<[email protected]>
18 iunie 18:14:08 testmailcdo postfix/qmgr[246787]: 6D0D413C124: from=<[email protected]>, size=601, nrcpt=1 (coada activă)
18 iunie 18:14:08 testmailcdo postfix/submission/smtpd[247218]: deconectare de la unknown[202.60.9.10] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
18 iunie 18:14:10 testmailcdo postfix/smtp[247222]: 6D0D413C124: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[142.250.157.26]:257.26] 1.8, întârzieri=0.06/0/0.82/0.97, dsn=2.0.0, stare=trimis (250 2.0.0 OK 1624040055 p7si10315751pjl.99 - gsmtp)
18 iunie 18:14:10 testmailcdo postfix/qmgr[246787]: 6D0D413C124: eliminat

ls -l /var/spool/postfix/opendkim/opendkim.sock iesiri:

srwxrwx--- 1 opendkim opendkim 0 18 iunie 17:39 /var/spool/postfix/opendkim/opendkim.sock

Sunt cu adevărat pierdut. Orice sugestie și ajutor ar fi foarte apreciat!

anx avatar
drapel fr
anx
Gândiți-vă din nou la `milter_default_action` - s-ar putea să nu doriți ca acesta să *fail-open* (`accept`), dar în schimb ca toate problemele cu DKIM să fie promovate pentru a opri totul (`tempfail`, care poate fi alegerea mai sigură în termeni pierderea corespondenței, din cauza a ceea ce unii destinatari fac cu e-mailurile pe care le consideră neautorizate).
user13539846 avatar
drapel pl
Jurnalele @anx în timpul procesării e-mailurilor afectate de `trusted.hosts` nu arată nimic despre apelarea milter-ului. În orice caz, am actualizat postarea cu jurnalele de la postfix în timp ce trimiteam un e-mail.
Nikita Kipriyanov avatar
drapel za
Ar putea fi că e-mailurile „ieșite” sunt procesate de un alt serviciu `smtpd` care are milter dezactivat (de exemplu, `submission`? Verificați `master.cf`. De asemenea, am observat cu ceva timp în urmă că opendkim setează moduri pe socket, astfel încât postfixul a fost incapabil să comunice cu el. Trebuie să fi fost remediat de atunci, dar cine știe...
Ginnungagap avatar
drapel gu
Puteți adăuga rezultatul `ls -l /var/spool/postfix/opendkim/opendkim.sock` la întrebare? Bănuiesc că socket-ul tău permite doar opendkim:opendkim în timp ce postfix rulează ca alt utilizator.
user13539846 avatar
drapel pl
@NikitaKipriyanov Mi-am adăugat `master.cf` la întrebare. Cred că se ocupă de „submission”.
user13539846 avatar
drapel pl
@Ginnungagap Am adăugat rezultatul lui `ls -l /var/spool/postfix/opendkim/opendkim.sock`. Nu sunt foarte familiarizat cu Linux, dar nu ar trebui `sudo chown opendkim:postfix /var/spool/postfix/opendkim`, ca pas în ghid, să rezolve problema permisiunii?
user13539846 avatar
drapel pl
@NikitaKipriyanov Există o modalitate de a face ca „depunerea” să folosească milterul opendkim?
Nikita Kipriyanov avatar
drapel za
Potrivit master.cf dvs., trimiterea Postfix ar trebui să folosească și milters smtpd. Modurile greșite (0770 pentru opendkim:opendkim) trebuie să fie un vinovat.
Puncte:1
drapel za

Ai moduri greșite pe opendkim.sock. Acestea sunt 0770 adică rwx de catre proprietar, rwx pe grup, nimic pentru alții, unde este proprietar opendkim iar grupul este opendkim, dar Postfix rulează des ca postfix:mail sau așa ceva, deci se încadrează în categoria „alții” și este interzis accesul. Ar trebui să găsiți mențiuni despre asta în jurnalele Postfix (în Debian ne uităm la /var/log/mail.err).

De asemenea, rețineți că chown ai făcut acționează pe o director, care conține socket-ul, nu priza în sine, deci nu este suficient.

Încercați să setați 0777 pe opendkim.sock ca soluție de testare unică:

chmod 0777 /var/spool/postfix/opendkim/opendkim.sock

Dacă ajută, suntem pe drumul cel bun. OpenDKIM recreează socket-ul cu moduri anterioare la fiecare repornire, astfel încât modurile se vor reseta, de aceea această soluție este o singură dată. Pentru a o face persistentă, adăugați postfix utilizator (sau oricare cont este smtpd se execută sub) în opendkim grup, așa că al doilea „7” se va aplica acestuia (acces de grup care este permis):

gpasswd -un postfix opendkim

Alternativ (de exemplu, dacă smtpd aleargă sub nimeni), ați putea schimba ușor scriptul de pornire pentru OpenDKIM, pentru ca acesta să seteze modul 0777 după crearea prizei.

user13539846 avatar
drapel pl
Apreciez ajutorul dvs., domnule, dar, din păcate, după ce ați rulat `chmod 0777 /var/spool/postfix/opendkim/opendkim.sock` și am făcut opendkim.sock la `srwxrwxrwx 1 opendkim opendkim 0 iunie 19 14:21 /var/fix/spool E-mailurile /opendkim/opendkim.sock` trimise încă nu au dkim pe antetele sale. De asemenea, când verific `/var/log/mail.err`, era gol.
user13539846 avatar
drapel pl
De asemenea, am încercat să folosesc `inet` ca socket îndreptat către localhost, smtpd milters postfix modificat și milters non smtpd pentru a folosi `inet:localhost:8891`, dar nu ajută. E-mailurile încă nu sunt semnate.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.