BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
- paulderfinne
- Beiträge: 471
- Registriert: 23.08.2004 12:44:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Osternohe
BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Hallo liebe Debianer,
heute habe ich ein etwas schwieriges Problem und weiß nicht recht wie ich das beschreiben soll. Hintergrund ist, dass ich einen dedicated root- Server im Netz habe. Darauf hatte ich bisher immer Bigbluebutton (BBB) und ein paar Websiten laufen. BBB verlangt ein Ubuntu als Betriebssystem. Ich habe zwar als alter debianer versucht das auf debien zu installieren,gelang mir aber nicht wirkich. Unter Ubuntu lief das Installationsprogramm fehlerfrei durch. Also Ubuntu. BBB verlangt außerdem nginx als Webserver, das Installationsprogramm installiert den mit.
Nun gibt es ein neues Update auf BBB 2.7. Habe den Setver also auf Ubuntu 20.04 upgedatet und BBB installiert. Ging! Aber als ich meine Website eingerichtet habe und mit letsencrypt verschlüsseln wollte, kam der nginx nicht mehr hoch. Der Grund war, zumindest was ich herausgefunden habe, dass BBB nicht mehr letsenceypt verwendet sondern irgendwie ein Programm namens haproxy und der beißt sich mit letsencrypt.
Nach langen recherchen habe ich herausgefunden, dass man dem installationsscript (vom BBB also) dei Opton -x mitgeben kann, dann soll BBB letsenrypt verwenden, allerdings bricht die Installation genau beim durchführen des letsencrypt ab. BBB kan nicht installiert werden.
Meine Idee wäre: kann ich per haproxy eine Website verschlüsseln? Weiß da jemand was? Welche Infos braucht jemand noch, wenn er/sie mir helfen will? Oder sollte ich versuchen BBB doch irgendwie über letsencrypt zu verschlüsseln. Habe in den log-files versucht zu forschen, bin aber nicht weitergekommen.
heute habe ich ein etwas schwieriges Problem und weiß nicht recht wie ich das beschreiben soll. Hintergrund ist, dass ich einen dedicated root- Server im Netz habe. Darauf hatte ich bisher immer Bigbluebutton (BBB) und ein paar Websiten laufen. BBB verlangt ein Ubuntu als Betriebssystem. Ich habe zwar als alter debianer versucht das auf debien zu installieren,gelang mir aber nicht wirkich. Unter Ubuntu lief das Installationsprogramm fehlerfrei durch. Also Ubuntu. BBB verlangt außerdem nginx als Webserver, das Installationsprogramm installiert den mit.
Nun gibt es ein neues Update auf BBB 2.7. Habe den Setver also auf Ubuntu 20.04 upgedatet und BBB installiert. Ging! Aber als ich meine Website eingerichtet habe und mit letsencrypt verschlüsseln wollte, kam der nginx nicht mehr hoch. Der Grund war, zumindest was ich herausgefunden habe, dass BBB nicht mehr letsenceypt verwendet sondern irgendwie ein Programm namens haproxy und der beißt sich mit letsencrypt.
Nach langen recherchen habe ich herausgefunden, dass man dem installationsscript (vom BBB also) dei Opton -x mitgeben kann, dann soll BBB letsenrypt verwenden, allerdings bricht die Installation genau beim durchführen des letsencrypt ab. BBB kan nicht installiert werden.
Meine Idee wäre: kann ich per haproxy eine Website verschlüsseln? Weiß da jemand was? Welche Infos braucht jemand noch, wenn er/sie mir helfen will? Oder sollte ich versuchen BBB doch irgendwie über letsencrypt zu verschlüsseln. Habe in den log-files versucht zu forschen, bin aber nicht weitergekommen.
Zuletzt geändert von paulderfinne am 09.02.2024 14:55:43, insgesamt 1-mal geändert.
Re: nginx, haproxy und letsencrypt
Let’s Encrypt erzeugt in erster Linie Zertifikate, die man für TLS nutzen kann. Es verschlüsselt nichts, und hat mitpaulderfinne hat geschrieben:08.02.2024 11:19:54Aber als ich meine Website eingerichtet habe und mit letsencrypt verschlüsseln wollte, kam der nginx nicht mehr hoch. Der Grund war, zumindest was ich herausgefunden habe, dass BBB nicht mehr letsenceypt verwendet sondern irgendwie ein Programm namens haproxy und der beißt sich mit letsencrypt.
![Debian](/pics/debianpackage.png)
Du kannst HAProxy so konfigurieren, dass es das LE-Zertifikat (samt dazugehörigen Schlüssel, selbstredend) für die Auslieferung deiner Webseiten über TLS verwendet.paulderfinne hat geschrieben:08.02.2024 11:19:54Meine Idee wäre: kann ich per haproxy eine Website verschlüsseln?
Unglücklicherweise weiß hier keiner, was dein Installer da überhaupt installiert und wie er das konfiguriert hat, und wie das bei Buntu überhaupt so konfiguriert ist, sodass dieses Forum möglicherweise nicht die beste Anlaufstelle für dein Anliegen ist.
OT: einer kurzen Recherche nach gibt es durchaus auch Anleitungen für BBB unter Debian. Ob man einen fremden Installer in seinem System rumwühlen lassen möchte, ist allerdings eine andere Frage – die Meisten würden sie mit „NEIN!“ beantworten (hoffe ich).
„I fought in the Vim-Emacs-War.“ Quelle
- paulderfinne
- Beiträge: 471
- Registriert: 23.08.2004 12:44:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Osternohe
Re: nginx, haproxy und letsencrypt
Vielen dank niemand für die schnelle Antwort.
Ich bin mir jetzt unsicher, ob ich überhaupt weiter machen soll. In der Installationsanleitung für BBB sthet, dass man den Sever sowieso dedicated betreiben soll, also nur für BBB und sonst nix. Ich wollte aber wie bisher auch noch meine Websites verwalten und zusätlich noch einen Postfix installieren für Mails.
Dazu kommt, dass sie einen Server mit 8 Kernen verlangen und meiner hat nur 4. war damals anscheinend ausreichend, denn mit Ubuntu 18 und BBB Version 2.4 hat das alles geklappt.
Was meint ihr? Macht das überhaupt Sinn. Ich meine der Traffic auf den Websites und in den Mails ist überschaubar, aber nicht, dass dann wenn ich den BBB wirklich brauche, der Server in die Knie geht.
Ich bin mir jetzt unsicher, ob ich überhaupt weiter machen soll. In der Installationsanleitung für BBB sthet, dass man den Sever sowieso dedicated betreiben soll, also nur für BBB und sonst nix. Ich wollte aber wie bisher auch noch meine Websites verwalten und zusätlich noch einen Postfix installieren für Mails.
Dazu kommt, dass sie einen Server mit 8 Kernen verlangen und meiner hat nur 4. war damals anscheinend ausreichend, denn mit Ubuntu 18 und BBB Version 2.4 hat das alles geklappt.
Was meint ihr? Macht das überhaupt Sinn. Ich meine der Traffic auf den Websites und in den Mails ist überschaubar, aber nicht, dass dann wenn ich den BBB wirklich brauche, der Server in die Knie geht.
- heisenberg
- Beiträge: 3567
- Registriert: 04.06.2015 01:17:27
- Lizenz eigener Beiträge: MIT Lizenz
Re: nginx, haproxy und letsencrypt
Ich benutze gelegentlich BBB, betreibe aber dazu keinen eigenen Server, sondern nutze Senfcall.
Wenn Du einen eigenen Server verwenden möchtest, dann würde ich das mit den CPU-Kernen nicht so eng sehen. Du wirst dann schon merken, wenn das nicht mehr so gut flutscht.
Zu den einzelnen Komponenten:
Ich hatte selbst vor einigen Monaten nur mal kurz in das BBB Setup reingeschaut, habe dass dann aber wieder gelassen, weil mir das zu kompliziert bzw. aufwändig war. (D. h. ich habe von BBB also nur sehr überschaubar Kompetenzen).
Ansonsten: Die Überschrift ist unpassend. Es geht hier wohl primär um BBB und nicht um nginx, haproxy und letsencrypt. Ich fände diese Überschrift angemessener:
BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Wenn Du einen eigenen Server verwenden möchtest, dann würde ich das mit den CPU-Kernen nicht so eng sehen. Du wirst dann schon merken, wenn das nicht mehr so gut flutscht.
Zu den einzelnen Komponenten:
- haproxy: Das ist ein Loadbalancer / Reverse Proxy
- nginx: Das ist ein Webserver und Reverse Proxy
- certbot / letsencrypt: Das sind Skripte, mit denen Du Zertifikate registrieren kannst - Standalone oder im Zusammenspiel mit dem verwendeten Webserver.
Ich hatte selbst vor einigen Monaten nur mal kurz in das BBB Setup reingeschaut, habe dass dann aber wieder gelassen, weil mir das zu kompliziert bzw. aufwändig war. (D. h. ich habe von BBB also nur sehr überschaubar Kompetenzen).
Ansonsten: Die Überschrift ist unpassend. Es geht hier wohl primär um BBB und nicht um nginx, haproxy und letsencrypt. Ich fände diese Überschrift angemessener:
BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Jede Rohheit hat ihren Ursprung in einer Schwäche.
- novalix
- Beiträge: 1909
- Registriert: 05.10.2005 12:32:57
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: elberfeld
Re: nginx, haproxy und letsencrypt
Wieso BBB gerne als single service betrieben sein will, aber dann haproxy mitinstalliert, erschließt sich mir nicht.
Wenn man haproxy verwendet, dann sollte der auch der TLS-Endpoint sein. Dann muss der certbot im Kontext von haproxy seine Zertifikate holen und hinterlegen. Die Verbindungen im Hintergrund (backend) zwischen haproxy und dem/den httpd/s läuft dann üblicherweise unverschlüsselt.
Wenn man haproxy verwendet, dann sollte der auch der TLS-Endpoint sein. Dann muss der certbot im Kontext von haproxy seine Zertifikate holen und hinterlegen. Die Verbindungen im Hintergrund (backend) zwischen haproxy und dem/den httpd/s läuft dann üblicherweise unverschlüsselt.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.
Darum ist das Richtige selten, lobenswert und schön.
- paulderfinne
- Beiträge: 471
- Registriert: 23.08.2004 12:44:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Osternohe
Re: BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Danke Heisenberg für deine aufklärung und Empfehlungen.
ich habe nun BBB wieder über das installationsscript auf den Ubuntuserver drauf gespielt. Ich wieß, dass das kein guter Weg ist, weil ich nicht genau weiß. was da installiert wird. Ich hatte es (wie schon mal geschriben habe) versucht BBB auf einen Debian Server zu installieren. Habe das ganze Wochenende damit verbarcht, es aber nicht hingekriegt. Dann habe ich Ubuntu auf den Server getan und das Script lief durch. Ich habe das seit Corona verwendet und (fast) immer zur Zufriedenheit. Zusätzlich hatte ich noch ein Paar Websiten laufen. Bei der einen davon hatte ich auch mit letsencrypt ein neues Zertifikat geholt, wie in der Anleitung dazu beschrieben. Mit der nun neuen Version klappt das so nicht mehr. Und das liegt meiner Meinung nach am Haproxy.
Hier der Inhalt der /etc/nginx/server-available/bibbluebutton, wie ihn das Shellscript erzeugt hat
Woraus zumindest ich entnehme, dass hier das Zusammenspiel zwischen nginx und Haproxy konfiguriert wird.
Aus euren Antworten entnehme ich, dass ich auch eine weitere Website mit dem selben Schlüssel konfigurieren kann. Kann mir da jemand Hilfestellung geben?
PS: Habe die Überschrift, wie von Heisenberg gewünscht, geändert
PPS.: Auch dir novalis danke, habe aber deine Einlage jetzt erst gesehen.
Warum das bbb Script tut was es tut, weiß ich auch nicht. In früheren Versionen hat das ja auch geklappt. Aber nun ist das halt so. Wenn nicht müsste ich ja das Installationsscript umschreibe und das traue ich mir nicht zu.
ich habe nun BBB wieder über das installationsscript auf den Ubuntuserver drauf gespielt. Ich wieß, dass das kein guter Weg ist, weil ich nicht genau weiß. was da installiert wird. Ich hatte es (wie schon mal geschriben habe) versucht BBB auf einen Debian Server zu installieren. Habe das ganze Wochenende damit verbarcht, es aber nicht hingekriegt. Dann habe ich Ubuntu auf den Server getan und das Script lief durch. Ich habe das seit Corona verwendet und (fast) immer zur Zufriedenheit. Zusätzlich hatte ich noch ein Paar Websiten laufen. Bei der einen davon hatte ich auch mit letsencrypt ein neues Zertifikat geholt, wie in der Anleitung dazu beschrieben. Mit der nun neuen Version klappt das so nicht mehr. Und das liegt meiner Meinung nach am Haproxy.
Hier der Inhalt der /etc/nginx/server-available/bibbluebutton, wie ihn das Shellscript erzeugt hat
Code: Alles auswählen
server_tokens off;
server {
listen 80;
listen [::]:80;
server_name bbb.vi-mathe.de;
location ^~ / {
return 301 https://$server_name$request_uri; #redirect HTTP to HTTPS
}
location ^~ /.well-known/acme-challenge/ {
allow all;
default_type "text/plain";
root /var/www/bigbluebutton-default/assets;
}
location = /.well-known/acme-challenge/ {
return 404;
}
}
set_real_ip_from 127.0.0.1;
real_ip_header proxy_protocol;
real_ip_recursive on;
server {
# this double listening is intended. We terminate SSL on haproxy. HTTP2 is a
# binary protocol. haproxy has to decide which protocol is spoken. This is
# negotiated by ALPN.
#
# Depending on the ALPN value traffic is redirected to either port 82 (HTTP2,
# ALPN value h2) or 81 (HTTP 1.0 or HTTP 1.1, ALPN value http/1.1 or no value)
listen 127.0.0.1:82 http2 proxy_protocol;
listen [::1]:82 http2;
listen 127.0.0.1:81 proxy_protocol;
listen [::1]:81;
server_name bbb.vi-mathe.de;
# nginx does not know its external port/protocol behind haproxy, so use relative redirects.
absolute_redirect off;
# HSTS (uncomment to enable)
#add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
access_log /var/log/nginx/bigbluebutton.access.log;
# This variable is used instead of $scheme by bigbluebutton nginx include
# files, so $scheme can be overridden in reverse-proxy configurations.
set $real_scheme "https";
# BigBlueButton landing page.
location / {
root /var/www/bigbluebutton-default/assets;
try_files $uri @bbb-fe;
}
# Include specific rules for record and playback
include /etc/bigbluebutton/nginx/*.nginx;
}
Woraus zumindest ich entnehme, dass hier das Zusammenspiel zwischen nginx und Haproxy konfiguriert wird.
Aus euren Antworten entnehme ich, dass ich auch eine weitere Website mit dem selben Schlüssel konfigurieren kann. Kann mir da jemand Hilfestellung geben?
PS: Habe die Überschrift, wie von Heisenberg gewünscht, geändert
PPS.: Auch dir novalis danke, habe aber deine Einlage jetzt erst gesehen.
Warum das bbb Script tut was es tut, weiß ich auch nicht. In früheren Versionen hat das ja auch geklappt. Aber nun ist das halt so. Wenn nicht müsste ich ja das Installationsscript umschreibe und das traue ich mir nicht zu.
- novalix
- Beiträge: 1909
- Registriert: 05.10.2005 12:32:57
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: elberfeld
Re: BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Wie sieht denn die Konfiguration von haproxy aus?
(Da könnte die IP Deines Servers drin stehen. Ersetze die durch einen Platzhalter á la "SERVER_IP", falls Du sie hier postest.
(Da könnte die IP Deines Servers drin stehen. Ersetze die durch einen Platzhalter á la "SERVER_IP", falls Du sie hier postest.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.
Darum ist das Richtige selten, lobenswert und schön.
- paulderfinne
- Beiträge: 471
- Registriert: 23.08.2004 12:44:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Osternohe
Re: BBB-Einrichtung hinter haproxy/nginx mit LetsEncrypt
Vielen Dank für all Euren Mühen. Ich habe jetzt einfach einen "eigenen" Server nur mit BBB drauf installiert. Der tut. Meine mails und websites hoste ich auf einem anderen Server