Mail versturen uit meerdere domeinen met DKIM

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
Ik heb een vps waarop ik twee applicaties op heb draaien waarmee ik wat mails wil kunnen versturen. De mails zijn niet mission critical (ze gaan alleen naar mij en een vriend, als ze niet aankomen dan is er niks aan de hand), dit is allemaal vooral uit interesse.

Ik zou deze mails graag willen versturen uit twee verschillende domeinen (per applicatie een domein, één van die domeinen is van mij en die ander is van de vriend). Ik heb op beide domeinen een spf-record met daarin de IP-adressen (v4 en v6) van de vps. Daarnaast heb ik op één van de domeinen (mijn eigen) een domainkey aangemaakt (default._domainkey.domein-a.tld). Ik wil dus eigenlijk voor nu mails mét DKIM versturen vanuit het ene domein en mails zonder DKIM versturen vanuit het andere domein.

Ik heb eigenlijk twee problemen. Ik heb (breed genomen naar verschillende blogposts die min of meer hetzelfde deden) geprobeerd om DKIM in te stellen, maar ik zie daar weinig van terug in de mail die ik stuur. Ik test het door de mail te sturen naar een gmail-adres en dan de 'original message' te bekijken, ik zie daar niks terug van DKIM.

Daarnaast worden de mails die ik wil versturen vanuit het tweede domein verstuurd worden, ook als zodanig terugzien en niet als een 'via' mail. Ik heb deze aanwijziging geprobeerd te volgen, maar dat lijkt niets uit te maken. Ik zie nog steeds bij deze mails "van <domein b> via <domein a>" in de mail staan. In de "original message" zie ik ook veel verwijzingen naar het "verkeerde" domein.

Relevante software
• Ubuntu 20.04.6 LTS
• Exim version 4.93 #5 built 23-Nov-2022 15:54:36

Wat ik al geprobeerd heb
Mijn /etc/exim4/update-exim4.conf.conf bevat de volgend regels:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
dc_eximconfig_configtype='internet'
dc_other_hostnames='<domein a>; <domein b>'
dc_local_interfaces='127.0.0.1 ; ::1'
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'


Ik heb de DKIM-keys in /etc/exim4/dkim/ gezet:
code:
1
2
3
4
$ ls -l /etc/exim4/dkim
total 8
-rw------- 1 Debian-exim Debian-exim 887 Aug 25 10:01 <domein a>.key
-rw-r--r-- 1 Debian-exim Debian-exim 451 Aug 25 09:53 <domein b>.public


Ik heb een file /etc/exim4/conf.d/main/00_custom_macros gemaakt met daarin:
code:
1
2
3
4
5
# DKIM settings
DKIM_DOMAIN = ${lc:$sender_address_domain}
DKIM_KEYFILE = /etc/exim4/dkim/DKIM_DOMAIN.key
DKIM_PRIVATE_KEY = ${if exists{DKIM_KEY_FILE}{DKIM_KEY_FILE}{0}}
DKIM_SELECTOR = default


Naar de instructies in de eerdere link heb ik het volgende staan in /etc/exim4/conf.d/rewrite/31_exim4-config_rewriting (alleen de laatste 2 regels zijn door mij toegevoegd):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
### rewrite/31_exim4-config_rewriting
#################################

# This rewriting rule is particularly useful for dialup users who
# don't have their own domain, but could be useful for anyone.
# It looks up the real address of all local users in a file
.ifndef NO_EAA_REWRITE_REWRITE
*@+local_domains "${lookup{${local_part}}lsearch{/etc/email-addresses}\
                   {$value}fail}" Ffrs
# identical rewriting rule for /etc/mailname
*@ETC_MAILNAME "${lookup{${local_part}}lsearch{/etc/email-addresses}\
                   {$value}fail}" Ffrs
.endif

# Per https://serverfault.com/questions/978960/how-to-set-exim-envelope-domain-to-from-domain
*@+local_domains "${local_part}@${domain}" F


Iemand die me een duwtje in de rug kan geven richting de juiste oplossing?

Alle reacties


Acties:
  • 0 Henk 'm!

  • CodeConnected
  • Registratie: Juni 2004
  • Laatst online: 15-09 14:31
Dank voor je uitgebreide post, dat helpt vaak wel!
Ken je deze website?:
https://www.mail-tester.com/

Je krijgt een e-mail adres waar je vanuit je server een e-mail moet sturen, als de e-mail binnen is krijg je een rapport en geeft vaak informatie wat je zou kunnen veranderen.
Zou je dat rapport eens kunnen delen?

Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
CodeConnected schreef op vrijdag 25 augustus 2023 @ 13:43:
Dank voor je uitgebreide post, dat helpt vaak wel!
Ken je deze website?:
https://www.mail-tester.com/

