Jump to content
Froxlor Forum
  • 0

habe Probleme LE-Zertifikate zu beziehen


rseffner

Question

Posted

Hallo,

mit Einführung des begrüßenswerten LE-Supports in FROXLOR schien hier jede dritte Meldung damit zusammenhängen. Eigentlich wollte ich auf den Zug nicht auch noch aufspringen (müssen). Nun komme aber auch ich seit einigen Tagen nicht weiter.

cron führt regelmäßig den froxlor_master_cronjob mit dem Parameter --tasks aus und meldet dabei neuerdings ca. 1x am Tag:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
/root/.acme.sh/acme.sh: Zeile 6310: gtar: Kommando nicht gefunden.
[Di 31. Mär 02:00:02 CEST 2020] Extraction error.
[Di 31. Mär 02:00:02 CEST 2020] Upgrade failed!

Schaut man sich die Zeile 6310 in der acme.sh an, wird klar, dass nicht das fehlende "gtar" das Problem ist, sondern offenbar ein korruptes Archiv, welches zuvor mittels "tar" versucht wird zu entpacken.

    if ! (tar xzf $localname || gtar xzf $localname); then

Auch ein manueller Aufruf des Task mit --force bleibt seit Tagen am Renew der gleichen Domains hängen.

ns2:~# /usr/bin/php7.3 -q /var/www/webs/its/FROXLOR_DOCROOT/scripts/froxlor_master_cronjob.php --tasks --force
[error] Could not get Let's Encrypt certificate for DOMAIN1.de:
[Di 31. Mär 12:46:08 CEST 2020] Renew: 'DOMAIN1.de'
[Di 31. Mär 12:46:08 CEST 2020] Skip, Next renewal time is: Di 26. Mai 08:20:23 UTC 2020
[Di 31. Mär 12:46:08 CEST 2020] Add '--force' to force to renew.
[error] Could not get Let's Encrypt certificate for DOMAIN2.de:
[Di 31. Mär 12:46:08 CEST 2020] Renew: 'DOMAIN2.de'
[Di 31. Mär 12:46:08 CEST 2020] Skip, Next renewal time is: Do 28. Mai 08:30:24 UTC 2020
[Di 31. Mär 12:46:08 CEST 2020] Add '--force' to force to renew.

Wie kann ich das Problem weiter zu seiner Ursache hin verfolgen? Welche Angaben sind für weitere Hilfe nötig? Am Start ist die 0.10.15 auf Debian Buster.

Danke fürs Lesen, Draufrumdenken und ggf. unterstützen.

  Ronny

Recommended Posts

Posted

Mit der aktuellen AcmeSh.php hat froxlor nix mehr mit dem renew zu tun, das macht alles acme.sh mittels cronjob selbst. Froxlor gleich nur noch Filesystem mit seiner Datenbank ab. 

So, und wenn du tatsächlich die aktuelle AcmeSh.php von mir hier aus dem Forum benutzt, dann sollte DEFINITIV vor der "Could not get ...." Meldung eine "Could not find file..." Meldung kommen. Es sei denn da ist bei dir was so grundlegend falsch gelaufen, dass es nicht mal den Ordner der Domain gibt, was du aber widerlegst mit der Meldung der "alten" implementierung, dass acme.sh nämlich sagt, er kennt die domain ...

Posted
root@ns1 ~/.acme.sh/a.mein****.de # ls -la /root/.acme.sh/a.mein****.de/
insgesamt 36
drwxr-xr-x  2 root root 4096 Jan 27 12:05 .
drwx------ 73 root root 4096 Apr  4 13:45 ..
-rw-r--r--  1 root root 2301 Mär 27 12:15 a.mein****.de.cer
-rw-r--r--  1 root root  652 Mär 27 12:15 a.mein****.de.conf
-rw-r--r--  1 root root 1716 Mär 27 12:15 a.mein****.de.csr
-rw-r--r--  1 root root  242 Mär 27 12:15 a.mein****.de.csr.conf
-rw-r--r--  1 root root 3247 Mär 27 12:15 a.mein****.de.key
-rw-r--r--  1 root root 1648 Mär 27 12:15 ca.cer
-rw-r--r--  1 root root 3949 Mär 27 12:15 fullchain.cer
root@ns1 ~/.acme.sh/a.mein****.de # md5sum /var/www/webs/its/froxlor.DOMAIN.de/lib/Froxlor/Cron/Http/LetsEncrypt/AcmeSh.php
59e6855a72207abc330d52db41368489  /var/www/webs/its/froxlor.DOMAIN.de/lib/Froxlor/Cron/Http/LetsEncrypt/AcmeSh.php
root@ns1 ~/.acme.sh/a.mein****.de #

