February 23, 20251 yr Community Expert Hallo, ich hätte da eine Verständnisfrage zu den letsEncrypt renewal hooks und dem Nginx-Proxy-Manager-Official Docker. Vorweg, das automatische verlängern der Wildcard Zertifikate verläuft problemlos, da die Zertifikate auch an anderen Stellen benötigt werden, wollte ich diese über ein Script, welches einmal wöchentlich aufgerufen wird und dann die entsprechenden Zertifikate an die entsprechenden Stellen ausliefert. Auch dieses Script funktioniert wie es soll. Aber irgendwie scheine ich das mit den hooks nicht ganz verstanden zu haben...... Ich lege also in /mnt/user/appdata/Nginx-Proxy-Manager-Official/letsencrypt/renewal-hooks/deploy ein Script mit dem Namen DMZ_DeployHook.sh Der Inhalt des Scripts ist banal, es legt eine leere Datei mit dem Namen IsDeploy an. Die Existenz dieser Datei zeigt dann einem weiteren Script (welches in zeitlichen Abständen ausgeführt wird) an, dass Zertifikate neu verteilt werden müssen. #!/bin/bash # Dieses Script wird vom Deploy Hook des Proximanages aufgerufen, wenn neue SSL Zertifikate erzeugt wurden # Hierdurch wird dann eine Verteilung der neuen SSL Zertifikate durchgeführt touch "IsDeploy" Doch so wie es ausschaut wird dieses Script nicht ausgeführt bei einem renewal. Habe ich da etwas falsch verstanden bei den hooks??? Jürgen
February 24, 20251 yr 19 hours ago, JogiBear said: Habe ich da etwas falsch verstanden bei den hooks??? ist das script auch ausführbar ? chmod +x ... und der Pfad ... würde ich zumindest aus Docker Sicht vollständig angeben. ob das geht, ich nutze kein NPM, aber anscheinend sollte das gehen (wenn auch nicht in der doku gefunden, sondern aus einem issue Thread)
February 25, 20251 yr Author Community Expert 6 hours ago, alturismo said: ist das script auch ausführbar ? chmod +x Ich bin jetzt mal über die Console auf den ProxyManager: # cd /etc/letsencrypt/renewal-hooks/deploy # chmod +x DMZ_DeployHook.sh # DMZ_DeployHook.sh sh: 125: DMZ_DeployHook.sh: not found # Leider kann ich das Script dort nicht ausführen und bin gerade mit meinen bescheidenen Linux Kenntnissen etwas am Ende. Eigentlich müsste ich so doch das Script ausführen können ?
February 25, 20251 yr 3 hours ago, JogiBear said: Eigentlich müsste ich so doch das Script ausführen können ? wenn du im Ordner bist, ./ davor ./DMZ_DeployHook.sh
February 25, 20251 yr Author Community Expert 11 hours ago, alturismo said: wenn du im Ordner bist, ./ davor # cd /etc/letsencrypt/renewal-hooks/deploy # chmod +x DMZ_DeployHook.sh # ./DMZ_DeployHook.sh sh: 3: ./DMZ_DeployHook.sh: not found # Leider führt das auch nicht zum Erfolg, ich stehe da echt auf dem Schlauch. Ich benutze den Docker jc21/nginx-proxy-manager, vieleicht fehlt da was ???? Edited February 25, 20251 yr by JogiBear Docker Version update
February 25, 20251 yr 1 hour ago, JogiBear said: Leider führt das auch nicht zum Erfolg, ich stehe da echt auf dem Schlauch. mach mal in dem Ordner ls -la
February 25, 20251 yr Author Community Expert 6 hours ago, alturismo said: mach mal in dem Ordner Das Ergebnis: # cd /etc/letsencrypt/renewal-hooks/deploy # ls -la total 4 drwxr-xr-x 1 root root 39 Feb 25 01:05 . drwxr-xr-x 1 root root 59 Oct 13 20:15 .. -rwxrwxrwx 1 root root 220 Feb 20 16:19 DMZ_DeployHook.sh #
February 26, 20251 yr 5 hours ago, JogiBear said: Das Ergebnis: ok, dann bleibt ja fast nur dass der Docker kein bash hat, abschließend 2 Tests bash und mal zum Spaß touch testfile
February 26, 20251 yr Author Community Expert 5 hours ago, alturismo said: ok, dann bleibt ja fast nur dass der Docker kein bash hat, abschließend 2 Tests cd /etc/letsencrypt/renewal-hooks/deploy # bash _ _ _ ____ __ __ | \ | | __ _(_)_ __ __ _| _ \ _ __ _____ ___ _| \/ | __ _ _ __ __ _ __ _ ___ _ __ | \| |/ _` | | '_ \\ \/ / |_) | '__/ _ \ \/ / | | | |\/| |/ _` | '_ \ / _` |/ _` |/ _ \ '__| | |\ | (_| | | | | |> <| __/| | | (_) > <| |_| | | | | (_| | | | | (_| | (_| | __/ | |_| \_|\__, |_|_| |_/_/\_\_| |_| \___/_/\_\\__, |_| |_|\__,_|_| |_|\__,_|\__, |\___|_| |___/ |___/ |___/ Version 2.12.3 (c5a319c) 2025-02-06 10:51:15 UTC, OpenResty 1.25.3.2, debian 12 (bookworm), Certbot certbot 3.0.1 Base: debian:bookworm-slim, linux/amd64 Certbot: nginxproxymanager/nginx-full:latest, linux/amd64 Node: nginxproxymanager/nginx-full:certbot, linux/amd64 [root@docker-08de4535676f:/etc/letsencrypt/renewal-hooks/deploy]# touch testfile [root@docker-08de4535676f:/etc/letsencrypt/renewal-hooks/deploy]# ls DMZ_DeployHook.sh testfile [root@docker-08de4535676f:/etc/letsencrypt/renewal-hooks/deploy]#
February 26, 20251 yr @JogiBear probier mal in deinem script eher den header #!/bin/sh der bash return ... wie gesagt, ich nutze NPM nicht ...
February 26, 20251 yr Author Community Expert Solution 58 minutes ago, alturismo said: probier mal in deinem script eher den header #!/bin/sh Das hat leider auch nicht funktioniert. Aber du hast mich auf die richtige Spur geschubst. Ich habe nun einige 'blinde' Experimente gemacht, und folgendes hat letztendlich zum Erfolg geführt: ScriptHeader: #!/bin/bash File DMZ_DeployHook.sh umbenannt in DMZ_DeployHook.bash und mit chmod ausführbar gemacht Das Ergebnis: cd /etc/letsencrypt/renewal-hooks/deploy # ./DMZ_DeployHook.bash # ls DMZ_DeployHook.bash IsDeploy # Hurra! Es geht. So ganz klar ist mir das WARUM noch nicht! Aber vielen, vielen Dank für deine Hilfe! Ohne dich hätte ich das wohl nicht hinbekommen! Jetzt bin ich auf den nächsten renewal gespannt. Gruß, Jürgen
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.