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
09/12/2011
Strani log sul router Cisco 837
Ieri, mentre facevo i soliti controlli di routine, ho dato un'occhiata al log dei comandi lanciati sulla shell del mio Cisco 837 ed ho avuto una sincope appena ho letto le seguenti info:
*Dec 8 00:00:21.523: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:access-list 199 permit icmp host 10.10.10.10 host 20.20.20.20
*Dec 8 00:00:21.835: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:crypto map NiStTeSt1 10 ipsec-manual
*Dec 8 00:00:22.119: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:match address 199
*Dec 8 00:00:22.315: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:set peer 20.20.20.20
*Dec 8 00:00:22.367: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:exit
*Dec 8 00:00:22.471: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:no access-list 199
*Dec 8 00:00:22.571: %PARSER-5-CFGLOG_LOGGEDCMD: User:console logged command:no crypto map NiStTeSt1
WTF!??? Una VPN? Sono riusciti ad ottenere l'accesso (abusivo) al mio router?
Bhè, per fortuna non era niente di grave, in quanto questi comandi vengono lanciati automaticamente ad ogni riavvio del router per verificare il corretto funzionamento del suo crypto engine.
Falso allarme... e vissero tutti felici e contenti.
A presto.
10:00 Scritto da: nazarenolatella in Sicurezza | Link permanente | Commenti (0) | Segnala | Tag: vpn, hack, router, cisco 837, crypto map, crypto engine, acl | OKNOtizie |
Facebook
11/03/2011
Errore su Cisco SOHO 77: MALLOCFAIL
Recentemente, esaminando i log del mio SOHO 77 ho notato la presenza dei seguenti messaggi d'errore:
Mar 10 13:27:24 *** 714: 000185: Mar 10 13:27:25.256 UTC: %SYS-2-MALLOCFAIL: Memory allocation of 65536 bytes failed from 0x801381A8, alignment 0
Mar 10 13:27:24 *** 715: Pool: Processor Free: 233440 Cause: Memory fragmentation
Mar 10 13:27:24 *** 716: Alternate Pool: None Free: 0 Cause: No Alternate pool
Mar 10 13:27:24 *** 717:
Mar 10 13:27:24 *** 718: -Process= "IP Input", ipl= 0, pid= 34
Mar 10 13:27:24 *** 719: -Traceback= 8013C184 8013E2A8 801381AC 8058F648 80584810 80585568 80248C24 80248F40 80248FF4 80249148 80162010 80165628
Trattandosi di MALLOCFAIL e di Memory Fragmentetion sono quasi sicuro che la poca RAM installata onboard si sia esaurita. Inoltre, poichè sul server ho attivo un demone p2p 24/7, sono altrattanto certo che la causa sia imputabile alla mole di traffico ed alle troppe NAT translations.
Accedo dunque al router, digito un conf t ed imposto dei nuovi timeout per il NAT:
SOHO77(config)# ip nat translation timeout 420
SOHO77(config)# ip nat translation tcp-timeout 120
SOHO77(config)# ip nat translation syn-timeout 120
SOHO77(config)# ip nat translation udp-timeout 120
SOHO77(config)# ip nat translation dns-timeout 120
SOHO77(config)# ip nat translation icmp-timeout 120
Lancio infine un copy run start per rendere permanenti le modifiche appena messe in atto:
SOHO77(config)# copy run start
Ora non resta che controllare che la memoria non stia sempre a tappo (mediante il comando sh memory) e che le translations attive non siano troppe (mediante uno sh ip translations statistics).
A presto.
14:38 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: soho 77, router, debug, log, malloc, memory, memory fragmentation | OKNOtizie |
Facebook
