Ich verstehe, das solch remotes debugging extrem anstrengend ist - drum gebe ich mir ja alle Mühe, Dir keinen Mist zu liefern.

Posted

ich kann dir halt auch nur sagen wie es der code macht, mit --force wird ein abgleich von dateisystem und datenbank vorgenommen; du erhälst fehlermeldungen die laut code eine von zwei dingen bedeutetn: entweder gibt es den ordner nicht, oder es gibt die erwartete .cer Datei nicht. Hast du evtl. zu einem späteren zeitpunkt ECC aktiviert? Dann würde froxlor davon ausgehen dass die daten in /root/.acme.sh/a.mein****.de_ecc/ liegen....

Posted
4 minutes ago, d00p said:

Hast du evtl. zu einem späteren zeitpunkt ECC aktiviert? Dann würde froxlor davon ausgehen dass die daten in /root/.acme.sh/a.mein****.de_ecc/ liegen....

DAS ist, was ich gemacht habe, bevor das mit den Fehlern losging.

Wie sieht jetzt Deine Handlungsempfehlung aus?

Posted

Tja, hm, das ist aktuell leider nur eine system-weite einstellung, ich könnte als fallback auf "nicht-ecc" gucken und abgleichen....aber es wird dann bei einem renew halt auch aus einem nicht-ecc zertifikat kein ecc-zertifikat, das gilt nur für neue

Posted

Für offenbar jede Domain kommt

PHP Warning:  Use of undefined constant LOG_WARN - assumed 'LOG_WARN' (this will throw an Error in a future version of PHP) in /var/www/webs/its/froxlor.DOMAIN.de/lib/Froxlor/Cron/Http/LetsEncrypt/AcmeSh.php on line 461

Und bei einer der betroffenen Domains siehts so aus

PHP Warning:  Use of undefined constant LOG_WARN - assumed 'LOG_WARN' (this will throw an Error in a future version of PHP) in /var/www/webs/its/froxlor.DOMAIN.de/lib/Froxlor/Cron/Http/LetsEncrypt/AcmeSh.php on line 461
[unknown] ECC certificates activated but found only non-ecc file
[information] Updated Let's Encrypt certificate for a.mein****.de

 

Posted

Danke fürs unterstützen. Ich bin leider schon wieder darauf reingefallen, dass ein "Reseller" längst einen anderen A-record für www. eingetragen hat und vergas, das LE zu deaktivieren. Das mit 3 Domains und die Vierte, mit der ich die Gegenprobe machen wollte hatte längst den Provider gewechselt, ohne dass mir das der Kunde sagte. Ich freue mich riesig auf den Fix mit der DNS-Gegenprobe.

Posted

Auf dem 2. Server wo die Diskrepanz zwischen Expiration im Dateisystem und der DB war, ist jetzt "Einigkeit" ohne, dass sich an dem Zertifikat im Dateisystem etwas geändert hätte.

Du hast es also offenbar geschafft, dass sich FROXLOR an den Daten im Dateisystem bedient und damit die DB füttert.

Posted
On 4/4/2020 at 5:26 PM, d00p said:

Okay, also noch die LOG_WARN kacke weg und dann läuft's ;)

merci - kann das hier bestätigen, nach einem --force sind die LE-Certs wieder gut.

Krieg ich eventuell einen Tipp, wie dsa LOG_WARN wegzubekommen wäre?

Danke!

Posted

Oh sorry, ja, hatte es schon im code commited; einfach nach "LOG_WARN" suchen und "LOG_WARNING" draus machen, da hat wohl die autovervollständigung versagt :)

Posted

Danke - noch eine Kleinigkeit: hätte jetzt auch das LE-Cert für den froxlor-VHost gelöscht - aber das wird anscheinend nicht wieder generiert?

Posted
Just now, d00p said:

Das wird eigentlich genauso behandelt wie die anderen auch, wie genau hast du was wo gelöscht?

Froxor -> Ressourcen -> SSL-Zertifikate -> dort das LE-Cert für den VHost gelöscht.

Posted

Okay, das löscht lediglich den Froxlor Datenbankeintrag, ich schau noch mal gerade in den code, kann sein dass er da vllt nicht abgleicht, da die domain keine "normale" domain ist wie die anderen

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...