Hallo Forum,
ich schaffe es einfach nicht, den UCS (4.3-0 errata89 (Neustadt)) zur Erneuerung des Letsencrypt-Zertifikates zu überreden.
Fehlermeldung:
Die Zertifikatsspeicherung schlägt vermutlich fehl, weil der Server von extern nur über HTTPS erreichbar ist was wegen abgelaufenem Zertifikat nicht funktioniert. Alle HTTP Aufrufe werden auf HTTPS redirected obwohl ich die ucs Variablen entsprechend gesetzt habe.
Ich bitte um Hilfe!
Forbidden klingt nicht nach einem Problem mit der Umleitung von HTTP zu HTTPS, sondern eher nach einem Berechtigungsproblem — entweder in den Dateirechten oder in der Apache-Konfiguration.
Was gibt denn curl -v http://mmn-buero.de/.well-known/acme-challenge/9aZg7HEq_JyEnOnKn0fw0xrwDEUvTvx21owF6m_7MoM aus? Und was steht im Apache-access.log und -error.log für den Zeitpunkt?
der curl-Aufruf zeigt, dass der Zugriff funktioniert. Das passt aber nur begrenzt mit der Logdatei zusammen, denn dort steht, dass die Apache-Server-Konfiguration den Zugriff gerade nicht zulässt.
Offensichtlicher Unterschied zwischen beiden Szenarien: im curl-Test kommt die Anfrage von einer internen IP, bei Let’s Encrypt von einer externen IP. Haben Sie irgendwo in der Apache-Konfiguration Zugriffe anhand der Quell-IP eingeschränkt?
Nein ich habe manuell gar nichts geändert. Resultiert alles aus der Installation über das App-Center.
Die Variable hosts/static/80.153.200.212 mmnucs.IBMMN.local wurde gesetzt. wegen Zugang über NAT
Habe jetzt curl-befehl von extern ausgeführt und erhalte die “403 forbidden” Fehlermeldung und "You dont have permission to access /.well-known/acme- …
Habe daraufhin den Besitzer von .well-known auf www-data geändert und die Zugriffsrechte auf 755.
Leider das gleiche Ergebnis.
Was genau wollen Sie mit »von extern nur über HTTPS erreichbar« sagen? Gibt es nur für Port 443 ein Portforwarding zum internen Server? Gibt es Firewallregeln, die Zugriff auf Port 80 verhindern? Wie genau haben Sie erzwungen, dass der Zugriff nur via HTTPS geht?
Hängt da noch ein Reverse-Proxy oder eine HTTP-scannende Firewall oder sonst irgend eine Art von Gerät zwischen dem Internet und dem UCS-Server, das Verbindungen auf Port 80 irgendwie behandelt?
Das passt nicht zum Screenshot. Der zeigt, dass die Variable apache2/force_https leer ist und damit keine erzwungene Umleitung von HTTP zu HTTPS vorgenommen wird — zumindest nicht von den Univention-eigenen Mechanismen.
Bitte stellen Sie sicher, dass Sie die Orignal-Univention-Templates für Apache verwenden. Der folgende Befehl sollte nichts ausgeben: univention-check-templates
Ich kann das Problem hier auch nicht reproduzieren, weder wenn apache2/force_https nicht gesetzt ist, noch wenn es gesetzt ist.
Können Sie bitte mal alle Konfigurationsdateien aus /etc/apache2/conf-enabled, …/sites-enabled und …/ucs-sites.conf.d posten?
Ich muss hier noch mal die Lösung nachtragen:
Eine Erneuerung des Zertifikates funktioniert nur über HTTP. Da der Zugriff auf HTTPS beschränkt war (im Router) konnte das nicht finktionieren. War mein Fehler, dass ich das überlesen hatte.