MTA-STS Policy Server #
Quelle #
Die Anwendung wird als generisches app-template Helm-Chart von BJW-S Labs bereitgestellt. Das verwendete Nginx-Image stammt aus dem Repository nginx-docker.
Dokumentation #
Informationen zum MTA-STS-Standard sind im RFC 8461 zu finden.
Funktion #
MTA-STS (Mail Transfer Agent Strict Transport Security) ist ein Sicherheitsstandard, der es E-Mail-Anbietern ermöglicht, zu deklarieren, dass ihre Mailserver TLS zur Sicherung von SMTP-Verbindungen verwenden. Dieser Dienst stellt die dafür notwendige Richtliniendatei (mta-sts.txt) über HTTPS bereit. Sendende Mailserver rufen diese Datei ab, bevor sie eine E-Mail zustellen, um sicherzustellen, dass die Verbindung verschlüsselt ist und um Man-in-the-Middle-Angriffe zu verhindern.
Lokale Anpassungen #
Die Konfiguration erfolgt über die values.yaml-Datei und eine ConfigMap.
Wichtige Einstellungen #
- Policy-Datei: Der Inhalt der
mta-sts.txt-Datei wird zentral in einer ConfigMap verwaltet und in den Nginx-Pod gemountet. - Ingress: Ein Ingress nimmt Anfragen auf
/.well-known/mta-sts.txtfür diemta-sts.-Subdomain jeder bedienten Maildomain entgegen und leitet sie an denselben Nginx weiter. Die Hostnamen stehen invalues.yaml; eine weitere Maildomain braucht dort einen weiteren Eintrag.
Installation #
Die Anwendung wird mittels Kustomize und Helm durch ArgoCD im Kubernetes-Cluster bereitgestellt. Die Konfiguration befindet sich im apps/mta-sts-Verzeichnis. Eine manuelle Installation kann mit folgendem Befehl durchgeführt werden:
1kubectl kustomize --enable-helm apps/mta-sts | kubectl apply -n mta-sts -f -Abhängigkeiten #
- Ein laufender Kubernetes-Cluster.
- Ein konfigurierter Ingress-Controller (z.B. Traefik).
- Eine Zertifikatsmanagement-Lösung (z.B. cert-manager) zur Bereitstellung von TLS-Zertifikaten.