Hallo,
ich habe hier seit einigen Tagen ein Problem mit einem LE-Zertifikat, das scheinbar abgelaufen ist -- aber irgendwie auch nicht. Dazu folgender Aufbau:
Internet
:
: Glasfaser
|
.-----+------. ACME / LE
| OPNsense +----------------.
'-----+------' Zertifikat |
| |
LAN | 192.168.1.0/24 |
| | wird
.-----+------. | übertragen
| docker VM | |
'-----+------' |
| darauf |
.-----+------. |
| nginx | |
| Container | <<<--
'-----+------'
Es ist also so: Die Opensense verwaltet die LE-Zertifikate und erneuert sie auch regelmäßig. Ein Script überträgt das Zertifikat dann auf den nginx-Host, den man dank einer Portweiterleitung auch von außen (aus dem Internet) erreichen kann. Da wir intern wie extern den gleichen Domainnamen verwenden, kann ich intern per https://nginx.meine-domain.de zugreifen, was auch problemlos funktioniert und ein gültiges Zertifikat anzeigt, das noch bis Mai gültig ist.
Wenn ich aber das gleiche von extern (bzw aus dem Internet kommend) versuche erhalte ich seit einigen Tagen die Meldung, dass das LE-Zertifikat abgelaufen ist und die Seite daher nicht besucht werden kann. Ich verstehe den Unterschied nicht, denn die Portweiterleitung müsste doch in beiden Fällen dafür sorgen, dass sämtliche Anfragen direkt an den nginx-Host gehen, oder?
Hat jemand eine gute Erklärung -- bzw eine Idee, wo ich nach dem scheinbar abgelaufenenen Zertifikat suchen soll?
Eventuell verarscht dich der Browsercache?
Am besten mit etwas testen das nicht chached, ich nehm dazu immer ssllabs.com.
Wie werden die Seiten nach extern veröffentlicht? Reverse proxy? Portweiterleitung? Ganz anderst?
Gesendet von meinem OnePlus 8t mit Tapatalk
Hi. Den Browsercache kann ich eigentlich ausschließen, da es auch von mobilen Geräten aus geschieht -- und mit denen war ich zuvor nicht auf der Seite.
Es ist tatsächlich ein Reverse Proxy dazwischen und zwar der HAProxy, der ebenfalls direkt auf der OPNSense FW läuft. Kann es sein, dass der aus irgendwelchen Gründen nochmal das LE-Zert ausliefert bzw dass der noch ein altes Zertifikat bereitstellen will, obwohl es erneuert wurde??
Wenn ACME fertig ist... Was passiert dann? Kopieren des Zertifikats auf den Nginx Host?
Wie wird von intern auf den Server zugegriffen? Auch via HAProxy oder direkt?
Macht HAProxy ein SSL Intercept? Falls ja muss HAProxy nach der rezertifizierung via ACME neugestartet werden. Hierfür gibt es die Automatisierungen in ACME.
Gesendet von meinem OnePlus 8t mit Tapatalk
Tatsächlich! Das war's!!! Ich habe gerade die Einstellungen zum HAProxy auf der OPNSense aufgerufen und dort stand es bereits (sinngemäß) so: "There are unconfirmed changes...".
Als ich nochmal auf "Anwenden" geklickt habe, erschien das neue Zertifikat auch beim Zugriff von außen! Super -- jetzt bleibt nur noch die Frage: Wie/wo kann ich das automatisieren?
Ich denke, dass das diese Einstellung ist:
Dienste: HAProxy: Maintenance
[ ] Aktivieren Sync SSL certificate changes
Periodically sync SSL certificate changes into the running HAProxy service.
This is most useful when using short-lived Let's Encrypt certificates, but
changes to other certificates will also be synced.
Note that when using the Let's Encrypt plugin, it is also possible to use
an Automation instead of this cron job.