Je krijgt een e-mail adres waar je vanuit je server een e-mail moet sturen, als de e-mail binnen is krijg je een rapport en geeft vaak informatie wat je zou kunnen veranderen.
Zou je dat rapport eens kunnen delen?
Ja, die ken ik, maar ik zit voor vandaag al aan mijn limiet. Ze ondersteunen helaas nog maar 3 testmails per dag en die heb ik opgebruikt aan andere checks, ook omdat het in mijn herinneren vroeger niet beperkt was ben ik er misschien wat verspillend mee omgegaan. Ik heb nog geprobeerd te zoeken naar een gratis alternatief, maar heb niets kunnen vinden.

[ Voor 3% gewijzigd door Patriot op 25-08-2023 13:49 ]


Acties:
  • +1 Henk 'm!

  • Xeroxr0x
  • Registratie: December 2007
  • Niet online
Stuur een e-mail
naar check-auth@verifier.port25.com en je krijgt een rapportje. :)

Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
Xeroxr0x schreef op vrijdag 25 augustus 2023 @ 13:54:
Stuur een e-mail
naar check-auth@verifier.port25.com en je krijgt een rapportje. :)
Ah, top. Het resultaat is, zoals ik dacht op basis van het bericht dat ik zag in Gmail, dat er geen DKIM signing gedaan is:

code:
1
2
3
SPF check: pass
"iprev" check: pass
DKIM check: none

Acties:
  • 0 Henk 'm!

  • CodeConnected
  • Registratie: Juni 2004
  • Laatst online: 15-09 14:31
Mis jij je hele DIM verhaal niet in jet smarthost configuratie?
Ik zie namelijk nergens dat jij je smarthost hebt aangepast?

Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
CodeConnected schreef op vrijdag 25 augustus 2023 @ 14:24:
Mis jij je hele DIM verhaal niet in jet smarthost configuratie?
Ik zie namelijk nergens dat jij je smarthost hebt aangepast?
Smarthost is toch een smtp-aangelegenheid? Ik stel dat niet specifiek in.

Dat gezegd hebbende, het lijkt er nu inderdaad op dat hij de dkim settings sowieso niet (meer) oppakt. Ergens tijdens het proberen heb ik een keer gezien dat ik de verschillende dkim_* options terugzag in de output van exim4 -bP, maar dat zie ik nu ook niet meer..

Op basis van dc_use_split_config='true' verwacht ik dat hij de files pakt uit de conf.d, dat lijkt ook zo te zijn want als ik de DKIM_* macro's specifiek in conf.d/transport/30_exim4-config_remote_smtp zet zonder ze weg te halen uit de custom file die ik had gemaakt dan geeft update-exim4.conf (het commando, niet de config-file, super onhandige naamgeving als je het mij vraagt) een waarschuwing over reeds gedefinieerde macro's.

Hij doet dus wel iets met die config files en wat ik erin zet, maar het lijkt geen effect te sorteren.

EDIT: Ok, nvm, dat was een gebrek aan begrip van exim4 -bP, want daar moest ik nog wat aan toevoegen. Als ik exim4 -bP transport remote_smtp doe dan krijg ik:

code:
1
2
3
4
5
6
7
8
9
dkim_canon = relaxed
dkim_domain = ${lc:$sender_address_domain}
dkim_hash = sha256
dkim_identity =
dkim_private_key = ${if exists{DKIM_KEY_FILE}{DKIM_KEY_FILE}{0}}
dkim_selector = default
dkim_sign_headers = Subject:Content-Transfer-Encoding:Content-Type:In-Reply-To:From:Cc:References:To:MIME-Version:Date:Message-ID:Sender:Reply-To
dkim_strict = true
dkim_timestamps =


Dat lijkt me juist op zich.

EDIT2: En nog even voor de duidelijkheid, dit is ook de transport die hij gebruikt voor het versturen van de mail - getuige de mainlog (dit is een knipsel, begin van de regel):

code:
1
  => check-auth@verifier.port25.com R=dnslookup T=remote_smtp H=verifier.port25.com

[ Voor 27% gewijzigd door Patriot op 25-08-2023 15:48 ]


Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
Het ligt blijkbaar aan de configuratie. Als ik domein a hardcoded in de config in /etc/exim4/conf.d/main/00_custom_macros zet dan lukt het wel. Alhans, ik krijg een DKIM check: pass van port25.com.

Het probleem zit hem denk ik dan in de config. Hij lijkt dat gewoon niet goed op te pakken, maar ik heb ook geen flauw idee hoe je dat moet debuggen eerlijk gezegd. Ik kan in geen van de logs hier iets over vinden..

Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 16-09 13:49

Patriot

Fulltime #whatpulsert

Topicstarter
Nou, het hele DKIM-debacle is opgelost. Het probleem is heel obvious en met alleen de openingspost kun je eruit komen.

spoiler:
Ik definieer DKIM_KEYFILE en gebruik één regel verder DKIM_KEY_FILE, met een extra underscore


De vraag die wat verdekt was opgesteld maar wel open staat: Hoe zorg ik dat de mails vanuit domein b niet als "via" mails worden aangemerkt.

[ Voor 24% gewijzigd door Patriot op 26-08-2023 23:52 ]

Pagina: 1