haProxy und verschiedene SSL Zertifikate für Backends
-
Hallo,
gerade habe ich mir gerade das haProxy eingerichtet. Da ich eine dynamische IP Adresse von meinem Provider habe nutze ich DynDNS. Als Dienst habe ich hier IPV64.net und ddns.net am laufen. Das funktioniert einwandfrei. Da ich über IPV64 eine DNS Challenge für die Let's Encrypt Zertifikate machen kann habe ich dafür auch ein Wildcard Zertifikat. Soweit ist noch alles gut.
Nun mein Problem: Ich habe noch eine Domain bei einem anderen Anbieter am laufen der keinen DynDNS Dienst anbietet. Seither hatte ich es so gelöst dass ich hier eine Subdomain ucs.meinedomain.de auf die ddns.net Seite weitergeleitet habe. Dann einfach eine Portweiterleitung auf meinen heimischen e-mail Server, der Server hat sich dann sein Let's Encrrypt Zertifikat für meine ucs.meinedomain.de abgerufen alles lief. Seit ich jetzt haProxy habe und mehrere Seiten aus meinem heimischen Netzwerk verfügbar sind klappt das so nicht mehr da ja keine Portweiterleitung auf einen einzelnen Server mehr läuft sondern haProxy das Wildcardzertifikat hat und dieses beim Zugriff präsentiert. Leider aber nur für den IPV64.net Teil und nicht für die andere Domain.
Kann ich haProxy dazu bringen für ein einzelnes Frontend das die Anfragen einfach weiterzuleiten ohne ssl Offloading aber für alle anderen Fronends das Wildcard Zertifikat zu verwenden?
Irgenwie stehe ich auf dem Schlauch und es wäre prima wenn Ihr mir auf die Sprünge helfen könntet.
Danke und Gruß Jochen
-
@Jochen77 Moin, du kannst in HAProxy problemlos mit mehreren Domains und Zertifikaten arbeiten.
Ich habe selbst zwei eigene Domains bei deSEC.io liegen und nutze dort das ACME-Modul, um direkt per API Let's-Encrypt-Zertifikate für beide Domains zu beziehen. Diese Zertifikate kannst du dann in HAProxy parallel verwenden (Details stehen gut in der Doku).
Soweit ich es im Kopf habe, kannst du pro Frontend festlegen, welches Zertifikat genutzt werden soll – also z.B. je nach Domain das passende Zertifikat zuordnen.
-
Moin,
und Danke für die Antwort. Das bedeutet ich verwende Let's Encrypt auf der pfSense um das Zertifikat für die subdomain erstellen zu lassen und nicht das Zertifikat vom Server direkt wie früher. Den Punkt für SSL offloading im "Unter" Frontend habe ich gefunden. Vermutlich im Primary Frontend SSL offloading angehakt lassen, für alle Frontends für die ich ein Wildkard Zertifikat habe ändert sich nichts nur für das eine Frontend wird dann im "Unter" Frontend noch mal SSL offloading angehakt und das andere Zertifikat ausgewhält, richtig?
Gruß Jochen
-
@Jochen77 du kannst auch deine Domain bei einem anderen Anbieter sehr einfach mit einem Wildcard Zert ausstaffieren und das auch auf der Sense mit ACME. Du brauchst dazu lediglich deine andere Domain, bei der der Check ja sauber funktioniert und kannst die andere Domain bzw. deren acme-challenge dorthin umleiten. Da du die andere Domain ja augenscheinlich via IP64 o.ä. mit Zertifikat ausstatten kannst, klappt das dann via challenge-alias dann auch mit der anderen Domain. Man leitet quasi mit einem CNAME Eintrag die Challenge Abfrage auf die andere Domain um, stellt das im ACME package entsprechend ein und ACME erstellt dann einen sauberen DNS Eintrag zum Prüfen an der richtigen Stelle.
Beispiel:
DomainA.de - geht problemlos mit wildcard via DNS64 (oder irgendwas anderes mit API)
DomainB.de - geht nicht, weil dooferProvider keine ordentliche API hat.Dann erstellt man ein acme-challenge.DomainB.de Eintrag als CNAME, lässt diesen auf acme-challenge.DomainA.de zeigen und konfiguriert in ACME dann einen Job, der Wildcard.DomainB.de anfordert, macht aber einen Haken bei Challenge Alias und trägt dort DomainA.de ein und wählt dann die korrekten API Infos für DomainA ein.
LetsEncrypt bekommt dann die Anfrage für DomainB, sieht dass der acme-challenge ein CNAME ist, fragt den Eintrag von DomainA ab und nickt dann entsprechend das Zertifikat für DomainB ab. Klingt kompliziert, ist aber eigentlich recht simpel.
Und dann kann man auch problemlos in HAproxy auch alles ordentlich mit Zertifikat und Offloading einrichten ohne Sonderlocken.
Cheers