lets encrypt in oder hinter einer fritzbox für div. jails

Frank

Anfänger
Hallo zusammen,

ich habe ein paar Verständnisprobleme und komme gerade nicht richitg weiter.

Ich habe eine fritzbox die ich unter einem eigenen Domainmanem erreichen kann, mit dynamicDNS.
Beispiel: https://meinetollefritzbox.de dann kann ich mich auf die Fritzbox einloggen.

Über diverse Port-Weiterleitungen kommt man auf diverse Jails für owncloud, cgit wordpress usw.
Beispiel Einstellung in der Fritzbox:
meinetollefritzbox.de:50043 -> interne IP 192.168.0.200 an Port 543 dort ist eine Jail mit Owncloud
meinetollefritzbox.de:50044 -> interne IP 192.168.0.2001 an Port 543 dort ist eine Jail mit Wordpress

Die diversen Browser merkern über das Zertifikat.
Das möchte ich gerne ändern und Zertifakte von/mit letsencrypt benutzen.

Wie mache ich das am einfachsten?

Ein letsencrypt-Zertifikat auf die Fritzbox (habe gelesen wie das geht)?
Werden dann alle Portweiterleitungen automatisch mit erschlagen?

Oder muss in jede Jail ein eigenens Zertifikat?
Dann bräuchte ich mehrere Domains, oder?

Über einen Tipp wäre ich sehr dankbar.
VG
Frank
 
Kann sein, dass ich nicht mehr ganz aktuell bin aber ich denke für die Prüfung der Domäne brauchst du zwingend Port 80 oder 443, auf der Seite der Fritzbox. Intern im Netzwerk kannst du aber natürlich andere Ports definiert haben (Stichwort Proxy).

Du kannst das aber auch so unterteilen:
  • owncloud.meinetollefritzbox.de
  • wordpress.meinetollefritzbox.de
Beide Records zeigen auf die gleiche IP Adresse (deine externe) und du hast dann einen Proxy der auf die verschiedenen Jails im internen Netzwerk zeigt. In diesem Fall bräuchte dann jede Jail ein eigenes LE Zertifikat. Wildcard Zertifikate gibt es im Moment noch nicht bei LE. Dies soll in der nächsten Version aber möglich sein. Allerdings nur per DNS Check.
 
Ein Zertifikat kann auch mehrere alternative Namen haben; somit wäre theoretisch nur ein Zertifikat nötig. acme-client macht es einem sehr leicht, da die Namen einfach in der config angelegt werden können. Letsencrypt macht logischerweise pro Namen eine challenge
 
Ich persönlich habe zu Hause einen Web-Server, der als Proxy vor all meinen Anwendungen fungiert, der hat dann auch die passenden Zertifikate. Dann müssen nur noch in der Fritzbox Port 80 und 443 auf den Web-Server weitergeleitet werden.

Das finde ich sehr vorteilhaft, weil ich dann nur den Web-Server für SSL konfigurieren muss. Die anderen Server können dann im Heimnetz sogar unverschlüsselt und auch auf merkwürdigen Ports laufen, alles kein Problem.
 
Evtl. kannst du damit auch einen redirect auf deine Fritzbox erstellen und damit auch die config wieder von außen verfügbar machen. Ich weiss nicht, was eine Fritzbox für Anmeldemöglichkeiten bietet, aber evtl. kann der Proxy sonst auch Clientzertifikate checken und damit die Anmeldung weiter absichern.
 
Vielen Dank für Eure Antworten.
Einige Begriffe sind für mich noch böhmische Dörfer :)
Ich weiß jetzt aber, wonach ich suchen muss...

@zuglufttier: Welchen Proxy benutzt Du? Läuft der in einer Mail oder auf eigener Hardware?

VG
Frank
 
Ich werde jetzt versuchen:
1) nginx als Proxy in einer jail (alle Verbindungen leitet die Fritzbox auf den Proxy weiter, der dann auf die jails verteilt)
2) letsencrypt besser einlesen
3) Zertifikate auf den Proxy
offe das dauert alles nicht zu lange :)

Vielen Dank!
 
So ne nginx Konfiguration ist manchmal in fünf Minuten erledigt. Oder sie dauert zwei Tage, weil man ein / übersehen hat...

Mach immer nur einen Schritt auf einmal und teste in Ruhe ;)
 
Bei letsencrypt: Mach nichts per Hand, sondern nutze die Programme, die vom OS oder letsencrypt bereitgestellt werden! Alles andere wird früher oder später Ärger machen.
 
Schau dir meine Antwort in diesem Thread an. Da hab ich einen Ausschnitt aus meiner nginx.conf gepostet. In diesem Fall dient der nginx auch als Proxy für mehrere Webserver, die nicht direkt aus dem Internet erreichbar sind.

Und für die letsencrypt Zertifikate nutze ich dehydrated. Stoße ich einmal pro Monat über einen cronjob an.
 
Zurück
Oben