OPNsense Forum

International Forums => German - Deutsch => Topic started by: cwt on March 18, 2021, 01:59:02 PM

Title: [GELÖST] HAProxy + Let's Encrypt: passthrough von LE-Anforderungen
Post by: cwt on March 18, 2021, 01:59:02 PM
Salut!

Momentan verwende ich HAProxy (3.0) in Zusammenspiel mit dem Let's Encrypt Plugin.

Das läuft auch alles soweit wie es soll. Mehrere Webserver (meistens virtuelle Nextcloud-Instanzen) werden anständig mit gültigen Zertifikaten versorgt und der Traffic von außen entsprechend durchgereicht.

Allerdings gibt es (logischerweise) ein Problem mit Systemen, welche selbst ein LE-Zertifikat anfordern (müssen). Bspw. habe ich einen eigenen Mailserver (ja so richtig mit statischer IP, Reverse-DNS, DKIM, DMARC und allem Pipapo) im Netz, der ebenfalls ein LE-Zertifikat benötigt. Im HAProxy gibt es automatisch von LE erzeugte Conditions & Rules, die entsprechende Anforderungen abfangen:

- find_acme_challenge (condition)
- no_acme_challenge (condition)
- redirect_acme_challenges (rule)

Fordert nun bspw. der Mailserver von LE sein Zertifikat an, greift die Rule "redirect_acme_challenges", da das Verzeichnis (./well-known/acme-challenge) gleich ist.

Man findet zwar tonnenweise Anleitungen für HAProxy + LE im Netz, aber bisher habe ich noch nix brauchbares für das "mixed environment" gefunden. Gibt es ein entsprechendes ruleset, welches beide Szenarien abdecken würde?

Danke & LG

Title: Re: HAProxy + Let's Encrypt: passthrough von LE-Anforderungen
Post by: lfirewall1243 on March 19, 2021, 08:11:27 AM
Du könntest da am besten mit Zeitbasierten Portweiterleitungen arbeiten und die Dienste hinter dem HaProxy sich in der Zeit die Zertifikate holen lassen
Title: Re: HAProxy + Let's Encrypt: passthrough von LE-Anforderungen
Post by: cwt on June 19, 2021, 08:48:47 AM
Ich habe es mit zusätzlichen Conditions hinbekommen.

Vom ACME Plugin werden automatisch Rules & Conditions erzeugt, u.a. die Rule "redirect_acme_challenges".

Zunächst muss für jeden Host, der selbstständig LE-Anforderungen stellt, folgende Condition erstellt werden:

- Condition type: Source IP matches specified IP
- Negate Condition: aktiviert
- Source IP: <IP des gewünschten Hosts>

Anschliessend aktiviert man diese Conditions zusätzlich in der Rule "redirect_acme_challenges".


Title: Re: [GELÖST] HAProxy + Let's Encrypt: passthrough von LE-Anforderungen
Post by: Leo8405 on March 09, 2023, 11:47:06 AM
Hallo,

ich stehe gerade vor dem gleichen Setup und bekomme noch eine Fehlermeldung (in meinem Fall möchte ich Mailcow betreiben). Die Condition für den Mailserver habe ich erstellt und der Rule "redirect_acme-challenges" hinterlegt.

Failed to obtain certificate /var/lib/acme/meinedomain.de/cert.pem

Hast du noch weitere abweichende Änderungen am HAProxy vorgenommen?

Danke