_____
 / ____|
| |  __
| | |_ |
| |__| |
 \_____|
  ___
 / _ \
| (_) |
 \___/
 _ __
| '__|
| |
|_|
 _
| |
| |
| |
| |
|_|
  __ _ 
 / _` |
| (_| |
 \__,_|
 _ __  
| '_ \ 
| | | |
|_| |_|
 _ 
(_)
 _ 
| |
| |
|_|
      ___    ___    _ __ ___  
     / __|  / _ \  | '_ ` _ \ 
 _  | (__  | (_) | | | | | | |
(_)  \___|  \___/  |_| |_| |_|
Reverse, Repurpose, Resolve

Backup di un Catalyst via SNMP!

2018-09-02

Se avete un Catalyst da qualche parte dovrete pur fare il backup. Se poi diverse persone mettono mano allo stesso apparato è importante avere le configurazioni sempre salvate da qualche parte.
Ovviamente automatizzare il tutto aiuta a non trovarsi nel momento sbagliato con la configurazione troppo vecchia da ricaricare. Quindi ecco uno script veloce da infilare nel cron: =============================8<======================
#!/bin/sh
# Version 0.09
# Made by Marcello Gorlani, use and distribute freely at your own risk

if [ "$1" = "" ]; then
 echo "Missing parameter: router IP"
 exit
fi

COMMUNITY=MyRWCommunity
DSTTFTP=MyTFTPServerIP
TSTAMP=$(date +%Y%m%d-%H%M%S)
BASEOID=.1.3.6.1.4.1.9.2.1.55
TMOUT=60

FNAME=$1-$TSTAMP.txt
SOID=$BASEOID.$DSTTFTP

COMND="snmpset -t$TMOUT -c$COMMUNITY $1 $SOID s $FNAME"
echo $COMND
$COMND
=============================8<====================== Per far funzionare questo script dovete:
- Modificarlo cambiando COMMUNITY con la vostra community in scrittura
- Assegnare a DSTTFTP l'ip del vostro server TFTP

Per lanciarlo è sufficiente indicare come primo parametro l'IP dello switch di cui fare il backup: ./catbackup.sh 172.30.1.6
Il rusultato è che nella root del vostro TFTP troverete un file con l'IP dello switch suffissato dalla data del file, così da averne le varie versioni.

Essendo tutti file di testo è comodo anche infilare GIT nell'equazione. Togliendo il TSTAMP dal FNAME avremo che il file salvato avrà ogni giorno lo stesso nome. Se creiamo nella root del TFTP un repository git, e ci occupiamo alla fine di ogni backup di fare una commit ed un push su un server remoto, otteniamo un duplice risultato.
- Avere un backup anche su un dispositivo differente da quello del TFTP (che a questo punto può essere anche temporaneo)
- Poter vedere giorno per giorno le modifiche effettuate su quella configurazione, consentendo di tracciare errori/problemi e tornare ad uno specifico punto nel tempo ove servisse. Strumenti come Gitlab consentono di fare tutto in maniera estremamente comoda e visuale

Questo articolo assume che:
- la tua macchina abbia installate le utility snmp (un suggerimento)
- installandole tu abbia configurato la versione da usare come default (v1 o v2c) ed eventualmente le autenticazioni necessarie per la v3
- un TFTP server (un suggerimento)