14. 06. 2016 Patrick Zambelli NetEye

IT Orchestration in NetEye: Freischalten gesperrter Benutzerkonten über das Action Launchpad

Das IT Orchestration Modul (auch bekannt als Action Launchpad) wurde entwickelt um die IT Service Operations zu unterstützen. Bestimmte Abläufe können in Command Calls konfiguriert, und bei Bedarf ganz einfach von den Mitarbeitern im Service Operations Center über einen Remote Server aufgerufen werden.

Die Vorteile:

  • Einmalige Definition eines Ablaufs, der bei Bedarf durch einen einfachen Klick aufgerufen werden kann.
  • Vermeiden des Zugriffs auf Remote Systeme zum Aufruf der Commands
  • Individuelle Zugriffsrechte für bestimmte Benutzer und Commands
  • Nachverfolgung der Ergebnisse
  • Automatisierte Ausführung durch eingebauten Scheduler

Wie funktioniert es?

IT Orchestration Schema

IT Orchestration Schema

Beispiel für einen häufig wiederkehrenden Arbeitsablauf: Freigabe eines gesperrten Benutzerkontos

Wiederkehrende Aufgaben kosten den IT-Operatons Mitarbeitern viel Zeit, doch leider können diese nicht vollständig automatisiert oder ausgelagert werden. Eine Praxisbeispiel hierfür ist die typische Benuzeranfrage „Ich kann mich nicht einloggen“. Die Aufgabe ist in diesem Fall die Entsperrung des Kontos oder das Zurücksetzen des Kennworts.

Mit diesem Artikel möchte ich Ihnen eine Anleitung zur Verfügung stellen, wie diese Aufgabe in eine automatisierte Operation umgewandelt werden kann, welche mit einem einfachen Klick in NetEye aufgerufen und durchgeführt werden kann.

1)    Definieren Sie den auszuführenden Systembefehl

Das nächste CMD zeigt das System Command Call Syntax für das Zurücksetzen des Benutzerpasswortes. Diese Struktur sollte als vordefinierter Call auf diesem Windows-Host gespeichert werden und vom NetEye Action Launchpad aufgerufen werden:

cmd_userEnable

CMD Call zur Freigabe des Benutzerkontos

Benutzerpasswort zurücksetzen: Dieser Befehl definiert den Namen des Benutzerkontos, für welches das neue Passwort einzustellen ist (test123). Beachten Sie, dass die Ausgabe, die wir hier sehen, direkt an NetEye zurückgegeben und später im Ausgabe-Dialog angezeigt wird.

CMD call to reset the password to "test123" for user student

CMD Call zum Zurücksetzen des Passworts auf “test123” für den Benutzer “student01”

Um eine einfache Struktur zu schaffen, welche zu einem päteren Zeitpunkt einfach aufgerufen werden kann, definiere ich eine einfache Skriptdatei. Dies kann mit einer BAT-Datei durchgeführt werden, oder auf modernen Plattformen kann auch der Powershell-Befehl  „Set-ADAccountPassword“ verwenden. In diesem konkreten Beispiel würde ich den „net user“ Befehl verwenden, da diese Version auf jedem Microsoft-Release funktioniert. Das Skript wird als domain_operations.bat in den „Scripts“ Ordner des NetEyeNSClient gespeichert ++ installation folder (i.e. C:\Program Files\NetEyeNSClient++\scripts\ ).

2)   NSClient ++ vorbereiten

Wir definieren das erstellte Skript (Beispiel herunterladen: domain_operations.zip) als neuen Befehl in den nsclient.ini im Abschnitt “settings/external scripts/scripts”. Außerdem ist es wichtig die Argumente zu aktivieren, wenn wir den Benutzernamen und ein mögliches neues Passwort als Parameter übergeben wollen. Im gleichen Moment sollte auch die Sicherheit in Betracht gezogen werden: Beschränken Sie den Zugriff auf den NSClient ++ ausschließlich für die IP-Adresse des NetEye Servers. ( “allowed_hosts” instruction )

Abschnitt der in nsclient.ini hinzugefügt/angepasst werden muss:

