Lets Encrypt hinter Reverse Proxy nutzen?
Hi, aktuell baue ich mir ein Homelab und habe bereits einen Reverse Proxy mit Lets encrypt laufen, jetzt möchte ich aber auch noch die Zertifikate auf meinen Servern die hinter dem Proxy laufen installieren. Zum einen habe cih einen Nextcloud Server zum anderen möchte ich noch einen Gitlab Server installieren.
Kann mir jemand sagen wie ich dsa einrichten muss? Wenn ich Certbot auf dem Nextcloud Server ausführe bekomme ich immer einen Fehler.
Leider kann ich keinen A Eintrag setzen, da ich keine feste IP Adresse habe. Aktuell verwende ich einen Dyn DNS Dienst in meinem Router und einen CName Eintrag auf mehreren Subdomains bei einem 1und1 Konto.
Fehler:
Domain:
Type: unauthorized
Detail: Invalid response from
DOMAIN/.well-known/acme-challenge/Ab2JXlpafv138Zk0LxgyVuUMj4LEMgMhJlhjGIvQCeM
[79.231.202.163]: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML
2.0//EN\">\n<html><head>\n<title>404 Not
Found</title>\n</head><body>\n<h1>Not Found</h1>\n<p"
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.
Hier habe ich gelesen das man certbot auf http-01 Verifikation umstellen muss, das hat aber leider nicht geklappt.
https://community.letsencrypt.org/t/using-certbot-behind-an-ssl-reverse-proxy/36783
Auszug aus meiner Virtualhost Datei:
<VirtualHost *:80>
ServerName SUBDOMAIN
ProxyPreserveHost On
DocumentRoot /var/www/html
ProxyPass /.well-known !
ProxyPass / http://10.10.13.213:80/
ProxyPassReverse / http://10.10.13.213:80/
</VirtualHost>
2 Antworten
Für ein letsencrypt Zertifikat brauchst du eine gültige DNS Web Adresse wie example.net. die bekommst du über einen dyndns Dienst, gibt es auch kostenfrei. Die Fritzboxen von AVM haben sowas eingebaut, muss man nur aktivieren.
Den DNS Eintrag musst du dann deinem Router beibringen und einen port auf dein Gerät öffnen.
Habs jetzt glaube hinbekommen, nachdme ich den ProxyPass ./well-known auskommentiert habe, ging die Anfrage vom certbot vom Reverse Proxy auf den Zielserver durch, ob das jetzt aber so in der Praxis richtig ist, bin ich mir nicht ganz sicher
Du schreibst, dass Du mehrere Subdomains hast. Also hast Du einen Zugriff auf einen Nameserver und dessen Einträge? Dann nutz doch die DNS challenge von Letsencrypt. Damit kannst Du sogar Zertifikate für Server mit rein internen IP-Adressen erzeugen.
Dazu musst Du lediglich die Möglichkeit haben, einen TXT-Record zu erzeugen.
Wenn ihc das richtig verstehe, habe ich dann aber ads Problem, das ich den Port jedesmal umstellen muss, wenn ich das Zertifikat auf einem anderen Server ausstellen will. Das Problem besteht naemlich darin das ich mehrere Server über den selben port erreichen will, deshalb habe cih jetzt einen Reverse Proxy installiert, der mir die Anfragen auf verschiedene Server weiterleitet.