Am o problemă în care semnăturile mele DKIM nu reușesc peste tot. A fost o întrebare despre asta Aici, dar posterul original a răspuns la propria sa întrebare, iar răspunsul pare să nu aibă legătură.După câteva săpături, m-am gândit că aceasta ar putea fi o problemă de canonizare cu OpenDKIM și că FixCRLF
setarea de configurare ar putea să o rezolve, dar se pare că nu a făcut acest lucru. Acum mă gândesc că ar putea fi o problemă cu implementarea mea openssl (vedeți de ce mai jos). Cum progresez de aici pentru a diagnostica în continuare și a remedia acest lucru?
Pașii mei de diagnostic până în prezent
Acest lucru a apărut inițial când am observat că e-mailurile de la domeniile mele auto-găzduite către contul meu de Gmail aveau erori DKIM în antet. După ce am căutat pe Google cum să testez acest lucru, am descoperit că OpenDKIM README include o secțiune despre testare. Pare puțin depășit, deoarece câteva dintre resurse nu funcționează cu adevărat ([email protected] pare să nu existe, iar [email protected] trimite mesajul ca spam, ceea ce... nu este chiar ideal pentru un serviciu de testare :) ); totuși, verificatoarele Port25 păreau inițial a fi cu adevărat utile, pentru că nu doar îți spun că eșuezi, ci includ anteturile canonizate. Deci, primul meu test a revenit cu asta:
Antete canonizate:
de la:My'20'Name'20'<[email protected]>'0D''0A'
subiect:Port25'20'check-auth'20'1'0D''0A'
data: vineri,'20'1'20'oct'20'2021'20'07:10:19'20'+0200'0D''0A'
la:[email protected]'0D''0A'
dkim-signature:v=1;'20'a=rsa-sha256;'20'c=relaxed/relaxed;'20'd=mydomain.com;'20's=default;'20't=1633065019;'20' bh=2ZDQvBeN3kIWoOxg0Ccz1E/Pi+j4hDPFKwXDhxotTAA=;'20'h=From:Subject:Date:To:From;'20'b=
m-am aprins Păstrați fișiere temporare
în opendkim.conf
, iar anteturile conanicalizate salvate pe partea mea de server arată astfel:
de la:Numele meu <[email protected]>
subiect:Port25 verificare-auth 1
data: vineri, 1 octombrie 2021 07:10:19 +0200
la:[email protected]
dkim-signature:v=1; a=rsa-sha256; c=relaxat/relaxat; d=domeniul meu.com; s=implicit; t=1633065019; bh=2ZDQvBeN3kIWoOxg0Ccz1E/Pi+j4hDPFKwXDhxotTAA=; h=De la:Subiect:Data:Către:De la; b=
Pentru ochii mei, acelea păreau identice, dar am început să mă întreb despre „0D”’0A” din partea Port25 a lucrurilor. Trimit mesajul original de pe un Mac și, de fapt, nu știam din capul meu ce folosește MacOS pentru EOL. Mai caut pe google și am dat peste asta stackoverflow întrebări și răspunsuri. Acest lucru m-a determinat mai întâi să încerc să trimit e-mail în text simplu, dar a apărut aceeași problemă de eșec. Mergând pe cealaltă opțiune, am pornit FixCRLF
în OpendDKIM. Într-adevăr, deschizând fișierul temp local cu vim în modul binar, se pare că setarea funcționează:
de la:Numele meu <[email protected]>^M
subiect:Test cu CRLF fix(?)^M
data: vineri, 1 octombrie 2021 07:40:52 +0200^M
la:[email protected]^M
dkim-signature:v=1; a=rsa-sha256; c=relaxat/relaxat; d=domeniul meu.com; s=implicit; t=1633066853; bh=tt5a2hZTsPGjeXhj9bcF3Kt9N5uk4aYb/j8ciXTYUZA=; h=De la:Subiect:Data:Către:De la; b=
Din păcate, încă nicio dragoste din partea verificatorului Port25.
Ca ultimul meu efort, mi s-a întâmplat să încerc asta pe propriul meu server – trimiterea unui e-mail între două domenii diferite, ambele găzduite local. Acest lucru a devenit cel puțin un pic interesant.
Jurnalul de e-mail spune:
...
1 octombrie 05:50:27 ip-10-0-200-157 opendkim[22246]: 654F98004C: Câmpul DKIM-Semnătură adăugat (s=implicit, d=mydomain.com)
...
Oct 1 05:50:27 ip-10-0-200-157 amavis[21845]: (21845-06) Verificare: hRgGGArUlLf0 [88.101.121.213] <[email protected]> -> <[email protected]>
...
Oct 1 05:50:29 ip-10-0-200-157 amavis[21845]: (21845-06) hRgGGArUlLf0 FWD de la <[email protected]> -> <[email protected]>, BODY=7BIT 250 2.0.0 de la MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: în coadă ca 5248A80051
1 oct 05:50:29 ip-10-0-200-157 amavis[21845]: (21845-06) A trecut CLEAN {RelayedInbound}, [88.101.121.213]:63859 [88.101.121.213. <comme@mydomain] > -> <[email protected]>, Queue-ID: 654F98004C, Message-ID: <[email protected]>, mail_id: hRgGGArUlLf0, dimensiune: 7396, -0. în coadă: 5248A80051, 1878 ms
CU toate acestea, în anteturile reale ale e-mailului primit, văd
...
Stare-X-Spam: Nu, scor=-0,799 teste=[ALL_TRUSTED=-1, DKIM_INVALID=0,1, DKIM_SIGNED=0,1, HTML_MESSAGE=0,001] autolearn=nu autolearn_force=nu
Dkim-Semnătura: v=1; a=rsa-sha256; c=relaxat/relaxat; d=domeniul meu.com; s=implicit; t=1633067427; bh=+FsxBlX8LDcIVqvq7tKOtml1vsfEjh0rYTRVokBgmQ4=; h=De la:Subiect:Data:Către:De la; b=yDkI63wnvN8deIU4AtruGu4r/ybCTBLzmdwkTEhSYNCU56oGp0lP8n4FnXW7H67TL DFtlw/U9/MZPhR0Jeorl3gBdLebBV02v60wpLlFKXF5N4NL/cZbp8/U0liGZGVPoWj PP+OV/uOwNMDUhLG2I8jN88Zi9sHduo8xr7DOmy4=
...
Dkim-Filter: OpenDKIM Filter v2.11.0 ip-10-0-200-157.eu-central-1.compute.internal 654F98004C
...
Autentificare-Rezultate: mx.mymaildomain.com (amavisd-new); dkim=fail (cheie de 1024 de biți) reason="fail (eroare OpenSSL: date prea mari pentru modul)" header.d=mydomain.com
Ultima linie este singurul indiciu care mi-a rămas. Eu... nu-mi pot imagina că orice date este de fapt prea mare, dar poate am o problemă cu OpenSSL? În special, chiar dacă se aplică o semnătură, semnătura este cumva greșită? Chiar nu știu unde să merg de aici.
Orice sugestii cu privire la ceea ce este în neregulă sau ce trebuie făcut în continuare, sunt foarte apreciate.
Acesta este cu OpendDKIM, AmavisD, Postfix:
# opendkim -V
opendkim: OpenDKIM Filter v2.11.0
Compilat cu OpenSSL 1.0.1e-fips 11 februarie 2013
SMFI_VERSION 0x1000001
libmilter versiunea 1.0.1
Algoritmi de semnare acceptați:
rsa-sha1
rsa-sha256
Algoritmi de canonizare acceptați:
relaxat
simplu
Opțiuni de cod activ:
QUERY_CACHE
USE_DB
USE_LDAP
USE_ODBX
libopendkim 2.11.0: query_cache
# amavisd -V
amavisd-new-2.12.0 (20190725)
# postconf mail_version
mail_version = 2.10.1