[/settings/external scripts]
; COMMAND ARGUMENT PROCESSING – This option determines whether or not the we will allow clients to specify arguments to commands that are executed.
allow arguments = 1
; COMMAND ALLOW NASTY META CHARS – This option determines whether or not the we will allow clients to specify nasty (as in |`&><‘”\[]{}) characters in arguments.
allow nasty characters = 1

[/settings/external scripts/scripts]
; Some more commands
domain_operations=scripts\domain_operations.bat $ARG1$ $ARG2$ $ARG3$

Jetzt den Dienst neu starten und den Befehl Call testen, indem Sie das CMD über SSH ausführen:

NRPE call

NRPE call: -c holds the command name to call -a the required arguments

Rat: The NSClient++ runs at “service” level. Dies könnte nicht genug sein, um auf die Domain-Ressourcen zuzugreifen, deshalb könnte der Dienst als anderer Benutzer die Angabe der “Anmelden” Registerkarte auszufuhren, erforderlich sein.

3)   Action Launchpad Befehldefinition

Wenn Sie den gewünschten Befehl über check_nrpe ausführen können, sind Sie bereit, den Befehl im Action Launchpad zu definieren. Dafür greifen Sie mit Admin-Rechten auf die Konfigurationskonsole auf den Tab „Commands“ zu. Die Kommandodefinition hat den Befehlsnamen „domain_operations“ und wir wählen den Typ „Remote Custom NRPE Command“.

Define new AL Command

Neues CMD im Action Launchpad definieren

In der vorherigen Befehldefinitionen haben wir das Argument „hard coded“, das bedeutet, dass es nicht möglich ist, die Werte während der Laufzeit mit einem normalen Benutzerkonto zu ändern. Im Aktion Launchpad gibt es dieses Feature und es ist sogar möglich, die verfügbaren Werte in Form eines Dropdown-Feld zu definieren.

Ändern Sie den Wert des Benutzernamens in “$ARG1$”:

arguments1

und spezifizieren Sie eine Bezeichnung für Argument 1 und eine Wertbeispiel:

arguments2

Jetzt definieren wir eine spezifische Befehlsgruppe „AD Account Operations“ und ordnen diesen Befehl der Gruppe zu

Aktivieren Sie die Benutzerkonten für diese Gruppe, um den Zugriff nur autorisierten Benutzern zu gewähren

4)   Ausführen des Befehls

Loggen Sie sich mit einem autorisierten Benutzerkonto im Action Launchpad ein:

  1. Identifizieren Sie den Befehl
  2. Geben Sie den gewünschten Benutzeraccount, welcher entsperrt werden soll ein (Wir sehen den vorgeschlagenen ‚student01‘)
  3. Wählen Sie den Host, auf welchem der Befehl ausgeführt werden soll (Die Benutzeroberflache wird sich die letzte Auswahl merken)
  4. Führen Sie den Befehl aus:

cmd_exec1

Der Output des Befehls angezeigt:

cmd_exec2

Beispiel Passwort Reset:

user_pwd_reset

Download: domain_operations.zip

Patrick Zambelli

Patrick Zambelli

Project Manager at Würth Phoenix
After my graduation in Applied Computer Science at the Free University of Bolzano I decided to start my professional career outside the province. With a bit of good timing and good luck I went into the booming IT-Dept. of Geox in the shoe district of Montebelluna, where I realized how a big IT infrastructure has to grow and adapt to quickly changing requirements. During this experience I had also the nice possibility to travel the world, while setting up the various production and retail areas of this company. Arrived at Würth Phoenix I started developing on our monitoring solution NetEye. Today, in my position as Consulting an Project Manager I am continuously heading to implement our solutions to meet the expectation of your enterprise customers.

Author

Patrick Zambelli

After my graduation in Applied Computer Science at the Free University of Bolzano I decided to start my professional career outside the province. With a bit of good timing and good luck I went into the booming IT-Dept. of Geox in the shoe district of Montebelluna, where I realized how a big IT infrastructure has to grow and adapt to quickly changing requirements. During this experience I had also the nice possibility to travel the world, while setting up the various production and retail areas of this company. Arrived at Würth Phoenix I started developing on our monitoring solution NetEye. Today, in my position as Consulting an Project Manager I am continuously heading to implement our solutions to meet the expectation of your enterprise customers.

Leave a Reply

Your email address will not be published. Required fields are marked *

Archive