HAProxy, Bitwarden, LE-Zertifikat

Started by myssv, October 08, 2023, 02:44:56 PM

Previous topic - Next topic
Moin zusammen,

ich hoffe ich kann es verständlich erklären!

Ich habe einen lokalen Bitwarden Server, auf den ich von extern über den HAProxy per HTTPS zugreifen kann. Auf diesem Bitwarden Server liegt auch das LE-Zertifikat. Wenn ich nun das Zertifikat aktualisieren muss, dann muss ja per HTTP auf diesen Server zugegriffen werden.

Das klappt nicht, weil ich im HAProxy beim Real-Server ja den Port (in diesem Fall 443) fest vergeben muss. Wie kann ich es schaffen, dass ich auch über Port 80 auf den Bitwarden Server komme?

Zweiten HAproxy public service auf port 80.
Deciso DEC750
People who think they know everything are a great annoyance to those of us who do. (Isaac Asimov)

October 08, 2023, 03:53:14 PM #2 Last Edit: October 08, 2023, 04:03:48 PM by myssv
Das habe ich probiert:

Einen neuen Public Server und einen neuen Backend Pool.

Dann bekomme ich aber immer einen TimeOut wenn ich das Zertifikat updaten will.


October 09, 2023, 01:05:59 AM #3 Last Edit: October 09, 2023, 01:37:46 AM by myssv
Eine Anfängerfrage:

Wie kann ich testen, was für eine Antwort kommt, wenn ich über http auf den Server zugreife?

Der Browser wechselt immer zu https.

Der redirect von http zu https wird wohl als rule im HAProxy hinterlegt sein. Aber wieso lässt Du nicht die OPNsense das ganze LetsEncrypt Update und Co machen. Richte dort alles ein und hinterlege das Zertifikat im Frontend vom HAProxy.

Der Gedanke kam mir heute Nacht auch noch und so scheint es auch zu funktionieren.

Ich bin mir nur nicht sicher, wie der Bitwarden-Server reagiert, wenn das Zertifikat auf ihm selber abgelaufen ist.

Das werde ich dann aber sehen. Leider weiß ich nicht, wie ich die Konfiguration dahingehend bei ihm ändern kann.

Vielen Dank für Deinen Hinweis!

October 09, 2023, 08:26:25 AM #6 Last Edit: October 09, 2023, 08:28:56 AM by Monviech
Mach doch einfach ein selbstsigniertes Zertifikat und gibt ihm 30 Jahre. In Bitwarden kann man das ganz einfach einbinden.

https://bitwarden.com/help/certificates/#use-an-existing-ssl-certificate
https://bitwarden.com/help/certificates/#using-a-self-signed-certificate

Wenn eh alle Clients den Reverse Proxy als Ziel haben und der das Let's Encrypt Zertifikat hat, gibts auch keine Zertifikatsfehler.
Hardware:
DEC740

Weil ich es (noch) nicht kann .....

Ich habe nun versucht, in Bitwarden das Zertifikat zu löschen gemäß diesem Forum Eintrag:
https://community.bitwarden.com/t/convert-from-installation-with-ssl-certificate-to-no-ssl-certificate/16516/2

Und nun erhalte ich den Fehler: 503 Service Unavailable

Ist zum Glück ein Proxmox Container, so dass ich den alten Stand wieder herstellen konnte.

Wie ist beim haproxy der Backend Server konfiguriert. Ganz unten in der SSL Sektion. Steht da SSL verifizieren? Wenn da ein Haken ist dann den raus nehmen dann geht es.


Schade, hätte schwören können das es das ist.
Was genau macht denn die Änderung laut dem Post vom Link?
Hast Du denn dann gar kein Zertifikat mehr. Dann musst Du zu mindestens wenigstens ein self sign anlegen.

Im Endeffekt werden in der config.yml Datei zwei Parameter von true auf false gesetzt:

ssl: false
ssl_managed_lets_encrypt: false

Danach wird ein rebuild gemacht und dann der Bitwarden Server neu gestartet. Wobei bei dem Neustart wird mir immer noch der Let's Encrypt Teil angezeigt (siehe unten)

Und intern ist der Dienst immer noch über 443 erreichbar? Könnte sein das er dann nur noch über 80 erreichbar ist.

Das ist eine gute Frage. Wie kann ich das testen?

Einfach die Container IP mittels http aufrufen denke ich.