Willkommen im User-Forum von mailbox.org
 

custom domain DNS check shell script

Martin hat dies geteilt, 17 Monaten her
vorgeschlagen

Ich habe mal ein kleines Script gebastelt, um die DNS Einträge für eigene Domains zu überprüfen. Vielleicht hilft es anderen. (Bzw. bestenfalls wird es von mailbox.org weiter gepflegt. ;)

Wäre cool, wenn hier eine Info gedropt wird, falls es weiter entwickelt wird.


Lizenz: gemeinfrei, bzw. hilfsweise CC0 1.0 cczero

#!/usr/bin/env bash
set -o nounset
set -o errexit
set -o pipefail
#set -o xtrace # shell debug option

domain=$1
mail="postmaster@$domain"
server=""
#server="@ns.inwx.de"

# TODO add check for mailbox.org security key

# MX
[[ "$( dig $server $domain MX +short | sort )" == '10 mxext1.mailbox.org.
10 mxext2.mailbox.org.
20 mxext3.mailbox.org.' ]] \
	|| ( echo 'MX check failed' ; exit 23 )

# SPF
[[ "$( dig $server $domain TXT +short )" == '"v=spf1 include:mailbox.org"' ]] \
	|| ( echo 'SPF check failed' ; exit 24 )


# DKIM
[[ "$( dig $server 'MBO0001._domainkey.'$domain TXT +short | sed 's/" "//g' )" == '"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2K4PavXoNY8eGK2u61LIQlOHS8f5sWsCK5b+HMOfo0M+aNHwfqlVdzi/IwmYnuDKuXYuCllrgnxZ4fG4yVaux58v9grVsFHdzdjPlAQfp5rkiETYpCMZwgsmdseJ4CoZaosPHLjPumFE/Ua2WAQQljnunsM9TONM9L6KxrO9t5IISD1XtJb0bq1lVI/e72k3mnPd/q77qzhTDmwN4TSNJZN8sxzUJx9HNSMRRoEIHSDLTIJUK+Up8IeCx0B7CiOzG5w/cHyZ3AM5V8lkqBaTDK46AwTkTVGJf59QxUZArG3FEH5vy9HzDmy0tGG+053/x4RqkhqMg5/ClDm+lpZqWwIDAQAB"' ]] \
	|| ( echo 'DKIM check failed' ; exit 25 )

[[ "$( dig $server 'MBO0002._domainkey.'$domain TXT +short | sed 's/" "//g' )" == '"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqxEKIg2c48ecfmy/+rj35sBOhdfIYGNDCMeHy0b36DX6MNtS7zA/VDR2q5ubtHzraL5uUGas8kb/33wtrWFYxierLRXy12qj8ItdYCRugu9tXTByEED05WdBtRzJmrb8YBMfeK0E0K3wwoWfhIk/wzKbjMkbqYBOTYLlIcVGQWzOfN7/n3n+VChfu6sGFK3k2qrJNnw22iFy4C8Ks7j77+tCpm0PoUwA2hOdLrRw3ldx2E9PH0GVwIMJRgekY6cS7DrbHrj/AeGlwfwwCSi9T23mYvc79nVrh2+82ZqmkpZSTD2qq+ukOkyjdRuUPck6e2b+x141Nzd81dIZVfOEiwIDAQAB"' ]] \
	|| ( echo 'DKIM backup check failed' ; exit 26 )


# DMARC
[[ "$( dig $server '_dmarc.'$domain TXT +short )" == "\"v=DMARC1;p=none;rua=mailto:$mail;ruf=mailto:$mail\"" ]] \
	|| ( echo 'DMARC check failed' ; exit 27 )


# auto-configuration
[[ "$( dig $server 'autoconfig.'$domain CNAME +short )" == 'mailbox.org.' ]] \
	|| ( echo 'auto-configuration CNAME check failed' ; exit 28 )

[[ "$( dig $server '_autodiscover._tcp.'$domain SRV +short )" == '0 0 443 mailbox.org.' ]] \
	|| ( echo 'auto-configuration SRV check failed' ; exit 29 )


# TODO add HKPS-Keyserver

echo "all ok" ; exit 0

Kommentare (1)

Foto
1

Super. Danke. Nur ich glaube der CNAME Eintrag mit "mailbox.org." ist falsch. Mit dem Punkt sagt das Webinterface von https://www.inwx.de/ ungültiger Eintrag.


Ich schlage zudem folgende Änderung vor um näher an der aktuellen Konfiguration von https://kb.mailbox.org/display/BMBOKB/E-Mail-Adressen+der+eigenen+Domain+nutzen zu sein.


postmaster="postmaster@$domain"
admin="admin@$domain"


[...]


# DMARC
[[ "$( dig $server '_dmarc.'$domain TXT +short )" == "\"v=DMARC1;p=none;rua=mailto:$postmaster;ruf=mailto:$admin\"" ]] \
	|| ( echo 'DMARC check failed' ; exit 27 )

Hinterlassen Sie einen Kommentar
 
Dateianlage anfügen