28. 06. 2016 Patrick Zambelli NetEye

IT Orchestration in NetEye: Sbloccare user account tramite l’Action Launchpad

It Orchestration module, altrimenti noto come Action Launchpad, ha come scopo principale la semplificazione delle operazioni legate al IT service operations. Queste operazioni possono essere configurate tramite dei command calls che vengono abilitati agli utenti del tuo Service Operation Center. Il modulo Action Launchpad permette di definire quali comandi preconfigurati possono essere richiesti e quali azoni possono essere programmati dal server remoto.

I vantaggi sono:

  • Definire le operazioni da svolgere ed effettuarle con un semplice click.
  • Evitare che utenti devono accedere al sistema remoto per eseguire commandi
  • Abilitare determinati user con permessi per svolgere certi comandi
  • Tenere traccia dei risultati
  • Automatizzare l’esecuzione tramite un pianificatore build-in

Come funziona?

 

IT Orchestration Schema

IT Orchestration Schema

Esempio di una operazione frequente: abilitazione user account

Le operazioni ripetitive costano un sacco di tempo ai gestori IT e, allo stesso tempo, non possono essere facilmente automatizzate ne esternalizzate. Un esempio che calza a pennello è la tipica richiesta dello user “non riesco a connettermi”, la quale solitamente implica lo sblocco dell’account oppure il reset della password.

Con questo post vorrei mostrare come si possono automatizzare queste operazioni grazie a NetEye.

  1. Definire il System Command da far automatizzare

Il seguente CMD mostra il System Command call syntax da lanciare per resettare la password di un user. La seguente struttura deve essere salvata come call predefinita sul Windows host e richiamarla dal NetEye Action Launchpad

cmd_userEnable

CMD call to enable user account

Resettare la password user: questo CDM deficisce il nome utente per il quale viene impostata la nuova password “test123”. L’output del CDM mostrato qui sotto viene inviato direttamente a NetEye e mostrato piú avanti nella finestra di dialogo output.

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

CMD call to reset the password to “test123” for user student

Bisogna definire un semplice file script al fine di creare una struttura semplice da richiamare facilmente in qualsiasi momento. Lo script puó avere un estensione .bat oppure, nelle piattaformi piú moderne, si possono usare le istruzione PowerShell “set-ADAccountPassword”. In questo esempio utilizzeró le istruzioni “net user” in quanto funzionano con qualsiasi release di Microsoft.

Lo script generato viene memorizzato come domain_operation.bat nella cartella degli “script”contenuta all’interno della cartella “NetEyeNSClient++installation”(i.e C:\Program Files\NetEyeNSClient++\scripts\)

  1.   Configurazione NSClient++

A questo punto possiamo definire lo script appena creato (esempio da scaricare: domain_operations.zip ) come un nuovo comando in nsclient.ini, all’interno della sezione “settings/external scripts/scripts”. Successivamente bisogna definire parametri per poter convertire lo username e le possibili password in parametri. In questo momento bisogna anche fare attenzione alla sicurezza e limitare l’accesso al servizio NSClient++ solo agli indirizzi IP del server NetEye (vedi: “allowed_hosts”)

Questo paragrafo viene quindi aggiunto o adattato in nsclient.ini:

[/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$

Ora riavvia il servizio e prova a testare il command call lanciando tale command dal SSH:

NRPE call

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

Consiglio: Il NSClient++ viene lanciato con permessi a livello “service”. Questo potrebbe non essere sufficiente per accedere a risorse di dominio. Potrebbe essere quindi richiesto il lancio del servizio da un utente diverso e specificare il tab “log on”.

  1. Definizione del Action Launchpad command

Se sei riuscito a lanciare il commando desiderato via check_nrpe command, allora sei pronto per definirlo nel Action Launchpad. Devi accedere con i diritti da Admin nella console di configurazione, tab; “Commands”. La definizione del command è denominata “domain_operatios”(vedi sopra), selezionalo e quindi seleziona il tipo di comando “Remote Custom NRPE Command”.

Define new AL Command

Define new AL Command

Precedentemente abbiamo definito il command con parametro “hard coded”, ovvero non è possibile modificare i valori del lancio tramite un normale user account. Questa caratteristica è data in Action Launchpad ed è anche possibile definire i valori disponibili sotto forma di un menu a tendina.

Quindi cambia il valore dello username in”$ARG1$”:

arguments1

Crea un’etichetta e un valore per Argument 1 come suggerito nell’esempio:

arguments2

Adesso definisci un gruppo specifico per il command chiamato “AD Account Operations” e assegna il comando creato a questo gruppo.

Per ultimo abilita l’accesso all’account dell’utente per il gruppo appena creato e presta attenzione ad autorizzare l’accesso solo a determinati utenti.

  1. Avvia della Command Execution

Fail il login con un account autorizzato al Action Launchpad:

  1. Identifica il comando da lanciare
  2. Inserisci lo user account da sbloccare (negli esempi precedenti è Student01)
  3. Scegli l’host con cui lanciare il comando (la GUI memorizzerá l’ultima selezione)
  4. Porta a termine lésecuzione del command:

cmd_exec1

Il risultato del command verrá mostrato al suo completamento:

cmd_exec2

Esempio di reset della password:

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