clogin / ciscocmd
Spesso nello scrivere degli script mi sono imbattuto nella difficolta’ di dovermi collegare via telnet o ssh su un device di rete oppure una macchina che non supportava lo scambio di chiavi ssh.
Cercando in rete ho trovato uno script fatto da CISCO che usa il linguaggio expect.
Ci sono due script che uso spesso, il primo
si chiama : CLOGIN e lo uso spesso per collegarmi ad apparati di rete (router/firewall / switch/ … )
Il secondo si chiamaa CISCOCMD e lo uso più spesso per collegarmi a vecchi server con solo più telnet o a solaris poco recenti.
Come funzionano ? Sia il CISCOCMD come il CLOGIN sono molto utili già sfogliando l’help
L’help infatti da’ già un grande aiuto:
$./clogin --help
Usage: ./clogin [-dSV] [-autoenable] [-noenable] [-c command]
[-Evar=x] [-e enable-password] [-f cloginrc-file] [-p user-password] [-s script-file]
[-t timeout] [-u username] [-v vty-password] [-w enable-username] [-x command-file]
[-y ssh_cypher_type] router [router...]
Di seguito invece un Esempio:
$./clogin -u "pippo" -p"pluto" -t 5 -c "whoami && hostname" myrouter.lan
spawn ssh -c 3des -x -l pippo myrouter.lan
pippo@myserver.lan ~ $ whoami && hostname
pippo
myrouter.lan
exit
Connection to myrouter.lan closed.
Come vedete il comando ./clogin prevede una serie di parametri tra cui
-u : utente
-p : la password (meglio se non mettete spazi e mettete la passwd tra virgolette) -p"così"
-t : il timeout in secondi
-c : il comando oppure i comandi da dare sul server
ricorosamente separati da && (AND LOGICO) oppure da ";" se basta un OR
l'argomento finale sara' il nome del vostro server o device di rete
enjoy
Categories: linux