Jump to content
Froxlor Forum
  • 0

Automatische Verlängerung von Let's Encrypt-Zertifikat


Question

Hallo d00p!

Vor ein paar Monaten habe ich meinen Server auf nginx umgestellt, nur klappt schon zum zweiten Mal die automatische Let's Encrypt-Verlängerung nicht (für den einzigen SSL-vhHost am Server).

Den Ordner /etc/apache2/ habe ich auf dem Server belassen.

Ich habe es mittlerweile hinbekommen dass ein neues Zertifikat für diesen SSL-vHost aktiv ist, aber ich frage mich ob ich in drei Monaten nicht wieder vor dem selben Problem stehe...

Folgende Schritte habe ich manuell unternommen (in der Reihenfolge):

  1. php /var/www/froxlor/scripts/froxlor_master_cronjob.php --letsencrypt --debug - Kein Erfolg, in Froxlor wurde trotzdem das alte, ungültige Zertifikat angezeigt.
  2. Das ungültige Zertifikat in Froxler gelöscht (x-Button).
  3. Erneut php /var/www/froxlor/scripts/froxlor_master_cronjob.php --letsencrypt --debug ausgeführt, nun war das neue Zertifikat in Froxlor sichtbar.
  4. Trotzdem wurde auf der Website das alte Zertifikat angezeigt.
  5. Den alten Apache-Pfad der acme.conf auf /etc/nginx/ gesetzt (Inhalt ist der Standard-Froxlor-nginx-Config-Code)
  6. Die Einträge in /root/.acme.sh/ gelöscht und den Cronjob erneut manuell gestartet. Kein Erfolg, nach wie vor das alte Zertifikat auf der Website.
  7. Die acme-challenge-Tokens in /var/www/froxlor/.well-known/acme-challenge gelöscht und Cronjob ausgeführt. Kein Erfolg.
  8. Den nginx-Server restartet - dann hat es funktioniert, neues Zertifikat ist nun auf der Website sichtbar.

Vmtl. habe ich da was durcheinander gebracht. Jetzt ist kein Token mehr im Ordner /var/www/froxlor/.well-known/acme-challenge zu finden - ist das ein Problem? Ich glaube ich hab verstanden, dass NUR beim Einholen des Zertifikates diese Tokens zur Prüfung wichtig sind. Da das Zertifikat ja schon existiert ist der Token momentan nicht wichtig.

Wie kann ich diese Tokens wieder generieren? Werden die bei der automatischen Verlängerung neu generiert?

Wie kann ich sicher sein dass die automatische Verlängerung läuft?

Hast Du einen Tipp für mich?

 

Grüße aus Wien

 

 

Link to post
Share on other sites
  • Answers 51
  • Created
  • Last Reply

Top Posters For This Question

Recommended Posts

  • 0

jo ist ja klar wenn er php nich erreichen kann, nur .php wird via socket an php weitergegeben

1 minute ago, chrisiwien said:

Bei der Subdomain subdomain.domain.com leitet der Server ins Nirvana.

ja passt denn dns? zeigt er denn auf den korrekten documentroot? testen z.B. mit einer .html oder .txt datei die nich durch php geht

Link to post
Share on other sites
  • 0

In den error-Logs der subdomain steht auf bei Aufruf dieser Datei permission denied.

In den Error-Logs wird auch immer eine Datei "0f77fa1d3f85a43126aa55a99269a3ec.htm" aufgerufen. Seltsam.

Die korrekte document-root ist für die subdomain eingestellt.

Link to post
Share on other sites
  • 0

Nein nein, eigene logdatei heisst, für die domain wird eine separate logdatei erstellt, zugriff auf logdatei heisst, der customer kann diese via webinterface einsehen

 

Link to post
Share on other sites
  • 0
3 minutes ago, chrisiwien said:

Na im Ernst ich find das einfach super. Gibts ein Spendenkonto oder so?

paypal@froxlor.org :)

Just now, chrisiwien said:

Wegen dem Zertifikatsproblem: ich greif das jetzt nicht mehr an, erst wieder in 3 Monaten. Hab keine Zeit dafür nochmal ein paar Stunden mich mit Serverfehlern herum zu quälen, habe mom andere Prioritäten.

kenn ich

Link to post
Share on other sites
  • 0

Hallo d00p!

Mir lässt das keine Ruh. Ich habe was entdeckt: die fragliche Domain auf dem nginx-Server hab ich doppelt eingerichtet: einmal als non-www-Variante, einmal als www-Variante.

