Intitulé du document : Comment sauvegarder la configuration des switch cisco automatiquement via tftp et expect ?
Localisation : http://www.opendoc.net/solutions/backup_switch_cisco_configuration_tftp
Auteur : Alexandre Bray
Contact : support@opendoc.net
Date de création : 2013/09/17
Date de modification : 2013/09/17
Vous souhaitez contribuer : Comment soutenir opendoc ?
Informations : Quelle est notre démarche ?
source :
Tags :
Etat de la documentation : 100% completed
Licence : Contrat Creative Commons
opendoc.net est mis à disposition selon les termes de la licence Creative Commons Paternité - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transcrit.

Comment sauvegarder la configuration des switch cisco automatiquement via tftp et expect ?

1 Installation / configuration du tftp

1.1 Installation de tftpd

J'ai choisi d'utiliser tftpd

apt-get install tftpd

1.2 Configuration de tftpd

Editez le fichier inetd

vim /etc/inetd.conf

Ajoutez la configuration

tftp            dgram   udp     wait    nobody  /usr/sbin/tcpd  /usr/sbin/in.tftpd /datas/tftp

Ajustez les droits

chown nobody:nogroup /datas/tftp
chmod 777 /datas/tftp

Sauvegarde automatique via expect

Le script est directement téléchargeable ici : http://mirror.opendoc.net/admin/BackupSw-0.1

1.3 BackupSw

#!/usr/bin/expect
#########################################
#             BackupSw                  #
# Backup Switch Configuration           #
# version 0.1                           #
# Autor : Alexandre Bray                #
# Mail : abray@opendoc.net              # 
#########################################

set Date [timestamp -format %Y%m%d]
set Dir "/datas/tftp"
set Log "/var/log/BackupSw.log"
set TftpSrv X.X.X.X
set UserCon admin
set Pass XXXXXXXXXXXX
set Timeout 10
set SwitchUsrLst {sw1 sw2 sw3}

exec mkdir $Dir/backup/$Date
exec date "+%Y-%m-%d - %H:%M:%S - Start Backup" >> $Log

foreach switch $SwitchUsrLst {
  exec touch $Dir/$switch
  exec chmod 777 $Dir/$switch
  exec chown nobody:nogroup $Dir/$switch

  spawn telnet $switch 
  expect "Username:"
  send "$UserCon\n"
  expect "Password:"
  send "$Pass\n"
  expect ">"
  send "en\n"
  expect "Password: "
  send "$Pass\n"
  send "copy running-config tftp://$TftpSrv/$switch\n\n"
  expect "Address or name of remote "
  send "\n"
  expect "Destination filename "
  send "\n"
  send "exit\n"
  sleep $Timeout
  exec mv $Dir/$switch $Dir/backup/$Date/
  close
}

2 Explication de BackupSw

Le script permet de créer un répertoire par jour et y stocker les configurations.

  • set Dir : Emplacement de sauvegarde des switchs
  • set Log : Emplacement du log
  • set TftpSrv : Adresse Ip sur serveur tftpd
  • set UserCon : Nom de l'utilisateur
  • set Pass : Mot de passe
  • set SwitchUsrLst : Liste des switchs à sauvegarder
solutions/backup_switch_cisco_configuration_tftp.txt · Dernière modification: 2013/09/17 11:49 par abray
 
Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki