Jump to content
Froxlor Forum
  • 0

Let's Encrypt: Neue Zertifikate werden nicht eingespielt


Question

Hallo,

wir haben seit einiger Zeit das Problem, dass Zertifikate zwar auf dem Server (deb10, aktuelle Froxlor Version) verlängert werden, aber Froxlor diese nicht übernimmt.

/usr/bin/nice -n 5 /usr/bin/php -q /var/www/froxlor/scripts/froxlor_master_cronjob.php --letsencrypt --debug

 

[information] Checking for LetsEncrypt client upgrades before renewing certificates:
[Mon 07 Sep 2020 09:58:38 AM CEST] Already uptodate!
[Mon 07 Sep 2020 09:58:38 AM CEST] Upgrade success!
[Mon 07 Sep 2020 09:58:38 AM CEST] Installing cron job
3 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
[information] No new certificates or certificate updates found
[notice] Checking system's last guid

Der Cronjob acme.sh läuft ohne Probleme durch und verlängert auch die Zertifikate.

cat ~/.acme.sh/domain.tld/domain.tld.conf

Le_CertCreateTimeStr='Thu 06 Aug 2020 10:03:36 PM UTC'
Le_ForceNewDomainKey='1'
Le_NextRenewTimeStr='Mon 05 Oct 2020 10:03:36 PM UTC'

 

Wenn wir dann "/usr/bin/nice -n 5 /usr/bin/php -q /var/www/froxlor/scripts/froxlor_master_cronjob.php --letsencrypt --debug --force" ausführen, werden die Zertifikate erneuert.

Falls noch weitere Infos benötigt werden, bitte Bescheid geben.

Link to post
Share on other sites

18 answers to this question

Recommended Posts

  • 0

Froxlor verlängert gar nix mehr. Das macht alles acme.sh selbst mit seinem cronjob. Was froxlor macht ist ein ABGLEICH der Zertifikate die acme.sh unter /root/.acme.sh/ selbstverwaltet mit denen die Froxlor in seiner Datenbank hat.

