Hallo zusammen,
gleich vorweg: ich bin wohl zu blöd für die existierenden Anleitungen.
Ich habe ein paar Modifikationen auf meinen OPNSense-Geräten durchgeführt. Natürlich muss ich diese Dinge nach einem Upgrade wieder manuell nachziehen. Um es ab jetzt "richtig" zu machen, brauche ich eine Anleitung für doofe, wie ich z.B. ein Verzeichnis (z.B. /opt/Check_mk) in ein Paket bekomme. Das Paket soll also einfach nur Ordner/Dateien beinhalten.
Als Steigerung dazu würde ich gern wissen, wie ich z.B. die Dateien /etc/hosts.allow, /etc/inetd.conf und /etc/services um ein paar Zeilen erweitern kann, aus einem Paket heraus natürlich.
Dann wäre noch cool, wenn mit jemand erklärt, wie ich opnsense dazu bringe den Dienst inetd beim booten zu starten... das natürlich auch via Paket.
Das alles habe ich von Hand hinbekommen, aber wie gesagt, nach einem Update ist nur noch die Hälfte da. Und ja, ich habe mir die Beispiele und auch HelloWorld angeschaut - auch mehrmals! Liegt wohl an mir ;)
Ich checks nicht ganz, willst du ein Plugin für check_mk bauen?
Ich hab den Check_MK-Agent auf opnsense laufen. Ich möchte daraus ein Paket machen, damit ich nicht nach jedem Update von opnsense manuell eingreifen muss, denn das Update macht die Änderungen bspw. /etc/hosts.allow oder /etc/services zunichte...
Dann kommen die Files vermutlich aus einem OPNsense template - solltest du das vielleicht verändern und die sourcen ins core repository einfließen lassen.
Im Notfall mit einem Cron-Job überschreiben.
Im Moment kommen die Files nirgendwo her. Ich habe den Check_Mk-Agent nach /opt/ kopiert, ein paar Plugins dazu gelegt und die drei Dateien in /etc geändert (services, hosts.allow und inetd.conf). Ein Cron-Job macht jede Stunde einen service inetd onerestart, damit habe ich nach einem Reboot maximal eine Stunde keinen Zugriff auf den CMK-Agent.
Ich habe aber immer noch nicht verstanden wie ich daraus ein opnsense-Paket baue. Ein Debian-Paket zu bauen ist easy, ein rpm zu bauen schaffe ich auch, aber ich finde keine Anleitung für opnsense wo die 3-7 Schritte logisch dokumentiert sind. Ich will keine GUI umbauen, ich will keine LDAP-Anbindung oder sonst was ;)
Wenn ich das mit den Paketen verstanden habe werde ich einige Plugins zur Verfügung stellen (sarg-reports, unbound-lists, check_mk mit div plugins, etc...)
plugins ist easy.
Wenn du jetzt zum Beispiel aufs nginx plugin gehst, wirst du zwei Textdateien finden, die erforderlich sind: Makefile und pkg-descr. https://github.com/opnsense/plugins/tree/master/www/nginx
Im Makefile gibst du an, wie dein plugin heißt und andere Metadaten. Das andere File ist Freitext - kann theoretisch auch leer sein.
Alle daten im src Verzeichnis, werden im OPNsense unter /usr/local 1:1 verfügbar sein. Ein paket kannst du meines Wissens nach mit make package bauen.
Danke Fabian, ich habe jetzt zumindest schon mal ein Paket welches eine Datei ablegt... den Rest erfrage ich dann mal auf englisch, denn mir fehlt jetzt das Wissen, wie ich Dateien modifiziere und Dienste beim booten starte (inetd).
Danke
Marc