OpenVPN Daten auf einer anderen pfSense Maschine importieren



  • Hallo.

    Ist es möglich CA,CERT und OpenVPN Client Daten von der config.xml Datei einer Maschine zu kopieren und auf eine andere pfSense Maschine in config.xml erfolgreich zu importieren?
    Funktioniert so etwas, oder gibt es einen einfacheren Weg?



  • Hallo,

    über Diagnose->Backup/Restore kannst du bspw. die OpenVPN Konfig exportieren und auf einem anderen System importieren.
    Über System->Cert Manager kannst du die CA und Zertifikate mit private Keys exportieren.

    Schau mal bitte ob es so klappt. Sollte aber einfacher sein als die XML Dateien zu bearbeiten.

    Grüße



  • @bouven:

    Über System->Cert Manager kannst du die CA und Zertifikate mit private Keys exportieren.

    Über System-> Cert Manager kann man tatsächlich ca cert+user cert+user cert key in .p12 Format exportieren.
    Schön wäre es, wenn man das irgendwie wieder importieren könnte.

    Unter Diagnostics-> Backup/ Restore-> kann man unter Backup area: OpenVPN auswählen und nur OpenVPN Clients exportieren/importieren.



  • das Cert (*.crt) kann man nach dem Export mit dem Editor öffnen, auf der Ziel pfSense dann eine neue CA Anlegen als Method "Import an existing Certificate Authory" und unter Certificate Data den Inhalt einfügen.



  • Alles viel zu aufwändig. Mach das nicht! Je nach Anzahl ist man damit ja stunden beschäftigt. Das ist nicht IT gerecht ^^

    Ich habe hier auch zwei Systeme im Einsatz. Eine Testfirewall in der ich immer erst alle updates und alles neue teste, denn gerade bei Updates spinnt die pfsense gerne mal.
    Wenn da alles klappt extrahiere ich dann die Einstellungen aus einer xml, kopiere es in die andere und restore (am Besten ist der interne Restore, da beim Upload der Config auch alle packages neu installiert werden, was auch gerne mal zu Problemen führt.)
    Mit internem Restore meine ich Diagnostic -> Backup/Restore -> Config History. Hier kann man sehr schön zu einem alten Stand zurück und hier wählst du aus, welchen Stand du im Backup Ordner editiert hast. Bei einem Fehler in der Config wird die letzte funktionierende Version geladen und alles ist gut.

    Mit ein wenig Übung klappt das dann sehr gut ^^

    eine Gute Hilfe ist ein Xml Editor, in dem man Einrückungen oder Textblöcke sortieren kann:
    Notepad++ -> Sprache - XML -> Ansicht: Alle Textblöcke schließen ;)

    Beispiel für die Certs, CA und revocation lists:
    Manuell:
      Export -> öffnen mit editor -> zwei mal kopieren für import (cert und pkey)
    config.xml:
    alle Einträge <cert>(…)</cert> , <ca>(...)</ca> , <crt>(...)</crt> kopieren und in die andere xml an passender stelle einfügen und erledigt ;)

    Ich exportiere und importiere doch keine 150 User Zertifikate  und dazugehörige ca und crt manuell...

    PS: ich editiere allerdings recht oft in der XML, da mir die GUI Optionen oft zu eingeschränkt sind. Geht damit los, dass man keine Möglichkeit hat blacklists zu managen, außer sie zu installieren und anzuwenden oder nicht.
    Oder ssl-bump im squid... da fehlen fast alle Optionen in der GUI...

    Wenn du ein deutlich besser dokumentiertes Firewall System suchst, schau dir mal Smoothwall an. Die offiziellen Dokus zu pfsense geben ja nahezu keine Info über die Systemstruktur. In der Smoothwall hab ich mit der Doku 2 Stunden gebraucht, um ne eigene Seite zu erstellen hier bei pfsense habe ich nach einer Woche noch nicht herausfinden können, wie man eine eigene Seite einbindet. (Eigenes Log und Log viewer für openvpn mit excel export zur Auswertung für die Zeiterfassung)

    Ui jetzt hab ich aber ein durcheinander geschrieben ^^ vlt hilfts ja



  • Wenn ich mich mit der pfSense Konfiguration 3 Wochen lang nicht beschäftige, dann vergesse ich sehr schnell was man bei der Konfiguration alles beachten muss.

    alle Einträge <cert>(…)</cert> , <ca>(...)</ca> , <crt>(...)</crt> kopieren und in die andere xml an passender stelle einfügen und erledigt ;)

    Bleibt wohl die einzige Möglichkeit. Gerade bei pfSense fände ich es aber schöner, wenn man eine große Zahl von Zertifkaten über GUI mit einem Klick importieren/exportieren könnte.

    PS: ich editiere allerdings recht oft in der XML, da mir die GUI Optionen oft zu eingeschränkt sind. Geht damit los, dass man keine Möglichkeit hat blacklists zu managen, außer sie zu installieren und anzuwenden oder nicht.
    Oder ssl-bump im squid… da fehlen fast alle Optionen in der GUI...

    Hast du schon den Entwicklern vorgeschlagen die fehlenden Optionen in der GUI einzubauen?



  • Nein… denkst du das bringt was? Auf eine solche Idee sollte man doch längst alleine gekommen sein ;)

    Ich finde die Möglichkeit garnicht so schlecht... es sollte nur Dokumentiert sein, damit man nichts falsch macht.

    Ich habe mich mal daran versucht ein eigenes package für solche Sachen zu machen, es ist mir aber nahezu unmöglich mich in dem Interface zurechtzufinden und ne einfache php Datei einzuhängen


  • LAYER 8 Moderator

    Nein… denkst du das bringt was? Auf eine solche Idee sollte man doch längst alleine gekommen sein ;)

    @Hanswerner: Ich glaube du bringst hier ordentlich was durcheinander. Die Pakete die du anmängelst sind alles externe Packages mit eigenen Maintainern. Zumindest lese ich das raus aus deinem sanften Rant. Squid, pfblocker oder sonstwas sind keine Core-Funktionen und das hat auch seinen Grund. Im Umkehrschluß heißt das aber, dass die durchaus einfacher (in der Vergangenheit zumindest) zu updaten waren und einen eigenen Ansprechpartner haben. Deshalb gibts dafür eben auch eigene Subforen etc. Dann würde ich ggf. auch mal dort "meckern" (im freundlichen Sinn) als sich andernfalls darüber zu beklagen, dass da keiner drauf kommt. Die Philosophie beim Design mancher Pakete geht vielleicht auch einfach nur in eine andere Richtung (bspw. "stelle die Funktion x möglichst einfach zur Verfügung" und nicht "stelle alle Funktionen von Tool y in der UI dar"). Trotzdem gibt es an vieler Stelle Beispiele dafür, dass eben Advanced Options nichts böses sind und durchaus in die UI wandern können :)

    Und was "eigene Seite" angeht - es ist u.a. auch deshalb so schlecht dokumentiert, weil es nicht trivial war, mit dem Umbau auf Bootstrap und Änderung der ganzen Paketzusammensetzung sollte es (wenn nicht sogar bereits vorhanden) demnächst ein Beispiel Package/Modul geben. Dann muss man sich das eben (GitHub lässt grüßen) mal ansehen.

    @Bernd: Ansonsten muss man das ggf. mal eskalieren, dass der Punkt OpenVPN im Backup auch mal alles zu OpenVPN gehörige exportiert, und nicht nur den Client Part. Da sollte schon alles an Zertifikaten mit bei sein, die berührt werden. Ich vermisse auch immer noch eine Variante "Certificate Store" wo der komplette Cert-Storage mal exportiert werden kann. Wäre auch eine Idee das mal einzutüten. Wenn immer nur gemeckert wird (nicht mal böse gemeint), dann passiert auch nüscht, weils vom Team niemand mitbekommt, dass so viele Leute das eben gern mal hätten :)



  • Dann habe ich da was falsch verstanden…
    wenn die Packages gar kein Bestandteil der eigentlichen Firewall sind, wundert mich das nicht mehr. ;)

    Naja, das Meckern ist ja kein eigentliches Mecker, nur ein Hinweis auf die Umstände, die mir nicht gefallen ^^
    Mit den neuen Infos weiß ich ja jetzt auch, dass die integrierten Bestandteile der Firewall recht gut funktionieren und nur die Packages mucken.

    • Der Openvpn Server müsste noch etwas erweitert werden (user log, anzeige, config export), dass habe ich aber vorgeschlagen bzw. mich an die existierenden
          Feature Requests drangehängt.

    Um mal ein Lob loszuwerden: Der XML Sync zur Standby Firewall bzw. das Restore von USB ist echt klasse gelungen ;)
    (Habe mir einen pfsense Boot Stick erstellt, der an der Firewall hängt und auf den regelmäßig die Config.xml kopiert wird. Im Fehlerfall dann stick ziehen und auf neuer Hardware installieren, Netzwerkkarten richtig Zuweisen, automatisches packages installieren, reboot und fertig ;)

    Die Komplexität ein eigenes Package zu erstellen oder die Unmöglichkeit schnell eine eigene Seite reinzuhängen stört mich aber wirklich.
    Ich denke ich kenne Webserver und deren Verhalten und konnte bisher immer die Seite erstellen:
    per grep existierenden Link suchen, in irgendeiner config Datei den Link einfügen, ev ein bisschen css und fertig ist zum Beispiel die "Log als Excel export Seite"

    Ich werde deinen Tipp aber wahrnehmen und mich da mal an offiziellerer Stelle melden


  • LAYER 8 Moderator

    wenn die Packages gar kein Bestandteil der eigentlichen Firewall sind, wundert mich das nicht mehr. ;)

    Naja ich will es damit auch nicht "wegdiskutieren", aber es stecken hinter den Packages eben andere Maintainer als hinter dem Core. Teils leider nicht mehr aktive Leute, weshalb mit 2.3 auch viele Pakete erstmal im Nirvana hängen, von denen ich hoffe, dass sich jemand als Maintainer findet. Teils sind aber auch die Upstream Projekte inzwischen tot.

    Naja, das Meckern ist ja kein eigentliches Mecker, nur ein Hinweis auf die Umstände, die mir nicht gefallen ^^

    Deshalb auch mit ;) Augenzwinkern.

    Der Openvpn Server müsste noch etwas erweitert werden (user log, anzeige, config export), dass habe ich aber vorgeschlagen bzw. mich an die existierenden Feature Requests drangehängt.

    Was fehlt dir denn? User logins siehst du doch in den Logs? Config-Export in welcher Hinsicht (Client Config hat ein extra Package das das erledigt, ansonsten via System Backup?)

    (Habe mir einen pfsense Boot Stick erstellt, der an der Firewall hängt und auf den regelmäßig die Config.xml kopiert wird. Im Fehlerfall dann stick ziehen und auf neuer Hardware installieren, Netzwerkkarten richtig Zuweisen, automatisches packages installieren, reboot und fertig ;)

    Auch eine interessante Idee. Wir haben da was Skript-artiges gebastelt, was per SSH/SCP die config.xml und alle subversionen zyklisch runterlädt und gegen ein lokales GIT auto-committed, dann aber mit den Infos aus der pfSense, also wer was wann wie verändert hat. Damit haben wir quasi noch ein halbes Audit-Log dazubekommen.

    Die Komplexität ein eigenes Package zu erstellen oder die Unmöglichkeit schnell eine eigene Seite reinzuhängen stört mich aber wirklich.

    Mich manchmal schon, wenn ich mir denke, dass ich das gern machen würde aber es mich viel zu viel Zeit kosten wird ;)

    Den Punkt mit der eigenen Seite verstehe ich allerdings noch nicht ganz :)

    Grüße
    Jens


Log in to reply