Habt ihr denn wirklich die aktuelle 0.10.20? Denn gerade von 0.10.19 auf 0.10.20 gab es hier einen entscheidenden Bugfix (https://github.com/Froxlor/Froxlor/commit/03bc94e69cf1a98dffc4e1001ae5ea0f04eb651e)

Link to post
Share on other sites
  • 0

Werden die cronjobs korrekt ausgeführt z.b. wie ist die Ausgabe von "-debug --force" des cronjobs? Normal, wenn neuere Zertifikate in /root/.acme.sh/ vorhanden sind gleicht er die auch ab...wie gesagt funktioniert bei mir auf mehreren Servern wunderbar

 

Link to post
Share on other sites
  • 0
[information] TasksCron: Searching for tasks to do
[information] TasksCron: Task10 started - setting filesystem quota
[information] Running Let's Encrypt cronjob prior to regenerating webserver config files
[information] Checking for LetsEncrypt client upgrades before renewing certificates:
[Wed 09 Sep 2020 02:52:59 PM CEST] Already uptodate!
[Wed 09 Sep 2020 02:52:59 PM CEST] Upgrade success!
[Wed 09 Sep 2020 02:52:59 PM CEST] Installing cron job
3 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[information] Updated Let's Encrypt certificate for domain
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[warning] ECC certificates activated but found only non-ecc file
[information] Updated Let's Encrypt certificate for domain
.
.
.
[information] apache::createIpPort: creating ip/port settings for  ipv4:80
[debug] ipv4:80 :: inserted namevirtualhost-statement
[debug] ipv4:80 :: inserted vhostcontainer
[information] apache::createIpPort: creating ip/port settings for  ipv4:443
[debug] ipv4:443 :: inserted namevirtualhost-statement
[debug] ipv4:443 :: inserted vhostcontainer
[information] apache::createIpPort: creating ip/port settings for  ipv6:80
[debug] [ipv6]:80 :: inserted namevirtualhost-statement
[debug] [ipv6]:80 :: inserted vhostcontainer
[information] apache::createIpPort: creating ip/port settings for  ipv6:443
[debug] [ipv6]:443 :: inserted namevirtualhost-statement
[debug] [ipv6]:443 :: inserted vhostcontainer
[information] apache::createVirtualHosts: creating vhost container for domain 106, customer CUSTOMER
.
.
.
[information] apache::writeConfigs: rebuilding /etc/apache2/sites-enabled/
[information] apache::writeConfigs: rebuilding /etc/apache2/htpasswd/
[information] apache::writeConfigs: rebuilding /etc/apache2/sites-enabled/
[information] Froxlor\Cron\Http\ApacheFcgi::reload: reloading Froxlor\Cron\Http\ApacheFcgi
[notice] Checking system's last guid

 

Link to post
Share on other sites
  • 0

Ich seh da nix von Fehlern....ja du hast wohl ECC aktiviert und noch alte zertifikate...mehr aber auch nicht, das hält weder acme.sh davon ab diese zu renewen noch froxlor sie zu nutzen

Link to post
Share on other sites
  • 0

Naja, das Problem besteht leider aber.

Wie schon gesagt, wenn der task mit force ausgeführt wird, dann werden die Zertifikate durch froxlor kopiert. Ansonsten nicht. Mir fällt allerdings auch keine Stelle mehr ein, wo ich weiter auf Fehlersuche gehen kann.

Link to post
Share on other sites
  • 0

Naja wie reproduzierst du das denn jetzt, wenn du ja schon nen abgleich mit --force gemacht hast dann hat er ja jetzt sowieso keine aktuellen renews zum abgleichen...

Link to post
Share on other sites
  • 0

Aaahja....naja, ich kann mich nur wiederholen, --force macht im grunde das selbe wie --tasks nur eben forciert (also auch wenn es keine änderungen im system gibt)

Link to post
Share on other sites
  • 0
if (defined('CRON_IS_FORCED') || self::checkFsFilesAreNewer($domain['domain'], $domain['expirationdate'])) 

Klar gleicht er ab wenn forciert ist - eben auch wenn die files NICHT neuer sind

Link to post
Share on other sites
  • 0

Ich möchte anmerken, dasselbe Problem beobachtet zu haben.

In /etc/letsencrypt/archive/domainname/* liegen die neuen Zertifikate. Nach Ausführen des mastercrons mit --force oder --tasks oder --letsencrypt sind die alten Zertifikate wieder in der Datenbank und das WebGUI markiert die entsprechenden Zeilen rot. Lösche ich mittels "x" das jeweilige Zertifkat und führe das Skript aus, ist das gelöschte Zertifikat wieder da.

 

[update]: 1. Irrtum: die im archive liegenden Certs waren die für den froxlor-host selbst.

2. Feststellung: das skript /root/.acme/acme.sh datierte mit 16.09.2020 und war eine ganze Zeile lang: shebang.

3. Im Froxlor Source konnte ich keine Kopie davon finden, also habe ich es mit

wget -O - https://get.acme.sh | sh

neu installiert, dann acme.sh --renew-all gemacht und via master cronjob mit --force und --letsencrypt upgedatet.

Sorry für den confusen Bericht.

Warum acme.sh verkürzt war, habe ich nicht ergründen können.

BTW:

  0.10.21-1 (DB: 202009070)
 

 

Außerdem gibt es mit PHP 7.4.11 jedesmal noch

PHP Notice:  fgets(): read of 8192 bytes failed with errno=21 Is a directory in /var/www/froxlor/lib/Froxlor/Cron/Http/ConfigIO.php on line 196

beim Ausführen des MasterCronJobs. Ist aber nur eine Randnotiz, denn mit php7.3 bekomme ich zwar nicht diese Fehlermeldung, aber dasselbe Verhalten.

In der Vergangenheit habe ich manuell dann die entsprechenden Zertifikate aus der DB gelöscht, dann ging es. Das habe ich jetzt - zwecks Reproduzierbarkeit- noch nicht getan.

@d00p Bitte um Instruktionen.

 

Link to post
Share on other sites
  • 0
On 10/27/2020 at 8:05 PM, epek said:

Im Froxlor Source konnte ich keine Kopie davon finden

weil froxlor das auch nicht mit ausliefern. Es wird installiert wenn es nicht existiert. Wenn da halt eine kaputte Installation vorhanden ist, kann froxlor wenig machen

On 10/27/2020 at 8:05 PM, epek said:

PHP Notice:  fgets(): read of 8192 bytes failed with errno=21 Is a directory in /var/www/froxlor/lib/Froxlor/Cron/Http/ConfigIO.php on line 196

beim Ausführen des MasterCronJobs. Ist aber nur eine Randnotiz, denn mit php7.3 bekomme ich zwar nicht diese Fehlermeldung, aber dasselbe Verhalten

an der stelle werden die awstats-configs der domains geprüft, hat also genau nix mit lets encrypt zu tun

On 10/27/2020 at 8:05 PM, epek said:

/etc/letsencrypt/archive/domainname/*

mit /etc/letsencrypt/ hat froxlor mal so gar nix am hut. und acme.sh auch nicht

On 10/27/2020 at 8:05 PM, epek said:

@d00p Bitte um Instruktionen.

für was jetzt genau? sorry, aber offenbar gab es hier im thread dann keine weitere Info seitens OP

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...