OPNsense Forum

International Forums => German - Deutsch => Topic started by: opnsenseuser on June 22, 2018, 06:50:54 AM

Title: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 22, 2018, 06:50:54 AM
ich bekomme es einfach nicht hin einen simplen ping test auf einen host per monit plugin zu machen.

in den service test settings(gui) habe ich bei "Condition" folgenden syntax eingeben:

failed host 192.168.2.2

oder

failed host ping[3] 192.168.2.2

beide syntaxe funktionieren nicht und liefern die fehler "host" oder wenn ich den host weglasse "ping[3]".

wenn ich nur schreibe "failed" kommt als fehlermeldung "then" ?

selbst wenn ich den example code nehme

failed host 127.0.0.1 port 22 protocol ssh

kommt als Fehlermeldung "host" ??

was mach ich falsch? ich glaube ich steh auf der leitung oder bin ich einfach zu dämlich?
kann mir jemand helfen ?

Danke
Title: Re: Monitor plugin (falscher syntax)?
Post by: faunsen on June 22, 2018, 10:35:42 AM
Dein Service Test ist falsch.

Für einen simplen Ping Test brauchst Du
1. Service Test (müsste eigentlich mit der Installation des Plugins schon erstellt worden sein)
Name: Ping
Condition: failed ping
Action: Alert

2. Service
Name: ping123
Type: Remote Host
Address: 192.168.2.2
Tests: Ping
Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 22, 2018, 10:51:20 AM
Quote from: faunsen on June 22, 2018, 10:35:42 AM
Dein Service Test ist falsch.

Für einen simplen Ping Test brauchst Du
1. Service Test (müsste eigentlich mit der Installation des Plugins schon erstellt worden sein)
Name: Ping
Condition: failed ping
Action: Alert

2. Service
Name: ping123
Type: Remote Host
Address: 192.168.2.2
Tests: Ping

Zuerst mal Danke für deine Hilfe.

Hab leider den Test überschrieben und konnte diesen auch mit einer Neuinstallation des Plugins nicht auf die Standard werte zurücksetzen.

Ziel für mich ist es nur ein Interface (192.168.2.1) der Firewall zu restarten, wenn der Ping kein Ergebnis nach 3 versuchen liefert. Denn leider hängt sich manchmal das Interface wo der Access Point dran hängt einfach auf.
Bis jetzt war die einfachste Lösung die Firewall zu restarten, aber es wäre natürlich schöner wenn das Plugin das erkennen würde und einfach nur das Problem Interface restarten würde.

Wie müsste man das konfigurieren?

Danke nochmals,
Rene
Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 22, 2018, 01:43:10 PM
Ich habe jetzt das probiert: (Action / Execute)

/etc/rc.d restart opt1

aber das wird nicht akzeptiert.

Gibts da eine andere Möglichkeit nur das eine Interface an der Firewall zu restarten wenn das Interface an der Firewall nicht mehr funktioniert?

danke
Title: Re: Monitor plugin (falscher syntax)?
Post by: faunsen on June 22, 2018, 02:21:45 PM
Müsste mit
/etc/rc.d/netif restart <DEVICE>
funktionieren.
Das <DEVICE> bekommst Du von "Interfaces->Assignments".

Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 22, 2018, 02:45:30 PM
Quote from: faunsen on June 22, 2018, 02:21:45 PM
Müsste mit
/etc/rc.d/netif restart <DEVICE>
funktionieren.
Das <DEVICE> bekommst Du von "Interfaces->Assignments".

Danke, natürlich hat der Syntax nicht gestimmt. Hätte da aber auch von alleine draufkommen können.
Trotzdem danke für den Denkanstoß.

Leider aber funktioniert weder
/etc/rc.d/netif restart igb2
noch
/etc/rc.d/netif restart opt2

über service service settings/type:custom/Path

noch über settings/type:remotehost/start

auch nicht per execute command in "service test settings"

der syntax wird nicht akzeptiert. Fehler :"Program does not exist: 'igb2'" oder "opt2" je nachdem was ich angebe.
und wenn ich es als execute command mache kommt der Fehler:

