Ich versuchen mich seit ein paar Tagen einen Mailcow Server einzurichten. Soweit habe ich auch alle hinbekommen, nur das Zertifikat über Let’s Encrypt will nicht. Hier mal der LOG:
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for Docker API...
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Docker API OK
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for Postfix...
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Postfix OK
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for Dovecot...
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Dovecot OK
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for database...
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Database OK
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for Nginx...
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Nginx OK
acme-mailcow-1 | Wed Jun 3 16:35:27 CEST 2026 - Waiting for resolver...
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Resolver OK
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Waiting for domain table...
acme-mailcow-1 | OK
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Initializing, please wait...
acme-mailcow-1 | Could not find certificate from <stdin>
acme-mailcow-1 | Could not find certificate from <stdin>
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Using existing domain rsa key /var/lib/acme/acme/key.pem
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Using existing Lets Encrypt account key /var/lib/acme/acme/account.pem
acme-mailcow-1 | Wed Jun 3 16:35:28 CEST 2026 - Detecting IP addresses...
acme-mailcow-1 | Wed Jun 3 16:35:37 CEST 2026 - OK: 123.456.123.456, 0000:0000:0000:0000:0000:0000:0000:0000
acme-mailcow-1 | Wed Jun 3 16:35:37 CEST 2026 - Found A record for autodiscover.meinefirma.de: 123.456.123.456
acme-mailcow-1 | (skipping check, returning 0)
acme-mailcow-1 | Wed Jun 3 16:35:37 CEST 2026 - Confirmed A record 123.456.123.456
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Found A record for autoconfig.meinefirma.de: 123.456.123.456
acme-mailcow-1 | (skipping check, returning 0)
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Confirmed A record 123.456.123.456
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Found A record for mta-sts.meinefirma.de: 123.456.123.456
acme-mailcow-1 | (skipping check, returning 0)
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Confirmed A record 123.456.123.456
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Found A record for mail.meinefirma.de: 123.456.123.456
acme-mailcow-1 | (skipping check, returning 0)
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Confirmed A record 123.456.123.456
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Certificate /var/lib/acme/mail.meinefirma.de/cert.pem missing or changed domains 'mail.meinefirma.de autoconfig.meinefirma.de autodiscover.meinefirma.de mta-sts.meinefirma.de' - start obtaining
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Creating backups in /var/lib/acme/backups/mail.meinefirma.de/2026-06-03_16_35_38 ...
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Checking resolver...
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Resolver OK
acme-mailcow-1 | Wed Jun 3 16:35:38 CEST 2026 - Using command acme-tiny --account-key /var/lib/acme/acme/account.pem --disable-check --csr /var/lib/acme/mail.meinefirma.de/acme.csr --acme-dir /var/www/acme/
acme-mailcow-1 | Parsing account key...
acme-mailcow-1 | Parsing CSR...
acme-mailcow-1 | Found domains: autoconfig.meinefirma.de, mta-sts.meinefirma.de, mail.meinefirma.de, autodiscover.meinefirma.de
acme-mailcow-1 | Getting directory...
acme-mailcow-1 | Directory found!
acme-mailcow-1 | Registering account...
acme-mailcow-1 | Already registered! Account ID: https://acme-v02.api.letsencrypt.org/acme/acct/3398635676
acme-mailcow-1 | Creating new order...
acme-mailcow-1 | Order created!
acme-mailcow-1 | Already verified: autoconfig.meinefirma.de, skipping...
acme-mailcow-1 | Already verified: autodiscover.meinefirma.de, skipping...
acme-mailcow-1 | Already verified: mail.meinefirma.de, skipping...
acme-mailcow-1 | Verifying mta-sts.meinefirma.de...
acme-mailcow-1 | Traceback (most recent call last):
acme-mailcow-1 | File "/usr/bin/acme-tiny", line 8, in <module>
acme-mailcow-1 | sys.exit(main())
acme-mailcow-1 | ^^^^^^
acme-mailcow-1 | File "/usr/lib/python3.12/site-packages/acme_tiny.py", line 195, in main
acme-mailcow-1 | signed_crt = get_crt(args.account_key, args.csr, args.acme_dir, log=LOGGER, CA=args.ca, disable_check=args.disable_check, directory_url=args.directory_url, contact=args.contact, check_port=args.check_port)
acme-mailcow-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
acme-mailcow-1 | File "/usr/lib/python3.12/site-packages/acme_tiny.py", line 153, in get_crt
acme-mailcow-1 | raise ValueError("Challenge did not pass for {0}: {1}".format(domain, authorization))
acme-mailcow-1 | ValueError: Challenge did not pass for mta-sts.meinefirma.de: {'identifier': {'type': 'dns', 'value': 'mta-sts.meinefirma.de'}, 'status': 'invalid', 'expires': '2026-06-10T14:35:40Z', 'challenges': [{'type': 'http-01', 'url': 'https://acme-v02.api.letsencrypt.org/acme/chall/3398635676/715612328656/xfUzkw', 'status': 'invalid', 'validated': '2026-06-03T14:35:45Z', 'error': {'type': 'urn:ietf:params:acme:error:unauthorized', 'detail': '123.456.123.456: Invalid response from http://mta-sts.meinefirma.de/.well-known/acme-challenge/Q-NeZaD2jXCNAZjZDJwWHdlcM1_A0wHVdLSO_KWYuKc: 503', 'status': 403}, 'token': 'Q-NeZaD2jXCNAZjZDJwWHdlcM1_A0wHVdLSO_KWYuKc', 'validationRecord': [{'url': 'http://mta-sts.meinefirma.de/.well-known/acme-challenge/Q-NeZaD2jXCNAZjZDJwWHdlcM1_A0wHVdLSO_KWYuKc', 'hostname': 'mta-sts.meinefirma.de', 'port': '80', 'addressesResolved': ['123.456.123.456'], 'addressUsed': '123.456.123.456'}]}]}
acme-mailcow-1 | Wed Jun 3 16:35:46 CEST 2026 - Failed to obtain certificate /var/lib/acme/mail.meinefirma.de/cert.pem for domains 'mail.meinefirma.de autoconfig.meinefirma.de autodiscover.meinefirma.de mta-sts.meinefirma.de'
acme-mailcow-1 | OK
acme-mailcow-1 | Wed Jun 3 16:35:46 CEST 2026 - Some errors occurred, retrying in 30 minutes...
acme-mailcow-1 | OK
Wie man ober sehen kann, wird mta-sts.meinefirma.de auch richtig aufgelöst. DNS Einträge sind alle gemacht (_mta-sts; smtp.tls; ….), A-Record zu mty.sts.mein.. ebenfalls erstellt - wird ja auch aufgelöst, MX einräge auch OK, Mails kommen an und gehen raus.
Reverse-Proxy konfiguriert, Server ist von Außen über port 80,443 auf mail.; autodiscover.; autoconfig. und mta-sts erreichbar, wenn auch mit Zertifikatsfehler.
Es wurde einmalig zwar ein Zertifikat erzeugt, aber nur für die Sub-Domail mail.meinefirma.de.
Die mta-sts Daten ist unter https://mta-sts.meinefirma.de/.well-known/mta-sts.txt erreichbar mit folgenden Inhalt:
version: STSv1
mode: enforce
max_age: 15552000
mx: mail.meinefirma.de
Das Problem scheint die Sub-Domain “mta-sts.meinefirma.de” zu sein, was ich so jetzt nicht nachvollziehen kann.
Hat vielleicht jemand eine Lösung hierfür?
Vielen Dank vorab!!!
LG
Seppelchen