Verschlimmbessertes VPN: Ein Wort der Warnung zu OPNsense/DECISO
OPNsense verliert sich mehr und mehr. Kommentar eines Admins, der mehr als ein Dutzend davon betreut.
OPNsense verliert sich mehr und mehr. Kommentar eines Admins, der mehr als ein Dutzend davon betreut.
Besucht man heute eine durchschnittliche Website, so werden unzählige Skripte und Tracker nachgeladen. Dadurch können die Webseitenbetreiber, Google, Facebook, usw. Daten über mich sammeln und meinen Streifzug durch die Weiten des Internets verfolgen. Zum Glück muss man sich diesem Treiben nicht ergeben und es gibt viele sinnvolle Erweiterungen z.B. für den Browser (uBlock Origin, uMatrix, etc.). Diese Lösungen haben den Nachteil, dass ich sie auf jedem Gerät und für jeden Browser einzeln installieren muss. Deshalb möchte ich heute vorstellen, wie man Werbung und unerwünschte Inhalte mit pfSense und pfBlockerNG netzwerkweit filtern kann. Das ist z.B. sinnvoll in einem Heim- oder Schulnetzwerk.
Zuerst loggen wir uns in pfSense ein und öffnen den Package Manager. Dort wählen wir pfBlockerNG-devel unter „Available Packages“ aus:
Mit „Install“ können wir das Paket installieren. PfSense lädt nun das pfBlockerNG Paket herunter und fügt es der Firewall hinzu.
Als nächsten werden wir pfBlockerNG konfigurieren. Dazu gehen wir zu Firewall → pfBlockerNG.
Es begrüßt und ein Assistent, der uns bei der Einrichtung von pfBlockerNG helfen wird. Mit „Next“ geht es weiter.
Auf der nächsten Seite wird erklärt, welche Dinge nun eingerichtet werden:
Mit „Next“ geht es wieder weiter.
Im nächsten Schritt müssen wir die eingehende Schnittstelle (WAN) und ausgehende Schnittstelle (LAN) auswählen. Wenn man mehrere interne Schnittstellen hat, kann man alle diejenigen auswählen für die man pfBlockerNG einrichten will. Möchte man z.B. das Gäste-WLAN filtern, aber nicht das WLAN für die Lehrkräfte, kann man hier die entsprechenden Schnittstellen aus bzw. abwählen.
Als nächstes müssen wir eine sogenannte VIP-Adresse festlegen. Auf dieser läuft der Webserver von pfBlockerNG und sollte unter keinen Umständen eine IP aus einem verwendeten Netzwerk sein! Wenn das LAN-Netz z.B. 192.168.1.1/24 ist, sollte die VIP-Adresse nicht in diesem Bereich liegen. Hier in unserem Beispiel lassen wir die Adresse bei 10.10.10.1. Die Ports muss man i.d.R. nicht ändern.
Das Setup ist nun fertig und wir können den Assistenten mit einem Klick auf „Finish“ beenden.
Danach öffnet sich die pfBlockerNG Updateseite und es werden automatisch alle aktivierten Blocklisten heruntergeladen und aktiviert.
Wir haben nun ein fertig eingerichtetes pfBlockerNG Setup, dass unerwünschte Werbung und bösartige Domains und Webseiten blockiert. pfBlockerNG ist aber ein sehr mächtiges & flexibles Werkzeug. Deshalb möchte ich gern ein paar Einstellungen hervorheben.
Wichtig: Damit geänderte Einstellungen auch wirksam werden (egal, ob DNSBL oder IP), müssen wir unter Update → Reload → All → Run ausführen, damit die (geänderten) Listen heruntergeladen und aktiviert werden.
Im IP Reiter, empfehle ich folgende Einstellungen:
Möchte man Zugriffe aus bestimmten Regionen der Erde verbieten, muss man sich zuallererst einen kostenloses Konto bei MaxMind erstellen. Daraufhin erhält man einen Lizenzschlüssel, den man unter IP → MaxMind GeoIP Configuration eintragen. Danach muss man einmal unter Update → Reload → IP die GeoIP Datenbanken herunterladen.
Nun können wir unter IP → GeoIP die gewünschten Kontinente oder Top-Spammer auswählen. Dazu klicken wir auf den kleinen Stift rechts und wählen dann in der Liste alle Einträge aus. Unten wählen wir noch „Deny Both“ (List Action).
Hinweis zu „Deny Inbound“ und „Deny Outbound“: „Deny Inbound“ bedeutet, dass die IPs für alle eingehenden Verbindungen geblockt werden. Wenn man z.B. einen Webserver betreibt und man möchte bestimmte Länder blocken, dann kann man das mit „Deny Inbound“ machen. „Deny Outbound“ gilt für alle ausgehenden Verbindungen, d.h. ich kann mich von einem Rechner im Netzwerk nicht zu dieser IP verbinden. Hier muss man aufpassen! Wenn ich z.B. alle IPs Nordamerikas mit „Deny outbound“ sperre, kann ich ab sofort keine Webseiten mehr erreichen, die auf diesem Kontinent gehostet sind!
pfBlockerNG blockt neben IPs auch Domains. Es findet also keine Man-in-the-Middle-Attacke statt, um Inhalte zu filtern, sondern es wird einfach in eine lange Liste geschaut, ob eine Domain erlaubt ist oder nicht (funktioniert auch mit HTTPS). Unter Feeds können wir einstellen, welche Listen aktiv genutzt werden sollen. Es gibt dabei Feeds für IP Blocklisten, als auch für DNSBL, also Blocklisten für DNS / Domains.
Alle aktivierten Feeds haben einen Haken am Ende der Zeile. Wenn wir nun einen noch nicht aktiven Feed hinzufügen wollen, klicken wir einfach auf das „+“:
Es öffnet sich eine Seite auf der wir Details zu dem Feed einstellen können. Folgende Felder sind wichtig:
Manchmal möchte man einen Feed hinzufügen, der nicht in der Liste ist (z.B. einzelne Feeds von Steven Black). Dazu gehen wir zu DNSBL → DNSBL Groups und klicken unten auf „Add“:
Auf der nächsten Seite geben wir der DNSBL Gruppe einen Namen und fügen und DNSBL Source Definitions unseren Feed (oder mehrere) hinzu.
Mit „Save“ schließen wir den Vorgang ab.
Wenn eine Domain nicht geblockt werden soll, muss man sie unter DNSBL → DNSBL Whitelist in die Whiteliste aufnehmen. Wenn man einen Punkt („.“) vor den Domainnamen setzt, werden auch alle Subdomains freigeschaltet, sonst nur genau die (Sub)Domain, die man eingetragen hat.
Unter DNSBL → DNSBL SafeSearch kann man SafeSearch für die bekanntesten Suchmaschinen einstellen. Weiterhin können wir auch noch DNS over HTTPS von Firefox blockieren sowie Beschränkungen für Youtube einstellen.
Damit auch alle Anfragen in unserem Netzwerk durch pfBlockerNG gefiltert werden, müssen wir verhindern, dass jemand im Netzwerk einen anderen DNS-Server als den DNS-Server von pfSense verwendet. Dazu erstellen wir 2 Regeln für die LAN-Schnittstelle (mehr Details hier):
pfBlockerNG ist ein tolles Open Source Projekt. Es hilft Werbung, unerwünschte Inhalte und ganze Netzbereiche zu filtern. Egal ob IPs oder DNS-Blocklisten – mit pfBlockerNG kann man beides verwalten und so konfigurieren, wie man es für sein Netzwerk haben möchte. Es gibt aber auch Alternativen für pfBlockerNG, z.B. pi-hole, welches sich gut auf einem Raspberry Pi oder in einer VM bzw. Container installieren lässt. Unter Strich bleibt, dass ein werbefreies Netzwerk möglich ist!
Nutzt du pfBlockerNG oder pi-hole in deinem (Schul)Netzwerk?
Der Beitrag pfBlockerNG – Werbung und unerwünschte Inhalte filtern erschien zuerst auf zefanjas.
Seit vielen Jahren setzen wir stark auf Open Source Anwendungen in unserer Schule – auf dem Server, aber auch auf den Computern und Laptops. Vor allem im Serverbereich ist Open Source Software weit verbreitet und es gibt viele tolle Softwareprojekte, die sich wunderbar in einer Schule einsetzen lassen. Heute möchte ich deshalb meine 5 Favoriten vorstellen.
Koha ist ein integriertes Bibliothekssystem. Es wird weltweit in öffentlichen, Schul- und anderen Bibliotheken eingesetzt. Auch wir haben vor ca. 5 Jahren unsere Bibliothek auf diese Software umgestellt. Koha bringt sehr viele Features mit und ist flexibel in der Konfiguration. Der Einstieg ist, wenn man nicht gerade vom Fach ist, etwas steil, aber man wird dafür mit einem tollen System belohnt. Wer mehr über Koha und den Einsatz in Schulen erfahren möchte, sollte sich diese kleine Blog-Post Serie anschauen.
Mein nächster Favorit betrifft die Serverinfrastruktur. Wer eigene Server in der Schule betreibt, muss sich mit der Frage beschäftigen, welchen Hypervisor er einsetzen will. Die Auswahl ist groß und man kann zwischen einigen Open Source Optionen wählen. Wir haben uns vor Jahren für xcp-ng entschieden (aus XenServer hervorgegangen). Dazu setzen wir XenOrchestra ein, um die Server zu verwalten. Mit xcp-ng verwalten wir unsere virtuellen Maschinen.
Die meisten unserer (Web)Anwendungen laufen aber in Linuxcontainern. Dafür verwenden wir LXD – ein Container-Hypervisor. LXD bringt mit lxc einen sehr einfach zu bedienende Anwendung mit, um Container zu erstellen, Backups zu erstellen, usw. Der große Vorteil von Linuxcontainern ist für mich, dass ich sie genauso wie eine virtuelle Maschine verwalten, konfigurieren und administrieren kann. Dafür sind sie wesentlich ressourcensparender als eine VM. Seit dem 4.0 Release kann man sogar „richtige“ VMs mit LXD erstellen und verwalten!
Für mich ist pfSense eines der besten Open Source Firewall Systeme. PfSense kann man einfach installieren und benutzen und läuft seit Jahren sehr stabil in unserem Netzwerk. Mit pfBlockerNG hat man zusätzlich ein sehr mächtiges Werkzeug, um Werbung, Malwareseiten u.v.a. aus dem Netzwerk fernzuhalten (Webfilter auf DNS Basis).
Über linuxmuster.net habe ich schon oft in diesem Blog geschrieben. Linuxmuster.net ist eine Open Source Schulserverlösung, mit der man Benutzer (Lehrkräfte, Schüler/innen) und Schulcomputer einfach verwalten kann. LINBO, ein Werkzeug von linuxmuster.net, ist für mich eines der wichtigsten Features, denn damit kann ich alle Schulcomputer mit nur einem Image verwalten, auch wenn sie unterschiedliche Konfigurationen haben.
Nextcloud darf in dieser Liste nicht fehlen. Gerade in den letzten Monaten sind eine Menge neuer Features dazugekommen, die auch im Schulumfeld sehr nützlich sind. Nextcloud ist dabei weit mehr, als nur eine gemeinsame Dateiablage. Durch die vielen Erweiterungen kann man Nextcloud sehr an die individuellen Bedürfnisse anpassen. Egal ob Online Office Suite, Videokonferenz oder einfach nur ein gemeinsamer Kalender – vieles ist mit Nextcloud möglich.
Noch eine kleine Bonusempfehlung am Ende: Zammad. In den letzten Jahren haben wir verschiedene Service Desk / Helpdesk Anwendungen ausprobiert. Letztendlich sind wir bei Zammad gelandet und es gefällt uns sehr gut. Wie auch alle anderen Empfehlungen hier, bringt es viele nette Features mit. Es lässt sich gut in die bestehende Infrastruktur integrieren und man kann über viele verschiedene Kanäle Tickets erstellen (Soziale Netzwerke, eMail, Chat, …).
Die Liste hier könnte man noch beliebig erweitern. Gerade für den Infrastrukturbereich gibt es eine große Menge an Open Source Anwendungen. Allein diese Liste spricht für sich: https://github.com/awesome-selfhosted/awesome-selfhosted. Moodle oder Mahara sollten eigentlich auch noch mit aufgenommen werden, aber damit haben wir bisher kaum Erfahrung sammeln können.
Welche Open Source Anwendungen gehören zu deinen Favoriten, die in keiner Schule fehlen sollten?
Der Beitrag Die 5 besten Open Source Anwendungen für eine Schule erschien zuerst auf zefanjas.
pfSense ist eine Open Source Firewalllösung, die man gut zu Hause, in der Schule oder in einem Unternehmen einsetzen kann (siehe Installation + Hardwareempfehlungen). In den meisten Fällen möchte man Clients nicht ausschließlich per Netzwerkkabel verbinden, sondern auch kabellos. Am einfachsten geht es, wenn man dazu einen WLAN Access Point an die Firewall mit anschließt, die sich um die kabellosen Geräte kümmert (z.B. Smartphones).
Ein Bild sagt bekanntlich mehr als 1000 Worte:
Die LAN-Schnittstelle von pfSense verbindet man mit einem Switch, an dem man dann den Access Point und weitere kabelgebundene Clients anschließen kann.
Nachdem der Access Point angeschlossen ist (in unserem Beispiel ein Access Point von tp-link), muss er noch eingerichtet werden. Jeder Access Point bringt meistens auch ein Webinterface mit, über dass man Einstellungen vornehmen kann. Die IP-Adresse des Access Point findet man in pfSense unter Status → DHCP-Leases heraus.
Nun kann man auf das Webinterface des Access Point zugreifen.
Nach dem Login (bei tp-link ist der Standardbenutzername und das Passwort admin) richtet man unter Quick Setup alle wichtigen Einstellungen ein:
Es gibt zwar auch Mini-Computer und -router für pfSense, die einen WLAN-Chip mitbringen, doch kann man davon nur sehr wenige im Access Point-Modus betreiben. Meistens unterstützen sie nur den Client-Mode, d.h. man kann sich damit mit einem WLAN-Netz verbinden, aber selbst keines aufspannen. PfSense unterstützt nur wenige Karten im Access Point-Modus. Eine Übersicht findet man hier. Schlussendlich ist es IMHO deutlich einfacher einen Access Point mit pfSense zu verbinden statt den richtigen WLAN Chip zu finden.
Der Beitrag WLAN Access Point mit pfSense verbinden erschien zuerst auf .:zefanjas:..
pfSense gehört zu den am weitesten verbreiteten Open Source Firewalllösungen. Wir setzen sie seit einigen Jahren bei uns in der Schule ein und sind sehr zufrieden damit, weil sie einfach viele Features bietet, für die man woanders viel Geld hinlegen muss. Heute möchte ich deshalb zeigen wie man pfSense installieren und grundlegend einrichten kann. Davor möchte ich kurz auf verschiedene Hardware eingehen, die für den Betrieb von pfSense geeignet ist.
Allgemein kann man sagen, dass man für den Betrieb von pfSense theoretisch jeden Rechner nehmen kann, der mindestens zwei Netzwerkkarten hat. Das kann z.B. ein alter Computer sein, welchen man nicht mehr braucht und mit einer zweiten Netzwerkkarte ausstattet. Aber oft ist ein alter Rechner nicht sehr stromsparend und andere Alternativen sind angebrachter. Neben dem Stromverbrauch spielt vor allem der Einsatzzweck eine entscheidende Rolle. Es macht einen Unterschied, ob ich die Firewall zu Hause mit wenigen Benutzern einsetze oder in einer Schule oder einem Unternehmen mit wesentlich mehr Zugriffen.
Für den Heimgebrauch beliebt sind die APU2C4 Board von PC Engine, aber auch Kleinstrechner von Qotom (v.a. im asiatischen Raum). Für eine Schule oder Unternehmen ist – je nach Anforderung – ein Board mit mindestens 4 Netzwerkkarten zu empfehlen. Wir verwenden z.B. eine SG-4860 von Netgate. Wenn man bei Amazon oder AliExpress nach pfSense sucht, findet man viele Angebote. Wichtig ist nur, dass die CPU AES-NI unterstützt, da dieses Feature von pfSense in zukünftigen Versionen unbedingt nötig sein wird.
Auf der Website des pfSense Projekt gibt es noch ein paar allgemeine Hinweise zu den Hardwareanforderungen:
Auch die verfügbare Bandbreite sollte bei der Hardwareauswahl berücksichtigt werden, da ansonsten pfSense zum Flaschenhals werden könnte.
Bevor man mit der Installation beginnt, muss man wissen, welches pfSense Image man braucht. Das hängt z.B. davon ab, ob die verwendete Hardware einen VGA/HDMI Ausgang hat oder nur einen serielle Konsole. Oder ob man per CD, USB-Stick oder direkt auf die Festplatte installieren möchte. Deshalb möchte ich hier ein paar Hinweise geben:
Architektur:
Art des Image
Konsole
Wenn man weiß, welches Image man braucht, kann man es von der pfSense-Website herunterladen.
Die Dokumentation von pfSense enthält viele Informationen zur Vorbereitung eines USB-Sticks. In unserem Beispiel gehen wir von einen USB Memstick VGA Installer aus. Zuerst sollte man den USB-Stick formatieren oder leeren. Das geht unter Linux sehr einfach mit
$ sudo dd if=/dev/zero of=/dev/sdz bs=1M count=1
Hinweis: Unbedingt darauf achten, welches Gerät man hinter of=/dev/ angibt. Ansonsten kann es passieren, dass man seine Hauptpartition leert und somit Daten unwiederbringlich verloren sind! Um den Gerätenamen herauszufinden, steckt man am besten den USB-Stick an und führt danach
dmesg
in einem Terminal aus. Dann sieht man, welches Gerätenamen der USB-Stick bekommen hat (oft ist es /dev/sdb).
Anleitungen zum Leeren eines USB-Sticks unter Windows oder macOS finden sich in der oben verlinkten Dokumentation.
Nun kann man als nächstes das heruntergeladene Image auf den USB-Stick schreiben.
$ gzip -dc pfSense-memstick-2.4.4-RELEASE-amd64.img.gz | sudo dd of=/dev/sdz bs=1M $ sync
Der USB-Stick ist nun fertig vorbereitet. Als nächstes bootet man von diesem USB-Stick und kann die Installation beginnen. Je nach BIOS wird der Stick als USB-Gerät oder weitere Festplatte erkannt. Die Bootreihenfolge muss oft geändert werden, damit nicht von der 1. Festplatte gebootet wird. Die Dokumentation liefert auch einige Ideen, falls das Booten nicht klappen sollte.
Nach dem erfolgreichen Booten erscheint der Willkommensbildschirm von pfSense.
Hier wählt man „Install„. Im nächsten Dialog kann man das Keyboard Layout festlegen. Für die Partitionierung nimmt man am besten „Auto (UFS)“ und bestätigt wieder mit Enter.
Danach startet die automatische Installation. Ist die Installation beendet, wird man noch gefragt, ob man eine Shell öffnen möchte (kann man verneinen). Zum Schluss muss man das System neu starten („Reboot„). Beim anschließenden Start sollte man unbedingt darauf achten, dass nicht wieder vom USB-Stick gebootet wird, sondern von der Festplatte!
Während des Neustarts versucht pfSense automatisch die WAN Schnittstelle zu konfigurieren. Die WAN Schnittstelle ist die Netzwerkkarte, die mit dem Router des Internetanbieters oder ganz allgemein mit dem Internet verbunden ist. Falls die automatische Konfiguration erfolgreich ist, erscheint das pfSense Konsolenmenü, ansonsten wird man mit einem Dialog begrüßt.
Um die WAN und LAN Schnittstellen zu ändern, wählt man Nr. 1 „Assign Interfaces„. Nun muss man einige Fragen beantworten:
Falls an der WAN-Schnittstelle ein DHCP-Server läuft, sollte sie automatisch eine IP-Adresse bekommen haben. Falls nicht muss man sowohl für die WAN als auch die LAN Schnittstelle eine IP Adresse konfigurieren. Beispielhaft werde ich es hier für die LAN Schnittstelle zeigen. Dazu wählt man Nr. 2 „Set interface(s) IP address“ aus.
Mit einem Rechner, der ebenfalls LAN Netz ist, kann man unter https://10.10.10.1 auf Weboberfläche von pfSense zugreifen, um einige wenige Grundeinstellungen vorzunehmen. Beim ersten Mal erscheint eine Zertifikatswarnung. Da es sich um ein selbst signiertes Zertifikat für die HTTPS-Verbindung handelt, muss man es noch akzeptieren. Die Standardzugangsdaten sind admin mit dem Passwort pfsense.
Nachdem Login wird man von einem Assistenten begrüßt. Im zweiten Schritt kann man der Firewall einen Hostname vergeben und die Domain eintragen. Weiterhin wichtig ist der primäre und Sekundäre DNS Server und ob der DNS-Server per DHCP an der WAN-Schnittstelle überschrieben werden darf (um z.B. den DNS des Internetproviders zu verwenden).
In den nächsten Schritten stellt man die Zeitzone ein, überprüft noch einmal die Konfiguration der WAN und LAN Schnittstelle und sollte in Schritt 6 auf jeden Fall ein neues Admin-Passwort vergeben. Damit ist das Setup abgeschlossen.
Die Installation von pfSense geht meist leicht von der Hand. Schwierigkeiten gibt es manchmal bei der Auswahl des richtigen Images für die Installation bzw. dem Booten vom USB-Stick oder der Einrichtung der seriellen Verbindung. Die Dokumentation von pfSense geht aber auf viele dieser Probleme ein und bietet Lösungsvorschläge an. Nach der anfänglichen Konfiguration ist die Firewall einsatzbereit. Allerdings kann man die Firewall noch stark erweitern und anpassen. Das soll Thema zukünftiger Artikel sein.
Der Beitrag pfSense installieren erschien zuerst auf .:zefanjas:..
pfSense hat seit einigen Versionen eine völlig überarbeitete Oberfläche. Damit lassen sich alle Einstellungen i.d.R. gut erreichen und einstellen. Das frei konfigurierbare Dashboard ist ebenfalls eine feine Sache. Trotz allem gibt es manchmal den Fall, dass man Einstellungen gern über eine API oder die Kommandozeile vornehmen möchte. pfSense hat aktuell keine API, diese soll erst in einer der kommenden Versionen integriert werden. Bis dahin kann man sich über die pfSense Entwickler-Shell behelfen, auch pfSsh.php genannt.
Am schnellsten kommt man in die Entwickler-Shell, wenn man sich per SSH mit pfSense verbindet oder direkt einen Bildschirm an die Firewall anschließt. Wenn SSH noch nicht aktiviert ist, kann man das in der Weboberfläche unter System → Advanced nachholen.
Besser ist es, wenn man das Einloggen mit Passwort verbietet und nur das Anmelden mit Zertifikat erlaubt.
Ist der SSH-Zugang aktivert, kann man sich nun mit dem Admin-Benutzer anmelden (IP anpassen):
$ ssh admin@192.168.1.254
Unter Punkt 12 findet man die Entwickler-Shell, die im Grunde eine PHP-Shell ist.
Hier einige Beispielbefehle, die zeigen sollen, wie man die Shell verwenden kann. Jede Eingabe ist normaler PHP Code und muss mit exec;
abgeschlossen werden.
pfSense shell: print_r($config["dhcpd"]); pfSense shell: exec; Array ( [lan] => Array ( [range] => Array ( [from] => 10.0.1.7 [to] => 10.0.255.245 ) ) )
pfSense shell: $config['system']['domain'] = 'mydomain.com'; pfSense shell: write_config(); pfSense shell: exec;
Innerhalb der PHP Shell kann man auch normale Shell-Befehle ausführen, indem man ein „!“ davor setzt:
pfSense shell: ! cat /etc/version pfSense shell: exec; 2.4.3-RELEASE
Mit pfSsh.php kann man auch mehrere Befehle „aufnehmen“ und später „abspielen“. Diese sogenannten Sessions sind für wiederkehrende Aufgaben nützlich. Ein Beispiel:
pfSense shell: record echoTest Recording of echoTest started. pfSense shell: echo "Das\n"; pfSense shell: echo "ist\n"; pfSense shell: echo "ein\n"; pfSense shell: ! echo "Test\n" pfSense shell: exec; pfSense shell: stoprecording Recording stopped.
Die Eingaben werden unter /etc/phpshellsessions/ gespeichert und können dort bei Bedarf verändert werden.
Die „Aufnahme“ kann man nun wie folgt wiedergeben:
pfSense shell: playback echoTest Playback of file echoTest started. Das ist ein Test pfSense shell:
oder auch direkt von der root-Shell mit:
$ pfSsh.php playback echoTest
pfSsh.php ist ein nützliches Werkzeug, um pfSense mit Skripten zu automatisieren oder Anpassungen vorzunehmen. Gerade, wenn man mehrere Instanzen verwaltet oder ein bestimmtes Setup immer wieder braucht, ist pfSsh.php eine große Hilfe. Man kann z.B. alle Einstellung (sprich PHP-Code) in eine Datei packen, unter /etc/phpshellsessions/ speichern und dann ausführen oder direkt die Ausgabe an pfSsh.php weiterleiten:
$ ssh admin@192.168.1.254 '/usr/local/sbin/pfSsh.php' < MeineConfig.txt
Der Beitrag pfSense automatisieren mit pfSsh.php erschien zuerst auf .:zefanjas:..