horstvogel
Goto Top

PfSense ACME Packages Refresh CRL im Squid Reverse Proxy

Hallo,
im pfSense ACME Packages kann man Prozesse nach einer Zertifikatserneuerung automatisieren.

10


Wie wäre der Aufruf für den Refresh CRL des Squid Reverse Proxy?

9

Danke!!
der Horst

Content-Key: 337168

Url: https://administrator.de/contentid/337168

Printed on: May 21, 2024 at 11:05 o'clock

Mitglied: 134464
134464 Dec 05, 2017 updated at 14:32:23 (UTC)
Goto Top
Einfach in die Source schauen face-wink
https://github.com/pfsense/pfsense-packages/blob/master/config/squid3/34 ...
Dort findest du die PHP Funktion squid_refresh_crl() die das macht was geschieht wenn du den Button drückst ...
Zum Aufrufen von PHP Functions siehe dann zusätzlich:
https://doc.pfsense.org/index.php/Using_the_PHP_pfSense_Shell

require_once('squid_reverse.inc');  
squid_refresh_crl();
Member: colinardo
colinardo Dec 05, 2017, updated at Dec 06, 2017 at 09:00:47 (UTC)
Goto Top
Hallo derHorst,
@bierverleih (lol face-big-smile) hat dich schon auf die richtige Fährte gebracht, leider ist sein Skript nicht ganz vollständig.

Deswegen hier nochmal die Anleitung für eine aktuelle pFSense mit installiertem Squid Package.

  • Man begebe sich auf die Konsole der pfSense und wähle den Menüpunkt 12) um die PHP-Shell zu öffnen
  • Nun gebe man folgende Kommandos nacheinander ein:
record squid_refresh
require_once("squid.inc");
squid_resync();
stoprecording
exit
Damit ist die Aufzeichnung der PHP-Aktion gespeichert.

Aufrufen kann man sie nun jederzeit über die Shell mit folgendem Befehl:
pfSsh.php playback squid_refresh
Grüße Uwe

[OT]
p.s. @bierverleih : Nimmst du das Bier nach Gebrauch echt wieder zurück face-smile? Na dann Prost ...
[/OT]
Mitglied: 134464
134464 Dec 05, 2017 at 15:56:58 (UTC)
Goto Top
Zitat von @colinardo:

[OT]
p.s. @bierverleih : Nimmst du das Bier nach Gebrauch echt wieder zurück face-smile? Na dann Prost ...
[/OT]
Klar face-big-smile genau so kommts wieder in die Flaschen face-wink.
Member: horstvogel
horstvogel Dec 05, 2017 updated at 17:14:28 (UTC)
Goto Top
Hallo Uwe,
hinter stoprecording tauchen Zahlen auf, ist das richtig??

reverse proxy

Danke, der Horst

und dann so einfügen? Oder ist das ein Shell command
Vermutlich muss hier noch der Pfad usr/local/pkg/ vor?
reverse proxy 2
Member: colinardo
colinardo Dec 05, 2017 updated at 18:40:28 (UTC)
Goto Top
Zitat von @horstvogel:

Hallo Uwe,
hinter stoprecording tauchen Zahlen auf, ist das richtig??
Nein das ist so nicht richtig. Vermutlich nur das falsche Keyboard Encoding gesetzt. Setze es auf der Konsole mit der Eingabe von kbdmap.
und dann so einfügen? Oder ist das ein Shell command
Die Zeile oben ist ein Shell-Command. Wenn du stattdessen die Befehle von oben (ohne record, stoprecording und Exit) direkt verwenden willst ist die Auswahl "PHP Command-Skript richtig. Geht beides, entweder oder.
Vermutlich muss hier noch der Pfad usr/local/pkg/ vor?
Nein, das Skript ist in der Path.
Member: horstvogel
horstvogel Dec 05, 2017 updated at 18:47:56 (UTC)
Goto Top
Hallo Uwe,
danke für Deine Hilfe

also so?
Was macht man mit dem Semikolon?
Ich glaube nicht das das richtig ist? Sieht seltsam aus
Danke!

reverse proxy 3

