Soluzioni tecniche

Scriptare comandi telnet

01 Dicembre 2016

Telnet è un protocollo storico, essendo stato creato nel 1969 e standardizzato nel 1973.

E’ utilizzato in reti intranet ed internet per comunicazioni testuali client-server, anche se l’utilizzo su Internet è deprecato a causa di problematiche di sicurezza, visto che telnet non è crittografato e non supporta di norma l’autenticazione.

Però questo protocollo può spesso tornare utile in LAN, per inviare comandi remoti ad apparati che lo supportino, ad esempio firewall, router e switch.

Se il nostro apparato è in grado di eseguire un server telnet lato LAN, è allora possibile inviare comandi specifici da command line (telnet gira di default sulla porta 23).

In Windows è presente un client telnet (va installato da Programmi e funzionalità) che abilita il relativo comando shell.

 

 

Eseguendo il comando telnet è possibile quindi connettersi al telnet server del nostro dispositivo, semplicemente digitandone l’indirizzo IP privato come parametro del comando.
telnet 192.168.1.254
(se non specifichiamo la porta, vuol dire che stiamo utilizzando il default).

Di norma a questo punto il dispositivo presenta un prompt di autenticazione:
User:
dove dovremo inserire il nome utente.

Quindi ci verrà chiesta la password.
Password:

Una volta inserita la password corretta, saremo portati al prompt attivo, dove potremo inserire il comando da eseguire.
Ad esempio, su apparati con sistema operativo *nix (ossia derivato da Unix, come Linux), potremo scrivere
reboot
per riavviare il dispositivo immediatamente.

Come abbiamo visto nell’esempio qui sopra, nell’implementazione di Windows, il comando telnet si aspetta che le istruzioni siano inserite riga per riga.

Non è quindi possibile scriptare le istruzioni telnet?

Come possiamo fare ad automatizzare l’esecuzione dei comandi usando questo protocollo?
Ci viene in aiuto ad esempio l’utility TelnetD

Il download (che dovremo sempre scansionare con l’antivirus) contiene i seguenti file:
 

Il file da editare è CVStart.txt.

La sintassi è la seguente:

TELNETID=Connection1
IP= < Telnet_server_IP >
PORT=23
RETRY=1
TIMEOUT=10
SLEEP=0
1->Account:=admin
2->Password:=< account_password >
3->>= < comando >
4->>=exit
 
 
Il < comando > al punto 3 va scritto nella sintassi recepita dal device che esegue il telnet server: è necessario fare riferimento alla guida per verificarla.
 
Eseguendo poi il restart.bat, i comandi saranno inviati al telnet server ed eseguiti.

Ovviamente questa procedura può essere facilmente adattata per essere eseguita dalle operazioni pianificate di Windows o da un sistema RMM.
 

 
Autore
Furio Borsi
Si appassiona al mondo digitale fin da bambino, con il glorioso Commodore 64, sul quale si diverte a scrivere semplici programmi in Basic e modificare giochi. Nel 1990 riceve in regalo il suo primo PC (i386), seguito un paio d'anni dopo da un i486dx. In questi anni affina le sue attitudini al problem solving, scassando hardware e software e divertendosi a rimetterlo a posto. ;) Diventa così "quello che se ne capisce" per i suoi familiari e amici, arrivando a collaborare con alcuni studi professionali per la gestione del parco macchine e dei server Windows. Finito il liceo, studia DAMS con indirizzo multimediale a Bologna e Imperia. Nel 2002, dopo un anno sabbatico a Londra, lavora come sviluppatore junior in un'azienda che produce software per database territoriali in ambito Pubblica Amministrazione. In questo periodo si avvicina con passione a problematiche sistemistiche e di network management su reti estese. Nel 2007 entra a far parte dello staff di Achab, per cui si occupa di formazione e supporto, in particolare riguardo a Kaseya, e gestione del parco macchine e della rete.
Commenti (0)

Lascia un commento

Il tuo indirizzo e-mail non verrà pubblicato, lo utilizzeremo solamente per inviarti la notifica della pubblicazione del tuo commento. Ti informiamo che tutti i commenti sono soggetti a moderazione da parte del nostro staff.