02/01/2012
Script per il backup automatico della configurazione di un router Cisco SOHO 77
Premessa
Un sistemista di rete previdente sa che è di vitale importanza poter contare su di un backup valido delle configurazioni relative ai vari network device. Proprio per questo motivo ho deciso di creare uno script che permettesse di automatizzare tale procedura.
Configurare un server TFTP
Occorre precisare che il backup della configurazione del nostro router Cisco SOHO 77 verrà archiviato su di un server TFTP basato su una distribuzione *buntu.
Ma veniamo al dunque. Per prima cosa installiamo il server TFTP digitando:
nightfly@nightbox:~$ sudo apt-get install tftp tftpd xinetd
A questo punto posizioniamoci sulla directory /etc/xined.d e creiamo il file tftp il cui contenuto dovrà essere:
service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = /tftpboot
disable = no
}
Come si può notare dalla direttiva server_args = /tftpboot il nostro server salverà la configurazione del router nella directory /tftpboot. Inoltre, poichè tale dir non è presente sulla nostra macchina è necessario crearla digitando:
nightfly@nightbox:/$ mkdir tftpboot
posizioniamoci all'interno di /tftpboot e creiamo il file vuoto router.cfg che conterrà la configurazione del SOHO 77:
nightfly@nightbox:/tftpboot$ sudo touch router.cfg
A questo punto lavoriamo sui permessi della directory appena creata e del suo contenuto:
nightfly@nightbox:/$ sudo chmod 777 -R tftpboot
nightfly@nightbox:/$ sudo chown nobody tftpboot
Riavviamo xinetd digitando:
nightfly@nightbox:/$ sudo /etc/init.d/xinetd stop
nightfly@nightbox:/$ sudo /etc/init.d/xinetd start
Infine, verifichiamo che il nostro server TFTP sia in ascolto digitando:
nightfly@nightbox:/$ sudo nmap -sU localhost
se l'output sarà simile al seguente:
69/udp open|filtered tftp
vuol dire che il server risulta effettivamente in ascolto.
Script per il backup automatico della configurazione relativa al SOHO 77
Prima di mostrarvi lo script, è necessario installare un tool indispensabile al suo funzionamento. Tale tool prende il nome di expect:
nightfly@nightbox:/$ sudo apt-get install expect
Creiamo ora il file backup_conf_soho77 il cui contenuto dovrà essere il seguente:
#!/usr/bin/expect
set password1 "<pass1>"
set password2 "<pass2>" #necessaria nel caso in cui la password per l'enable sia diversa da quella per l'accesso via telnet
spawn telnet <IP del router>
expect "Password:"
send "$password1r"
expect ">"
send "enar"
expect "Password:"
send "$password2r"
expect "#"
send "copy system:running-config tftp://<IP del server TFTP>/router.cfgr"
expect "?"
send "r"
expect "?"
send "r"
expect "#"
send "exitr"
expect eof
NB: prima della r all'interno delle virgolette ci vuole il backslash, in modo da inviare al router un ritorno a capo (nello script non appare in quanto viene automaticamente skippato da myblog per ragioni di sicurezza).
Rendiamo lo script eseguibile mediante il comando:
nightfly@nightbox:~$ sudo chmod +x backup_conf_soho77
e successivamente spostiamolo nella directory /usr/bin:
nightfly@nightbox:~$ sudo mv backup_conf_soho77 /usr/bin
Adesso non ci resta che "schedulare" l'esecuzione dello script. Per fare questo è sufficiente inserire una entry in /etc/crontab:
00 00 * * * root backup_conf_router
In particolare, ogni mezzanotte verrà eseguito il backup della configurazione mediante lo script descritto in precedenza.
Riavviamo cron per rendere effettive le nuove impostazioni:
nightfly@nightbox:~$ sudo /etc/init.d/cron restart
ed abbiamo finito.
A presto.
11:07 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: bash, cisco, soho77, router, linux, conf, tftp, expect, telnet | OKNOtizie |
Facebook
28/03/2011
Script per il backup automatico della configurazione di un firewall Cisco PIX 501
In questo post ho riportato uno script da me creato il cui scopo è quello di eseguire un backup della configurazione di un router Cisco SOHO 77. Inoltre, sempre nell'ambito del post in questione, ho descritto la procedura per installare e configurare correttamente un server TFTP sulla nostra linux box.
Dando per scontato che il server TFTP sia già attivo e che il file vuoto firewall.cfg sia già presente nella directory /tftpboot, vediamo come configurare il nostro firewall affinchè possa comunicare con il server in ascolto.
Una volta effettuato il login sul PIX 501 lanciamo un conf t e successivamente digitiamo il comando:
PIX501(config)# tftp-server inside <IP del server TFTP> /tftpboot/firewall.cfg
In questo modo stiamo dicendo al PIX qual è l'indirizzo del server ed il pathname del file su cui salvare la configurazione.
Lanciamo un write mem per salvare le modifiche relative alla configurazione del firewall e successivamente accediamo alla nostra linux box. Fattò ciò creiamo il file backup_conf_pix501 il cui contenuto dovrà essere il seguente:
#!/usr/bin/expect
set password1 "<pass1>"
set password2 "<pass2>
spawn telnet <IP del firewall>
expect "Password:"
send "$password1r"
expect "Password:"
send "$password2r"
expect ">"
send "enar"
expect "Password:"
send "$passwordr"
expect "#"
send "write netr"
expect "#"
send "exitr"
expect eof
NB: ricordatevi di mettere un backslash prima di "r".
Rendiamo il file eseguibile digitando:
nightfly@nightbox:~$ sudo chmod +x backup_conf_pix501
spostiamolo in /usr/bin e successivamente editiamo il file /etc/crontab aggiungendo la entry:
00 00 * * * root backup_conf_pix501
Riavviamo cron:
nightfly@nightbox:~$ sudo /etc/init.d/cron restart
ed il gioco è fatto.
See ya.
11:35 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: cisco, pix 501, firewall, expect, tftp, linux, conf | OKNOtizie |
Facebook
03/12/2010
Cisco Aironet Recovery Mode
Premesso che avere a che fare con gli AP Aironet di casa Cisco non è uno scherzo, questa guida ha come scopo quello di consentire un'installazione della IOS nel caso in cui l'immagine di default presente nella flash sia corrotta oppure sia stata cancellata per sbaglio.
Una volta conclusa la fase di bootstrap del nostro AP, poichè non ha a disposizione una IOS "commestibile", esso entrerà automaticamente in recovery mode, il cui prompt è il seguente:
ap:
Per prima cosa dobbiamo definire indirizzo IP e subnet mask da assegnalre all'access point, poichè l'IOS dovra essere caricata su di esso mediante server TFTP. Possiamo settare l'IP e la mask attraverso i comandi:
ap: set IP_ADDR <indirizzo IP>
ap: set NETMASK <mask>
Adesso abilitiamo l'access point alla ricezione dei dati mediante TFTP:
ap: tftp_init
Lanciamo una sessione TFTP per scaricare la IOS (in formato *.tar) direttamente sulla flash dell'AIRONET:
ap: tar -xtract tftp://192.168.1.2/images/c350-k9w7-tar.122-13.JA1 flash:
In realtà, tale comando consente anche l'estrazione della IOS man mano che viene scaricata dal server TFTP.
Diciamo all'AP quale immagine deve utilizzare durante la sequenza di boot:
ap: set BOOT flash:/c350-k9w7-mx.122-13.JA1/c350-k9w7-mx.122-13.JA1
Controlliamo che tutti i parametri fin'ora definiti siano stati carpiti correttamente dall'access point:
ap: set
il cui output dovrebbe essere simile al seguente:
BOOT=flash:/c350-k9w7-mx.122-13.JA1/c350-k9w7-mx.122-13.JA1
IP_ADDR=192.168.1.2
NETMASK=255.255.255.0
Infine, lanciamo il comando:
ap: boot
Dopo aver avviato l'IOS appena installata, diciamo all'AP quale immagine deve utilizzare digitando:
ap(config)# boot system flash:<immagine ios>
Facciamo un copy run start per salvare le nuove impostazioni ed abbiamo finito.
A presto.
09:46 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: recovery mode, cisco aironet, ap cisco, tftp, flash boot failure | OKNOtizie |
Facebook