Setze es auf der Konsole mit der Eingabe von kbdmap
Wo setzte ich das? Kann ich dann die Befehle einfach nochmals eingeben? Wird das Script dann überschrieben?
Member: colinardo
colinardo Dec 05, 2017 updated at 18:55:45 (UTC)
Goto Top
Zitat von @horstvogel:

Hallo Uwe,
danke für Deine Hilfe

also so?
Was macht man mit dem Semikolon?
Ich glaube nicht das das richtig ist? Sieht seltsam aus
Doch das muss sein weil das zwei separate Anweisungen sind und in PHP das Semikolon das Zeilenende bedeutet und die nächste Anweisung folgen kann!!
Setze es auf der Konsole mit der Eingabe von kbdmap
Wo setzte ich das?
Auf der Konsole (im Menü Punkt 8 wählen) und dann eintippen , dann kommt ein grafisches Menü mit dem du die Belegung auswählen kannst.
Kann ich dann die Befehle einfach nochmals eingeben?
Ja.
Wird das Script dann überschrieben?
Ja aber das Skript brauchst nicht mehr wenn du es oben schon als PHP Command-Skript angibst, wie gesagt entweder oder, nicht beides gleichzeitig face-wink
Member: horstvogel
horstvogel Dec 05, 2017 at 18:58:57 (UTC)
Goto Top
Mit dem Script ist klar, dass muss aber nicht gelöscht werden?
Also der PHP Befehl ist so richtig, ohne Leerzeichen und am Ende wieder ein Semikolon?
Danke!!
Member: colinardo
colinardo Dec 05, 2017 updated at 19:00:49 (UTC)
Goto Top
Zitat von @horstvogel:

Mit dem Script ist klar, dass muss aber nicht gelöscht werden?
Nein, musst du nicht.
Also der PHP Befehl ist so richtig, ohne Leerzeichen und am Ende wieder ein Semikolon?
Danke!!
Korrekt, ob da jetzt vor oder hinter dem Semikolon noch ein Leerzeichen sitzt ist aber egal.
Ganz normales PHP Reglement.
Member: horstvogel
horstvogel Dec 05, 2017 updated at 19:03:57 (UTC)
Goto Top
Gerade mal getestet mit

mit Renew
ging leider nicht, Zertifikat wurde erzeugt, aber halt nicht geladen

2017-12-05 20_02_29-pfsense.localdomain - services_ acme_ certificates - internet explorer
Member: colinardo
colinardo Dec 05, 2017 updated at 19:08:31 (UTC)
Goto Top
Ähm du verwechselst da was! Meine Zeilen oben erneuern dein Zertifikat nicht sondern führen nur deine gewollte Aktion des "CRL Refresh" durch, nicht mehr und nicht weniger!
Deine Frage war ja
Wie wäre der Aufruf für den Refresh CRL des Squid Reverse Proxy?
Eine CRL ist kein Zertifikat, sondern nur eine Liste der zurückgerufenen Zertifikate ! Ich glaube du hast da was missverstanden.
Member: horstvogel
horstvogel Dec 05, 2017 at 19:08:49 (UTC)
Goto Top
Ist klar, dass Zertifikat wird erneuert indem ich auf Renew drücke, dann sollte durch das PHP Script automatisch CRL Refresh ausgeführt werden. Zertifikat ist neu, aber wurde nicht geladen, von Hand auf CRL Refresh gedrückt und das Zertifikat wurde geladen und der Browser zeigt das neue Datum von heute an.
Danke!
Member: horstvogel
horstvogel Dec 05, 2017 at 19:10:05 (UTC)
Goto Top
Oder kann man das über Renew nicht testen?
Member: horstvogel
horstvogel Dec 05, 2017 at 19:12:08 (UTC)
Goto Top
Ich habe nur noch einen Schuss frei, dann habe ich die 5 Stück Renew pro Woche erreicht face-wink
Member: horstvogel
horstvogel Dec 05, 2017 updated at 19:18:31 (UTC)
Goto Top
Zitat von @colinardo:

Eine CRL ist kein Zertifikat, sondern nur eine Liste der zurückgerufenen Zertifikate ! Ich glaube du hast da was missverstanden.

