OPNsense Forum

International Forums => German - Deutsch => Topic started by: fox-octi on December 29, 2021, 08:36:27 pm

Title: Opnsense OpenVpn Status auslesen
Post by: fox-octi on December 29, 2021, 08:36:27 pm
Hi,

wo finde ich das Status File von openvpn Dienst? Der Webdienst muss hier ja auch ran kommen, hab es leider nicht gefunden. Hab das Thema, das einige VPN Clients nicht auf Ping antworten, ich jedoch trotzdem gern die Verbindungen im Monitoring haben möchte, daher die Idee.

Gruß

Chris
Title: Re: Opnsense OpenVpn Status auslesen
Post by: fox-octi on December 29, 2021, 08:52:35 pm
Noch ein wenig geschaut und folgendes File gefunden:
/usr/local/www/status_openvpn.php

bei mir ist es somit:
echo "status 2" | socat UNIX-CONNECT:/var/etc/openvpn/server1.sock -


die Sockets bekommt ihr hiermit raus:
cat /var/etc/openvpn/*.conf | grep management


um es später ins Monitoring zu bekommen:
https://github.com/opnsense/plugins/issues/2713



Title: Re: Opnsense OpenVpn Status auslesen
Post by: fox-octi on December 30, 2021, 03:38:52 pm
Hi,

ich habe es mit Check_mk Nun doch gebaut, nach dem das Feedback ein bissel ernüchtern war, was die Integration in Opnsense angeht.

Ergebnis:
(https://i.ibb.co/8xNXbct/vpn.png)

Es sind aber an Checks dem ganzen keine grenzen gesetzt.

Auf Check_MK Instanz:
1.SSH Key erstellen "ssh-keygen -t rsa" und den Key hinterlegen unter CheckMK instanz /instanz/ssh


Unter Opnsense

Auf Opnsense als ROOT SSH:

Auf Check_mk Instanz:

Testen und glücklich sein. OpenVPN Status ist damit drin und für meine Historie von Openvpn habe ich noch folgenden Check erstellt:
###$OMD_ROOT/ssh/localchecks/openvpn-stat.sh
for i in $(ls /var/etc/openvpn-csc); do
        for s in $(ls /var/etc/openvpn-csc/$i); do
        cat /var/log/openvpn/openvpn-status.log | grep $s >/dev/null
        retVal=$?
                if [ $retVal -ne 0 ]; then
                        echo "0 OpenVPN_$s State=0 OK - OpenVPN Nutzer $s is offline"
                else
                        echo "0 OpenVPN_$s State=1 OK - OpenVPN Nutzer $s is online"
                fi
        done;
done;


Ergebnis:
(https://i.ibb.co/8xNXbct/vpn.png)
Title: Re: Opnsense OpenVpn Status auslesen
Post by: NilsS on January 21, 2022, 07:32:56 pm
Moin,

falls da noch jemand Interesse hat. Wir haben da so ein bisschen was gebaut.

https://github.com/bashclub/check-opnsense

Hat keine Abhängigkeiten.
Installation
Code: [Select]
fetch -o /usr/local/etc/rc.syshook.d/start/99-checkmk_agent https://github.com/bashclub/check-opnsense/raw/main/opnsense_checkmk_agent.py
chmod +x /usr/local/etc/rc.syshook.d/start/99-checkmk_agent
/usr/local/etc/rc.syshook.d/start/99-checkmk_agent

Status so fast Beta.

Derzeit implementiert

Firmware alter aktuelle Version/neue Version verfübar
Interfaces (mit Namen aus Description)
Gateways
OpenVPN Server/Client
OpenVPN je Client (kann über Client Specific Overrides konfiguriert werden ... nur common name des Zertifikats oder Username angeben / Description kann benutzt werden um den Servicenamen zu ändern)

Title: Re: Opnsense OpenVpn Status auslesen
Post by: NilsS on January 22, 2022, 09:24:42 am
Das Script ist derzeit auf --start parameter dauer eingestellt, damit es über den syshook Ordner einfach mitstartet.

Es sind aber eigentlich alle Funktionen die AFAIK für einen Dienst unter OPNsense benötigt werden vorhanden --start,--stop,--status, daher sollte eine Migration zu einem Plugin leicht möglich sein. CC @mimugmail wenn du vielleicht Lust zu helfen hättest.
Title: Re: Opnsense OpenVpn Status auslesen
Post by: cdn on May 22, 2022, 12:24:37 am
Das Plug-in würde mich auch sehr interessieren. Gibt es hier schon Neuigkeiten?
Title: Re: Opnsense OpenVpn Status auslesen
Post by: block-by-default on December 11, 2022, 12:21:50 pm
Hallo zusammen,

ich bin auch sehr an dem CheckMK plugin für opnsense interessiert und möchte dieses gerne einbinden. Zusätzlich möchte ich dann die lokalen check's per bash/python für checkmk erweitern.
Bspw. wenn updates per opk upgrade anstehen ...

Habe mir dies hier angeschaut: https://docs.checkmk.com/latest/de/agent_freebsd.html
Jedoch habe nun mehrfach gelesen, dass man ssh anstelle von inetd verwenden soll, da bei jedem update/upgrade von opnsense sonst die Konfiguration überschrieben wird ;(

Danke & Gruß,
 
Title: Re: Opnsense OpenVpn Status auslesen
Post by: NilsS on December 15, 2022, 04:39:31 pm
Du kannst das https://github.com/bashclub/check-opnsense/tree/testing doch nehmen, ja kannst du auch erweitern mit zusätzlichen scripts wie beim original.

Pfad ist ein wenig spackig. /usr/local/local bzw. auch /usr/local/local/300 ablegen wie beim orginal um nur alle 5min abzurufen.

PS: das testing branch ist aus welchen Gründen auch immer noch nicht ins main geschoben. Das ist aber bei vielen Leuten so im Einsatz. 0.99 ist die aktuelle Version
Title: Re: Opnsense OpenVpn Status auslesen
Post by: katamadone [CH] on February 21, 2024, 09:30:51 pm
herzlichen Dank schonmal für das Plugin. Hat sich das schon jemand umgeschrieben für die "neuen" OpenVPN Instanzen?