Die www-Domain leite ich auf die non-www-Domain um. Bei der www-Domain habe ich auch SSL aktiviert, auch bei der non-www-Variante. Ich blick das nicht ganz durch aber mein Hausverstand flüstert mir leise zu dass ich einen Blödsinn gemacht habe. Ein Zertifikat muss ja einen FDQN haben, www.domain.com und domain.com - der Name ist ja eigentlich gleich oder? Also daher könnte der Murks mit der nicht automatischen Zertifkatsverlängerung herrühren, hm. Was meinst Du?

Hab auch grad auf meinen anderen Server geschaut, da hab ich nur die non-www-Domain angelegt und eine www-Alias dazu - das ist vmtl. die korrekte Lösung.

Link to post
Share on other sites
  • 0

ich verstehe da gerade nich so ganz was du meinst - beide domains sind separat eingerichtet und haben ein eigenes zertifikat, außer du hast vllt bei der non-www-Variante in den Froxlor einstellungen noch "www-alias" angegeben? Das sollte eigentlich nicht möglich sein wenn es eine subdomain mit www gibt.

Alternativ kannst du natürlich die eigene www-subdomain  löschen und für non-www auch einen www-alias anlegen lassen und dann via .htaccess (rewrite rule) oder so deinen gewünschten redirect von www auf non-www machen

Link to post
Share on other sites
  • 0

Tja, das ist der Einstellungsdschungel in dem ich nicht ganz durchblicke...

Mein Ziel ist es ja dass die automatische Zertifikatserneuerung funktioniert.

Ok, ich versuch es zu erklären:

  • Ich habe die www und die non-www-Domain in Froxlor eingerichtet. Das Ziel war aber IMMER dass die www-Domain zur non-www-Domain umgeleitet wird.
  • Ich dachte mir es ist richtig wenn ich auch die www-Domain mit einem Zertifikat absichere, obwohl die auf die non-www-Domain weiterleitet. Ist das richtig? Oder bräuchte die www-Domain gar kein Zertifikat, da die eh auf die non-www-Domain MIT Zertifikat umleitet?
  • Bei der non-www-Domain habe ich "Keine Aliasdomain" und "Keine Subdomain einer Hauptdomain" ausgewählt. (keinen www-Alias eingestellt)
  • Bei der www-Domain habe ich "Keine Aliasdomain" und ("ist eine Subdomain von") "domain.com" ausgewählt. (dort ist der www-Alias also eingestellt)
  • Nochmals die Frage zum FDQN: ist es überhaupt zulässig dass ich ein Zertifikat für "www.domain.com" erstelle UND eines für "domain.com"? Der FDQN ist ja bis auf das "www" gleich. Oder sehe ich das falsch?

Fakt ist: ich habe auf dem Server wo die automatische Zertifikatserneuerung klappt nur die non-www-Domain mit einem www-Alias eingerichtet. Nach meinem Verständnis entspricht der www-Alias einem Redirect zur non-www-Domain. Ist das korrekt? Dann bräuchte ich ja keinen htaccess redirect von www auf non-www. 

Auf dem Server wo die Zertifikatserneuerung funktioniert leite ich in der htaccess nur von http auf https um. Bräuchte ich aber auch nicht, da ich in Froxlor ja die SSL-Weiterleitung in der SSL-Rubrik einstellen kann....help!

Ich kenn mich nicht immer aus was welche Einstellung tut... und kratzen kann man sich ja bekanntlich auch von links oder von rechts.

 

Link to post
Share on other sites
  • 0
5 minutes ago, chrisiwien said:

Ich dachte mir es ist richtig wenn ich auch die www-Domain mit einem Zertifikat absichere, obwohl die auf die non-www-Domain weiterleitet. Ist das richtig?

ja sonst bekommst du natürlich bei aufruf von www.domain via ssl einen fehler

5 minutes ago, chrisiwien said:

Bei der non-www-Domain habe ich "Keine Aliasdomain" und "Keine Subdomain einer Hauptdomain" ausgewählt. (keinen www-Alias eingestellt)

sehr gut, passt

5 minutes ago, chrisiwien said:

Bei der www-Domain habe ich "Keine Aliasdomain" und ("ist eine Subdomain von") "domain.com" ausgewählt. (dort ist der www-Alias also eingestellt)