/usr/local/etc/monitrc:29: Program does not exist: 'igb2' /usr/local/etc/monitrc:32: Program does not exist: 'igb2' Control file syntax OK
Title: Re: Monitor plugin (falscher syntax)?
Post by: faunsen on June 25, 2018, 10:35:18 AM
Du musst für den Ping Test die Aktion 'Restart' definieren.
Dann kannst Du im Service für 'Start' und 'Stop' die entsprechenden
Befehle verwenden.
Ich schätze aber, dass Du mit dem /etc/rc.d/netif nicht weit kommst,
da OPNsense eine eigene Logik hat die Netzwerkkarten zu aktivieren.

Aber Du kannst mal das hier probieren:
1. via OPNsense configctl mit dem Alias (z.B. OPT2)
Start: configctl interface linkup start <ALIASNAME>
Stop: configctl interface linkup stop <ALIASNAME>

2. via ifconfig und dem Interfacenamen (z.B. igb2)
Start: /sbin/ifconfig <INTERFACE> up
Stop: /sbin/ifconfig <INTERFACE> down

Vielleicht wäre es aber sinnvoller herauszufinden warum sich das Interface aufhängt.
Gibt es da keine Log Einträge? Link up/down o.ä.?
Irgendwelche Erkenntnisse aus sysctl -a | grep igb.2 ?



Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 25, 2018, 11:38:46 AM
Quote from: faunsen on June 25, 2018, 10:35:18 AM
Du musst für den Ping Test die Aktion 'Restart' definieren.
Dann kannst Du im Service für 'Start' und 'Stop' die entsprechenden
Befehle verwenden.
Ich schätze aber, dass Du mit dem /etc/rc.d/netif nicht weit kommst,
da OPNsense eine eigene Logik hat die Netzwerkkarten zu aktivieren.

Aber Du kannst mal das hier probieren:
1. via OPNsense configctl mit dem Alias (z.B. OPT2)
Start: configctl interface linkup start <ALIASNAME>
Stop: configctl interface linkup stop <ALIASNAME>

2. via ifconfig und dem Interfacenamen (z.B. igb2)
Start: /sbin/ifconfig <INTERFACE> up
Stop: /sbin/ifconfig <INTERFACE> down

Vielleicht wäre es aber sinnvoller herauszufinden warum sich das Interface aufhängt.
Gibt es da keine Log Einträge? Link up/down o.ä.?
Irgendwelche Erkenntnisse aus sysctl -a | grep igb.2 ?

Das ist ne super Info von dir. Werde das heute später mal ausprobieren.

Und ja, du hast Recht....man sollte rausbekommen warum sich das Interface aufhängt.
Aber es ist ne zeitfrage, da ich mom nicht dazukomme, wollte ich mit Hilfe des Plugins zumindest den Zugang gewährleisten.

Danke nochmals, ich werde dir Bescheid geben ob es geklappt hat.
Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 25, 2018, 02:52:18 PM
Quote from: faunsen on June 25, 2018, 10:35:18 AM
Du musst für den Ping Test die Aktion 'Restart' definieren.
Dann kannst Du im Service für 'Start' und 'Stop' die entsprechenden
Befehle verwenden.
Ich schätze aber, dass Du mit dem /etc/rc.d/netif nicht weit kommst,
da OPNsense eine eigene Logik hat die Netzwerkkarten zu aktivieren.

Aber Du kannst mal das hier probieren:
1. via OPNsense configctl mit dem Alias (z.B. OPT2)
Start: configctl interface linkup start <ALIASNAME>
Stop: configctl interface linkup stop <ALIASNAME>

2. via ifconfig und dem Interfacenamen (z.B. igb2)
Start: /sbin/ifconfig <INTERFACE> up
Stop: /sbin/ifconfig <INTERFACE> down