Wenn ich CRL drücke, dann wird auch ein neuerzeugtes Let´s Encrypt Zertifikat geladen, Ziel ist es, alle 60 Tage soll automatisch das Let´s Encrypt Zertifikat erneuert werden, dieses soll automatisch dem Reverse Proxy zur Verfügung gestellt werden
Das ist mein eigentlicher Wunsch. Ich glaube das habe ich überhaupt nicht geschrieben...
Sorry
Member: colinardo
colinardo Dec 05, 2017 updated at 19:20:53 (UTC)
Goto Top
Dafür muss die Config neu eingelesen werden, ich hatte nur das CRL Update eingebaut für einen Config Reload müsste noch ein
squid_resync_reverse() dazwischen .
Kann es aber morgen erst testen.
Member: colinardo
colinardo Dec 05, 2017 updated at 19:20:25 (UTC)
Goto Top
Zitat von @horstvogel:

Ich habe nur noch einen Schuss frei, dann habe ich die 5 Stück Renew pro Woche erreicht face-wink
Dafür gibt es das Developer Environment für Testzertifikate bei Lets Encrypt mein Junge face-wink
Member: horstvogel
horstvogel Dec 05, 2017 at 19:22:11 (UTC)
Goto Top
so?

2017-12-05 20_21_33-pfsense.localdomain - services_ acme_ certificate options_ edit - internet explo

Danke!
Member: horstvogel
horstvogel Dec 05, 2017 updated at 19:27:43 (UTC)
Goto Top
Das ist dann die Testumgebung? Junge, Junge, das ist etwas viel für mich, dass sagt unser alter Grieche auch immer, wenn er einen im Tee hat face-wink
2017-12-05 20_24_59-pfsense.localdomain - services_ acme_ certificate options_ edit - internet explo
Member: horstvogel
horstvogel Dec 05, 2017 at 19:31:19 (UTC)
Goto Top
Wer lesen kann ist klar im Vorteil... man, ich mache jetzt Schluss, habe auch keinen Schuss mehr frei. Danke! Wäre super wenn Du mir eine Rückmeldung geben könntest.
Danke!!
2017-12-05 20_29_49-pfsense.localdomain - services_ acme_ certificates - internet explorer
Member: colinardo
Solution colinardo Dec 06, 2017 updated at 09:03:20 (UTC)
Goto Top
Hallo Horst,
hier wie versprochen meine Rückmeldung.
Also Folgendes Skript führt hier zum gewünschten Erfolg (getestet mit einer aktuellen 2.4.2):

require_once("squid.inc"); squid_resync();

screenshot

Und das Ergebnis einer Zertifikats-Erneuerung:

screenshot

Aufruf des Reverse-Proxies wurde getestet und die Seriennummer des erneuerten Zertifikats im Browser bestätigt.

Erster Post wurde daraufhin zus. aktualisiert.

Hoffe ich konnte dir helfen.
Schöne Woche weiterhin.

Grüße Uwe
Member: horstvogel
horstvogel Dec 06, 2017 at 15:21:37 (UTC)
Goto Top
Bombe!!! Läuft, vielen Dank!!
Wobei meine ich bei meiner Haupt PFsense noch warten muss, die 5 Zertifikats-Erneuerungen ja erreicht face-wink.

Muss ich die eingegebene PHP Shell von gestern löschen? Da kommt jetzt folgende Fehlermeldung?
Danke!

2017-12-06 15_57_59-pfsense.localdomain - diagnostics_ crash reporter - internet explorer
Member: colinardo
colinardo Dec 06, 2017 updated at 15:27:35 (UTC)
Goto Top
Zitat von @horstvogel:
Bombe!!! Läuft, vielen Dank!!
Keine Ursache. face-smile So solls sein.
Wobei meine ich bei meiner Haupt PFsense noch warten muss, die 5 Zertifikats-Erneuerungen ja erreicht face-wink.
Kannst ja auch testweise auf den Staging-Kanal wechseln, fürs testen reicht das ja auch.
Muss ich die eingegebene PHP Shell von gestern löschen? Da kommt jetzt folgende Fehlermeldung?
Nein da brauchst du nichts löschen das war nur der Log-Eintrag von gestern.