also hast du sie als admin angelegt? Wieso? Leg doch die subdomain einfach als Kunde an - sollte aber so oder so keinen unterschied machen

6 minutes ago, chrisiwien said:

Nochmals die Frage zum FDQN: ist es überhaupt zulässig dass ich ein Zertifikat für "www.domain.com" erstelle UND eines für "domain.com"? Der FDQN ist ja bis auf das "www" gleich. Oder sehe ich das falsch?

wieso sollte es denn nich zulässig sein? FQDN heisst FULL qualified domain name, da ist "domain.tld" was anderes als "www.domain.tld" - das ist schon ok so

7 minutes ago, chrisiwien said:

Nach meinem Verständnis entspricht der www-Alias einem Redirect zur non-www-Domain. Ist das korrekt?

Nein, ein Alias bedeutet nur, dass der apache vhost nur 1x generiert wird, in erster linie für domain.tld und dann als alias (ServerAlias direktive) auch für www.domain.tld - das impliziert keinen redirect - der vhost reagiert nur auf beide urls

8 minutes ago, chrisiwien said:

Auf dem Server wo die Zertifikatserneuerung funktioniert leite ich in der htaccess nur von http auf https um. Bräuchte ich aber auch nicht, da ich in Froxlor ja die SSL-Weiterleitung in der SSL-Rubrik einstellen kann....help!

auch hier wieder, ssl-redirect heisst: leite http auf https um, NICHT leite www auf non-www

 

Link to post
Share on other sites
  • 0

Kleiner Einfall noch gerade: wenn du natürlich einen REDIRECT hast von www.domain.tld auf domain.tld dann kann lets encrypt die www.domain.tld natürlich nicht erneuern, denn sie leitet ja auf die andere weiter...das könnte evtl. ein problem sein - wobei bei apache da ggfls zunächst der globale alias greift - das müsste man mal testen. Einfach eine Datei mit "test" im ordner /var/www/froxlor/.well-known/acme-challenge/ anlegen und "hallo" reinschreiben, dann "www.domain.tld/.well-known/acme-challenge/test" im browser aufrufen - du solltest das "hallo" sehen

Link to post
Share on other sites
  • 0

Ich sehe das "hallo". Der Redirect geift also. Aber was mich trotzdem stutzig macht: Der Froxlor-Mastercronjob führt ja die Let's Encrypt-Anfragen aus, also auch für den FDQN "www.domain.com". Let's Encrypt bekommt aber dank der Weiterleitung "domain.com" präsentiert. Das macht einen Unterschied, oder?

Im Ordner root/.acme.sh liegen jetzt im Ordner "domain.com" keine Zertifikatsdateien. Im Ordner "www.domain.com" sehr wohl. Beim vorigen Zertifikatslauf waren aber auch im Ordner "domain.com" Zertifikatsdateien.

Es ist zum schreien. Aber ich tippe auf den unnötig komplizierten Redirect der da den Hund reinhaut.

Link to post
Share on other sites
  • 0

Sorry, hab Dein vorletztes Mail mit den vielen Erklärungen übersehen.

"Nein, ein Alias bedeutet nur, dass der apache vhost nur 1x generiert wird, in erster linie für domain.tld und dann als alias (ServerAlias direktive) auch für www.domain.tld - das impliziert keinen redirect - der vhost reagiert nur auf beide urls".
Der vHost reagiert nur auf beide urls - ja dann - aber dann ist das Ergebnis doch das gleiche wie bei Anlegen einer www-Domain und redirect auf non-www?? So klappt das zumindest auf dem Server wo es keine Zert-Probleme gibt - wo ich auch nur die non-www-Domain angelegt habe.

"auch hier wieder, ssl-redirect heisst: leite http auf https um, NICHT leite www auf non-www" - ja logisch. Was ist meinte ist: wenn ich in den Froxlor-Settings "leite http auf https um" wähle brauche ich das nicht mehr in der htaccess manuell einzustellen.

 

Wichtig ist nur dass bei Aufruf von www und non-www der selbe Inhalt erscheint (aus der selben document-root). Je mehr redirects man sich sparen kann desto besser!

Link to post
Share on other sites
  • 0

wenn dir nur wichtig ist das der selbe content angezeigt wird, mach doch die eine domain einfach nur zum Alias der anderen - ist dir aber wichtig ob via www oder non-www aufgerufen wird musst du wohl oder übel mit redirects arbeiten

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...