Einzelnen PoE Port per Script Neustarten, aber Wie?

  • Hi zusammen,

    an meinem USW 8 Lite POE hängt eine PoE Device, das ich gerne per Script von einem Raspperry Pi neustarten möchte. Der Pi, auf dem auch der Controller läuft, soll also periodisch einen PoE Cycle initiieren. Wie kann ich das am einfachsten machen? Es muss doch irgendeine Konsole geben, auf die man sich Connecten kann oder?

    Besten Dank,

    Daniel

  • Mal ganz auf die schnelle:

    Ssh einschalten auf dem controller und sich mit public key vertraut machen

    damit die Anmeldung passwortlos laufen kann.

    Auf dem Switch gibt es mit „swctrl" einen Befehl der einen das leben leicht macht.

    „swctrl“ gibt ne kleinen Hilfe

    "swctrl poe“ Hilfe für die POE einstellungen

    "swctrl poe show“ zeigt die einen status für alle Ports an

    "swctrl poe set off id 4“ schaltet port 4 aus

    "swctrl poe set auto id 4“ schaltet ihn wieder auf auto

    damit würde dann ein

    ssh x.x.x.x -f 'swctrl poe set off id 4'

    bzw. zum wieder einschalten:

    ssh x.x.x.x -f 'swctrl poe set auto id 4'

    von deinem Rasbery reichen....das lässt sich dann auch in einen cron reinwuppen

    oder sonstwohin..

    Edited once, last by gierig (August 17, 2021 at 12:16 PM).

  • Oh sehr cool. Danke :). Genau was ich gesucht habe. Es gibt sogar einen command für restart dann ist es sogar nur ein einziger Aufruf.

    Du kannst gern schreiben, wie Du Dein Problem gelöst hat. Muss vielleicht jemand anderes auch mal lösen.

    Content embedded from external sources will not be displayed without your consent.
  • Ja klar. Gierig hat find ich alles nötige schon gepostet.

    • RSA-Key auf dem Pi generieren (Public Key + Privat Key). Wenn man es einfach will ohne Passwort, ansonsten mit Daemon
    • In Unify Controll Panel einloggen, Ssh einschalten. Gleichzeitig den neuen Public Key vom Pi aus Schritt 1 hier reinkopieren
    • Ab jetzt kann man sich ohne Passwort vom Pi aus in alle Unify Geräte rein sshen. Einfach die IP des Devices angeben und den User, den man im zweiten Step angegeben hat
    • Über einen Systemd-Timer kann man nun den POE restart triggern z.B. über swctrl poe restart id 4

    Ich hab nur den Wink gebraucht, dass ssh überhaupt geht und welche Funktionen es gibt.

  • Hallo, ich hätte zu dem Thema noch eine Frage:

    Zuerst die Aufgabenstellung: Alle POE Geräte sollen in der Nacht abgedreht werden (Stromsparen), das auf jedem Standort.

    Unifi Cloud Key Plus ist unser Controller

    Dort ist SSH deaktivert, in den Einstellungen ist aber ein User und ein PW hinterlegt mit dem ich derzeit auf jedes eingebundene Gerät komme

    Befehle müssen bei mir von einem Windows PC/Server über die Aufgabenplanung kommen:

    Meine derzeitige Lösung gefällt mir nicht bzw ist sehr Umständlich

    Patchdatei zum Abdrehen pro Switch

    Switchname-off.cmd

    putty.exe -ssh admin@x.x.x.x -pw (Password) -m c:\test\Switchname-off.txt

    In der Switchname-off.txt steht zb

    swctrl poe set off id 9

    swctrl poe set off id 42

    Patchdatei zum Aufdrehen

    Switchname-on.cmd

    putty.exe -ssh admin@x.x.x.x -pw (PAssword) -m c:\test\Switchname-on.txt

    In der Switchname-on.txt steht zb

    swctrl poe set auto id 9

    swctrl poe set auto id 42

    Das müsste ich jetzt bei über 30 Switche machen, Pro Standort 1-3 Switche. Ich steh gerade auf der Leitung und komm nicht weiter wie es einfacher gehen würde.

    Danke


    Eben noch was gelesen wenn man keine ID Ports angibt werden alle Ports am Switch deaktiviert und aktiviert. Damit wärs für mich auch okay, aber muss trotzdem pro Switch eine Start Stop Patch erzeugen?

    Oder würde es gehen das ich eine Stop und Start Datei erstelle, die pro Zeile einen Switch enthält und die jeweilige start stop.txt Datei ausführt?

    Edited once, last by maestro1 (December 6, 2022 at 12:52 PM).

  • Kannst auch eine Datei für alle Switches machen...

    Code
    start /B PuTTY.exe -ssh admin@SWITCH1 -pw
    swctrl poe set off id 9
    swctrl poe set off id 42
    start /B PuTTY.exe -ssh admin@SWITCH2 -pw
    swctrl poe set off id 9
    swctrl poe set off id 42
    start /B PuTTY.exe -ssh admin@SWITCH3 -pw
    swctrl poe set off id 9
    swctrl poe set off id 42

    Geht dann natürlich auch zum wieder einschalten.

    Also bei mir öffnet er dann 3 Putty Sessions

    Gruß

    defcon

    Mein HomeLab

    | 1&1 Fiber 500 |

    | Luleey DFP-34X-2C2 - SFP ONT |

    | UXG-Pro |

    | 1x USW-Aggregation | 1x USW-Pro-24 | 1x USW-Pro-24-PoE | 1x USW Flex |

    | 1x U6 Pro | 1x U6+ | 1x U6 Lite |

    | 1x UNVR mit 3x 6TB WD Purple | 4x G5 Bullet | 2x G5 Flex | 1x G3 Instant |

    | Eigenbau-Server (Xeon E3-1230v3, 32GB DDR3 ECC - mit einigen VMs & LXCs (u.a. UniFi Controller) |

    | RaspberryPi3 mit HyperHDR und SK6812 RGB-CW an WLED für's TV Erlebnis |


    :double_exclamation_mark: Zum Projekt Thread :double_exclamation_mark:

  • Hallo, ich hab zu dem Thema auch noch eine Frage:

    Leider scheint der USW-Ultra kein SSH zu bieten - zumindest kann ich über die UI des Controllers das POE eines Ports ein- und ausschalten. Aber per Script? Gibt es da noch einen anderen Weg? SSH im Controller ist natürlich aktiviert, auf meinen USW-24 POE geht es auch ...

  • Der USW-Ultra hat kein ssh, das ist korrekt. Somit kannst Du da auch nichts mit einem Script ein oder ausschalten. Der ssh Zugriff auf den Controller wird dir nicht helfen. Denn dann müsstest Du auf dem Controller die Konfiguration für den USW-Ultra ändern und die steckt in einer Datenbank (die Du mittels der GUI manipulierst). Wenn man Strom sparen will, könnte man überlegen mit einer smarten Steckdose oder einer simplen Zeitschaltuhr den Switch auszuschalten.

  • Doch, zumindest ein recycle kriege ich mit der Controller-Api hin:

    // curl --tlsv1 --silent --cookie /tmp/unifi_cookie --cookie-jar /tmp/unifi_cookie --insecure --data '{"username":"*****","password":"****"}' https://****:8444/api/login// curl --tlsv1 --silent --cookie /tmp/unifi_cookie --cookie-jar /tmp/unifi_cookie --insecure --data '{"mac":"****","port_idx":1,"cmd":"power-cycle"}' https://****:8444/api/s/default/cmd/devmgr

    Leider habe ich noch nicht rausgefunfen, wie ich einen Port aus- bzw. einschalte. Den ganzen Switch will ich natürlich nicht ausschalten, da hängen ja viele Sachen dran. Aber mein POE DIsplay mit ca. 25W könnte man im Urlaub schon wegschalten

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!