Selbstgehosteter Mail-Empfänger-Update nach Änderung des Let's Encrypt Root-Zertifikats

Diese Ankündigung betrifft nur Self-Hoster, die Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver ausführen. Kunden mit Managed Hosting sowie Self-Hoster, die POP3 für den eingehenden Postverkehr verwenden, sind nicht betroffen.

Wie Ihnen möglicherweise bekannt ist, hat Let’s Encrypt kürzlich sein Stammzertifikat geändert. Das alte Stammzertifikat ist heute abgelaufen und hat bei veralteten Clients im gesamten Web eine Reihe von Problemen verursacht. Alle unsere Systeme bei CDCK sind auf dem neuesten Stand und waren vom heutigen Ablaufdatum nicht betroffen. Leider haben wir das öffentliche Docker-Image für den Mail-Empfang übersehen, das seit einigen Monaten nicht aktualisiert wurde.

Das bedeutet, dass bestehende Installationen des Self-Hosted Mail-Receivers keine E-Mails an mit Let’s Encrypt gesicherte Sites liefern können.

Wir haben gerade eine aktualisierte Version auf DockerHub hochgeladen, die das neue Stammzertifikat enthält. Wenn Sie den offiziellen Installationsanweisungen gefolgt sind, können Sie Ihre Installation aktualisieren, indem Sie folgenden Befehl ausführen:

docker pull discourse/mail-receiver:release
cd /var/discourse
./launcher rebuild mail-receiver

E-Mails, die von defekten Installationen empfangen wurden, wurden vorübergehend auf dem sendenden Server in die Warteschlange gestellt. Diese Server sollten versuchen, die E-Mails regelmäßig erneut zuzustellen, sodass alle verpassten E-Mails kurz nach der Aktualisierung des Images eintreffen sollten.

Wenn Sie nach Befolgen dieser Schritte immer noch Probleme feststellen, stellen Sie sicher, dass Sie die release-Version von mail-receiver ausführen. Weitere Informationen dazu finden Sie in diesem Thema.

Entschuldigen Sie bitte die Störung! Ein großes Dankeschön an @wlandgraf für die erste Meldung des Problems und die Unterstützung beim Testen der Korrektur :heart:

28 „Gefällt mir“

Danke für die Korrektur! Mein Update ist mit der folgenden Fehlermeldung hängengeblieben. Ich habe an dieser Vorlage keine Änderungen vorgenommen, also bin ich mir nicht sicher, was ich tun soll?

root@ba /var/discourse # ./launcher rebuild mail-receiver
Ensuring launcher is up to date
Fetching origin
Updating Launcher...
Updating 46d899f..990519e
error: Your local changes to the following files would be overwritten by merge:
	templates/web.letsencrypt.ssl.template.yml
Please commit your changes or stash them before you merge.
Aborting
failed to update
1 „Gefällt mir“

Was passiert, wenn du

cd /var/discourse
git diff

ausführst? Zeigt es Unterschiede in der Datei web.letsencrypt.ssl.template.yml an?

Falls ja, kannst du sie mit git reset --hard zurücksetzen.

3 „Gefällt mir“

Ah, ich habe tatsächlich eine Änderung vorgenommen :innocent: Es funktioniert jetzt mit dem Upgrade, danke!

2 „Gefällt mir“

Du kannst testen, ob du die alte mail-receiver-Version ausführst, indem du Folgendes tust:

docker exec mail-receiver bash -c "cat /etc/issue|grep Alpine"

Wenn Alpine angezeigt wird, ist es die alte Version.

docker exec mail-receiver bash -c "cat /etc/issue|grep 'Debian GNU/Linux 11'"

Wenn Debian angezeigt wird, ist es die neue Version.

7 „Gefällt mir“

@david, könntest du dir bitte die unten aufgeführten Probleme ansehen? Das letzte Update des Mail-Empfängers hat die Möglichkeit entfernt, zusätzliche Anti-Spam-Maßnahmen zu implementieren, die in der vorherigen Version hervorragend funktioniert haben. Durch diese letzte Änderung steht mein Forum wieder unter zunehmendem Spam-Druck.

Ich habe versucht, das Grundproblem herauszufinden, verfüge aber nicht über tiefgehende Kenntnisse von Postfix, um es zu identifizieren. Ich habe ähnliche Berichte gefunden (client=unknown, obwohl ein PTR-Eintrag in DNS existiert) im Zusammenhang mit Postfix in einem Chroot-Jail, was damit zusammenhängen könnte. Außerdem scheinen dnsutils im neuen Debian-Image für den Mail-Empfänger zu fehlen, aber ihre Installation löst das Problem immer noch nicht?

Dieses Problem sollte einfach zu beheben sein:

4 „Gefällt mir“

@david Danke für diese Korrektur! Ich habe sie gerade ausgeführt und sehe, dass sie funktioniert. :+1:

Gibt es eine Möglichkeit zu sehen, welche E-Mails seit dem 1. Oktober nicht zugestellt werden konnten?

Ich habe dies versucht, aber ich sehe nur 5 Anfragen (die früheste wurde am 26. November empfangen):

/var/discourse/launcher enter mail-receiver
mailq

Ich habe auch versucht, die Protokolle zu durchsuchen, aber ich habe nur die hier gemeldete Warnung erhalten:

3 „Gefällt mir“

Ich denke, alles, was sich nicht mehr in der Warteschlange befindet, hätte an den Absender zurückgeschickt werden sollen. Ich bin mir nicht sicher, ob der Container Protokolle enthält, die weiter zurückreichen als das, was Sie gefunden haben.

4 „Gefällt mir“

Würde das Hinzufügen von pull_image nach Zeile 657 die Notwendigkeit beheben, das Image vor dem Rebuild explizit zu pullen? Z.B.

  # If the image being bootstrapped is not the base Discourse image
  if [[ ! X"" = X"$base_image" ]]; then
    image=$base_image
    # Attempt to bring the image up to date
    pull_image
  fi

Dies führt dazu, dass während eines Bootstrap-/Rebuilds eines Containers mit base_image in seiner yml-Datei immer ein docker pull $image ausgeführt wird. Ich glaube nicht, dass dies für den Mail-Empfänger schadet, wenn er zufällig bereits auf dem neuesten Stand ist, aber ich bin mir nicht sicher, ob es andere Situationen gibt, in denen dies ein Problem darstellen könnte.

2 „Gefällt mir“

Ja, ein bedingungsloser pull ist hier wahrscheinlich sinnvoll. Es ist ein wenig seltsam, dass er im Moment nur für unser Haupt-Basisimage gilt. Was meinst du, @Falco?

2 „Gefällt mir“

Ich wäre an einer endgültigen Antwort auf diese Frage interessiert :slight_smile:

1 „Gefällt mir“

Ich glaube, Sie können es sehen, indem Sie die Tabelle incoming_emails in PostgreSQL abfragen.

2 „Gefällt mir“

Leider zeigt das nichts im relevanten Zeitraum (Oktober 2021 bis Februar 2022).

Gibt es Protokolle im mail-receiver Container selbst?

1 „Gefällt mir“