Vielleicht wäre es aber sinnvoller herauszufinden warum sich das Interface aufhängt.
Gibt es da keine Log Einträge? Link up/down o.ä.?
Irgendwelche Erkenntnisse aus sysctl -a | grep igb.2 ?

"Restart" habe ich eh schon eingestellt gehabt!

Ich habe alle Möglichkeiten versucht. mit start stop und sogar bei service test settings execute.
leider funktioniert das alles nicht.

bei start/stop wird immer ein absoluter pfad verlangt. somit fällt "configctl interface linkup start <ALIASNAME>" bei start/stop schon mal weg. per execute im service test settings endet mit "syntax error". tja komisch...dabei hat dieses tool einige Möglichkeiten laut online hilfe.
davon dürfte aber nur sehr wenig davon im tool von opnsense möglich sein. Allein die Einstellung wieviele ping Versuche man machen kann, bis ein Ereignis aussgeführt werden soll, fehlt oder kann ich zumindest nirgends finden. Und das für mich wohl sinnvollste Anwendungsgebiet "ping" -> z.b "3x versucht" -> "error" - "restart Interface igb2" funktioniert anscheinend gar nicht...leider!

Schade eigentlich!

Ansonsten funktioniert das Tool sehr gut.

Trotzdem danke!

P.S Übrigens wäre ein Widget sehr wertvoll für ein Monitor Tool.
Title: Re: Monitor plugin (falscher syntax)?
Post by: faunsen on June 25, 2018, 04:37:46 PM
Quote from: noname12123 on June 25, 2018, 02:52:18 PM
"Restart" habe ich eh schon eingestellt gehabt!

Ich habe alle Möglichkeiten versucht. mit start stop und sogar bei service test settings execute.
leider funktioniert das alles nicht.

bei start/stop wird immer ein absoluter pfad verlangt. somit fällt "configctl interface linkup start <ALIASNAME>" bei start/stop schon mal weg. per execute im service test settings endet mit "syntax error". tja komisch...dabei hat dieses tool einige Möglichkeiten laut online hilfe.

Der Pfad zu configctl lautet /usr/local/sbin/configctl
Ansonsten funktioniert das bei mir tadellos.
Service Test:
Name: PingRestart
Condition: failed ping
Action: Restart

Service:
Name: PingHost
Type: Remote Host
Address: 1.2.3.4
Start: /usr/local/sbin/configctl interface linkup start OPT1
Start: /usr/local/sbin/configctl interface linkup stop OPT1
Tests: Ping

Welche OPNsense und welche os-monit Version hast Du installiert?

Quote from: noname12123 on June 25, 2018, 02:52:18 PM
davon dürfte aber nur sehr wenig davon im tool von opnsense möglich sein. Allein die Einstellung wieviele ping Versuche man machen kann, bis ein Ereignis aussgeführt werden soll, fehlt oder kann ich zumindest nirgends finden. Und das für mich wohl sinnvollste Anwendungsgebiet "ping" -> z.b "3x versucht" -> "error" - "restart Interface igb2" funktioniert anscheinend gar nicht...leider!
Na, na, na. Doku nicht gelesen?  ;)
Monit FAULT_TOLERANCE (https://mmonit.com/monit/documentation/monit.html#FAULT-TOLERANCE)
Das os-monit plugin kann so ziemlich alles was Monit auch kann.
Wie wäre es mit
Condition: failed ping 3 cycles
im Service Test und die Aktion (in unserem Beispiel 'Restart') wird erst beim 3. Fehler ausgeführt.

Quote from: noname12123 on June 25, 2018, 02:52:18 PM
P.S Übrigens wäre ein Widget sehr wertvoll für ein Monitor Tool.

Ja, daran habe ich schon gedacht. Nur ist es vom Design her schwierig alle Services in einem kleinen Widget abzubilden.

Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 25, 2018, 10:10:13 PM
Quote from: faunsen on June 25, 2018, 04:37:46 PM
Quote from: noname12123 on June 25, 2018, 02:52:18 PM
"Restart" habe ich eh schon eingestellt gehabt!

Ich habe alle Möglichkeiten versucht. mit start stop und sogar bei service test settings execute.
leider funktioniert das alles nicht.

bei start/stop wird immer ein absoluter pfad verlangt. somit fällt "configctl interface linkup start <ALIASNAME>" bei start/stop schon mal weg. per execute im service test settings endet mit "syntax error". tja komisch...dabei hat dieses tool einige Möglichkeiten laut online hilfe.

Der Pfad zu configctl lautet /usr/local/sbin/configctl
Ansonsten funktioniert das bei mir tadellos.
Service Test:
Name: PingRestart
Condition: failed ping
Action: Restart

Service:
Name: PingHost
Type: Remote Host
Address: 1.2.3.4
Start: /usr/local/sbin/configctl interface linkup start OPT1
Start: /usr/local/sbin/configctl interface linkup stop OPT1
Tests: Ping

Welche OPNsense und welche os-monit Version hast Du installiert?

Quote from: noname12123 on June 25, 2018, 02:52:18 PM
davon dürfte aber nur sehr wenig davon im tool von opnsense möglich sein. Allein die Einstellung wieviele ping Versuche man machen kann, bis ein Ereignis aussgeführt werden soll, fehlt oder kann ich zumindest nirgends finden. Und das für mich wohl sinnvollste Anwendungsgebiet "ping" -> z.b "3x versucht" -> "error" - "restart Interface igb2" funktioniert anscheinend gar nicht...leider!
Na, na, na. Doku nicht gelesen?  ;)
Monit FAULT_TOLERANCE (https://mmonit.com/monit/documentation/monit.html#FAULT-TOLERANCE)
Das os-monit plugin kann so ziemlich alles was Monit auch kann.
Wie wäre es mit
Condition: failed ping 3 cycles
im Service Test und die Aktion (in unserem Beispiel 'Restart') wird erst beim 3. Fehler ausgeführt.

Quote from: noname12123 on June 25, 2018, 02:52:18 PM
P.S Übrigens wäre ein Widget sehr wertvoll für ein Monitor Tool.

Ja, daran habe ich schon gedacht. Nur ist es vom Design her schwierig alle Services in einem kleinen Widget abzubilden.

Super erklärt. Vielen Dank!
Jetzt weiß ich auch was das Problem war. Ich habe den Namen des Services mit einem Unterstrich gemacht.das System hat diesen Namen akzeptiert, aber es kam danach beim testen immer zu diesen Fehlermeldungen.
Man sollte hier bei der fehlerabfrage noch etwas nachbessern. Ansonsten geniales Tool :-)

Beim widget würde ich einfach checkboxen machen, die ermöglichen welches von den ,,enabled" Services man angezeigt bekommen will. Außerdem denke ist benötigt man ja nicht immer alle Informationen eines Services. Wenn man alle Infos haben will gibt ja das Monitor-log. Im Notfall noch nen Scrollbar.

Da ich selbst ja gerade kurz vor der Fertigstellung der collapsed sidebar bin, ist es ja vielleicht bald möglich 5 Rows nebeneinander am Dashboard anzeigen zu lassen. Dann hätte man am Dashboard mehr Platz für z.b noch das monitor widget und andere.
Title: Re: Monitor plugin (falscher syntax)?
Post by: faunsen on June 27, 2018, 05:32:56 PM
OK, Monit Dashboard Widget ist drin. https://github.com/opnsense/core/commit/b0099843fdbe03296e5b9b26e011e1969f967bb3
Kommt aber erst in Version 18.7.
Title: Re: Monitor plugin (falscher syntax)?
Post by: opnsenseuser on June 28, 2018, 05:57:56 PM
Quote from: faunsen on June 27, 2018, 05:32:56 PM
OK, Monit Dashboard Widget ist drin. https://github.com/opnsense/core/commit/b0099843fdbe03296e5b9b26e011e1969f967bb3
Kommt aber erst in Version 18.7.

Da hab ich jetzt schon zwei Gründe mich auf 18.7 zu freuen.
Danke, super Arbeit.

:-)