Vous êtes sur la page 1sur 11

19.12.

2010

Sauvegarde des routeurs et switchs

le petit monde de l'informatique


Mon pense-bte informatique Accueil CISCO Gnral LINUX Rancid Rseaux Scripts Systme WINDOWS Windows 2008 Server Windows 7 Windows XP

Type text to search here...

Accueil > LINUX, Rancid, Rseaux > Sauvegarde des routeurs et switchs avec RANCID sur Ubuntu

Sauvegarde des routeurs et switchs avec RANCID sur Ubuntu


24/11/2009 Le Seb Commenter Allez aux commentaires Rancid (Really Awesome New Cisco config Differ) est un outil libre permettant la sauvegarde des configurations des quipements rseaux et pourra comparer les diffrences entre sauvegardes avec CVS (Concurrent Version System) et ventuellement vous informer des modifications par mail. Pour sauvegarder les configurations, Rancid se connecte sur lquipement rseau et copie les configurations sur le serveur. . Ainsi, il nest pas ncessaire dactiver le SNMP sur lquipement rseau, la procdure est ralise grce un expect (vulgairement, excution de commandes. Les connaissances sur cette fonction ne sont pas ncessairent, sauf si vous dsirez dvelopper vos propres scripts pour la sauvegardes de priphriques non pris en charge). Rancid permet notamment de sauvegarder des quipements de marque Cisco, HP, Juniper, Foundry,Netscreen et bien dautres.

Table des matires Prrequis Installation des paquets requis Cration de lenvironnement Installation de RANCID Compilation des sources Table 1-1 : Localisation des fichiers de Rancid Configuration de Rancid
http://coradi.hd.free.fr/tech/?p=3 1/11

19.12.2010

Sauvegarde des routeurs et switchs

Configuration gnrale Cration de larchitecture CVS Table 1-2 : Diffrents types de priphriques Rancid CvsWeb Rancid et les mails Mthodes dauthentifications Simple connexion telnet puis passer en mode enable Authentification par SSH Configuration avec utilisateur Configuration Autoenable

Prrequis
Installation des paquets requis
Les paquets suivant sont ncessaire au fonctionnement de rancid : apt-get install apache2 apt-get install expect apt-get install cvs apt-get install cvsweb

Cration de lenvironnement
La premire chose faire est de crer un nouvel utilisateur appel rancid afin dviter, pour des raisons de scurit de lancer des applications avec lutilisateur root. Dans cet optique, les scripts de rancid sont cris de tel manire quil ne fonctionne pas avec le compte root. adduser rancid home /home/rancid Ceci va crer lutilisateur rancid et en mme temps un dossier rancid. Lutilisateur rancid est propritaire de ce dossier.

Installation de RANCID
Compilation des sources
Un paquet existe dans les dpots officiels Ubuntu, mais il ne fonctionne pas convenablement. Il est donc prfrable de compiler depuis les sources. De plus, cela permet de contrler la destination des fichiers de configuration et des scripts. Une fois que le logiciel rancid est tlcharg depuis le site web de Shrubbery, dcompresser le depuis le dossier o il a t tlcharg. tar xvfz rancid-<version>.tar.gz Nous avons besoin dinstaller les outils requis la compilation dun logiciel, si ce nest pas dj fait.
http://coradi.hd.free.fr/tech/?p=3 2/11

19.12.2010

Sauvegarde des routeurs et switchs

apt-get install build-essential Maintenant, nous pouvons compiler et installer Rancid. Pour ce faire, nous avons besoin daccder au nouveau dossier dcompress: cd /home/rancid/rancid-2.3.1 ./configure prefix=/home/rancid make make install Ceci va installer Rancid dans le dossier /home/rancid, et crer larborescence :

Table 1-1 : Localisation des fichiers de Rancid


Location /home/rancid /home/rancid/var/logs /home/rancid/bin /home/rancid/var/networking/configs /home/rancid/.cloginrc Description Rpertoire de base de Rancid Rpertoire des fichiers journaux de backup. Vous pouvez tracer les erreurs de sauvegarde ici. Rpertoire des excutables (scripts) Rpertoire des sauvegardes des fichiers de configuration Fichier des mots de passe

/home/rancid/var/networking/router.db Liste de tous les priphriques rseaux sauvegarder.

Configuration de Rancid
Configuration gnrale
Maintenant, nous pouvons dbuter le paramtrage de Rancid. Nous allons configurer le fichier /home/rancid/etc/rancid.conf pour crer des groupes dquipements. Au moins un groupe doit tre configur. Lajout des lignes ci-dessous cre un groupe appel routeurs o toutes les configurations des quipements sont stockes: LIST_OF_GROUPS= routeurs Il est possible de crer plusieurs groupes en les sparant par des spaces. LIST_OF_GROUPS= routeurs switchs Il est ncessaire de configurer un fichier appel .cloginrc contenant les mots de passe ncessaires pour accder aux composants rseaux. Pour le crer, ou copier lexemple prsent dans /home/rancid/share/rancid/ cp /home/rancid/share/rancid/cloginrc.sample /home/rancid/.cloginrc

http://coradi.hd.free.fr/tech/?p=3

3/11

19.12.2010

Sauvegarde des routeurs et switchs

Ensuite, nous ditons le nouveau fichier .cloginrc o on peut trouver des exemples de syntaxe bases sur le type dquipement (Cisco, Juniper, etc) et de connexion (telnet, ssh, ) Dans notre exemple, nous allons utiliser telnet pour accder un switch Cisco ayant une adresse IP de 192.168.200.1 Ouvrez /home/rancid/.cloginrc add password 192.168.200.1 {user_password} {enable_password} Ajouter un # au dbut de chaque ligne lexception bien entendu des lignes qui paramtrent vos connexions. Soyez EXTRMEMENT attentif avec les permissions du fichier .cloginrc parce que les mots de passe inclus dans ce fichier ne sont pas encrypts. Le seul moyen de protger ces mots de passe critiques est de restreindre les droits daccs au fichier. Pour le faire, changez les droits daccs 600, ce qui veut dire que le propritaire du fichier a les permissions lecture et criture tandis que les autres utilisateurs nont aucune permission du tout. Puis, la proprit du dossier /home/rancid ainsi que tous les fichiers et dossiers quil inclut est transfr lutilisateur rancid. chmod 600 /home/rancid/.cloginrc chown -R rancid:rancid /home/rancid

Cration de larchitecture CVS


Connectez-vous en temps que rancid, puis lancer la commande rancid-cvs: su rancid rancid@linux#/home/rancid/bin/rancid-cvs La commande rancid-cvs cr larborescence CVS dans /home/rancid/var/CVS/CVSROOT. Il faut lancer cette commande avant la commande rancid-run, sans quoi larborescence ne sera pas cre. Elle crer galement un rpertoire par groupe dclar dans le fichier rancid.conf, qui seront situ dans /home/rancid/var. les fichiers router.db prsents dans chacun de ces rpertoires serviront dclarer les priphriques de chaque groupe. Ajouter des quipements aux groupes: /home/rancid/var/<group_name>/router.db La syntaxe est la suivante:
<device_name>:<device_type>:<state>[:comments]

exemple: 10.156.1.1:cisco:up 10.156.1.28:cisco:up Voici la liste des priphriques pris en charge :

Table 1-2 : Diffrents types de priphriques Rancid


Device alteon baynet Description An Alteon WebOS switches. A Bay Networks router.
4/11

http://coradi.hd.free.fr/tech/?p=3

19.12.2010

Sauvegarde des routeurs et switchs

cat5 cisco css

A Cisco catalyst series 5000 and 4000 switches (i.e.: running the catalyst OS, not IOS). A Cisco router, PIX, or switch such as the 3500XL or 6000 running IOS (or IOS-like) OS. A Cisco content services switch.

enterasys An enterasys NAS. This is currently an alias for the riverstone device type. erx A Juniper E-series edge router. Extreme An Extreme switch. ezt3 force10 foundry hitachi hp mrtd An ADC-Kentrox EZ-T3 mux. A Force10 router. A Foundry router, switch, or router-switch. This includes HP Procurve switches that are OEMs of Foundry products, such as the HP9304M. A Hitachi routers. A HP Procurve switch such as the 2524 or 4108 procurve switches. Also see the foundry type. A host running the (merit) MRTd daemon.

netscalar A Netscalar load balancer. netscreen A Netscreen firewall. redback A Redback router, NAS, etc. tnt zebra juniper A lucent TNT. Zebra routing software. A Juniper router.

riverstone A Riverstone NAS or Cabletron (starting with version ~9.0.3) router.

Une fois les priphriques dclars dans le fichier router.db, et les mthodes daccs configures dans le fichier .cloginrc, un script permet de vrifier les paramtrages de connexion. rancid@linux:~/bin$ /home/rancid/bin/clogin 192.168.200.1 192.168.200.1 spawn telnet 192.168.200.1 Trying 192.168.200.1 Connected to 192.168.200.1. Escape character is ^]. User Access Verification Password: Router>enable Password: Router# Dmarrez rancid: rancid@linux#/home/rancid/bin/rancid-run Vous pouvez vrifier les journaux (logs) dans le rpertoire /home/rancid/var/rancid/logs/. La commande rancid-run va sauvegarder tous les priphriques de tous les groupes. Pour ne sauvegarder quun groupe, la syntace est :
http://coradi.hd.free.fr/tech/?p=3 5/11

19.12.2010

Sauvegarde des routeurs et switchs

rancid@linux#/home/rancid/bin/rancid-run <nom_du_groupe> Cela est utile pour les tests, par exemple. Nous devons maintenant installer la plate-forme pour voir les configurations avec un navigateur web.

CvsWeb
Nous devons ajouter une ligne dans le fichier /etc/cvsweb.conf avec lutilisateur root pour crer le nouveau dpt (repository) CVS. Rechercher la ligne commenant par @CVSrepositories et ajouter les lignes en vert ci-dessous: @CVSrepositories = ( local => ['Local Repository', '/var/lib/cvs'], rancid => ['rancid', '/home/rancid/var/CVS'], #freeebsd => ['FreeBSD', '/var/ncvs'], #openbsd => ['OpenBSD', '/var/ncvs'], #netbsd => ['NetBSD', '/var/ncvs'], #ruby => ['Ruby', '/var/anoncvs/ruby'], ); Si le dossier contenant les icnes csvweb et les fichiers css sont pas dans le dossier /var/www, il est ncessaire dajouter un lien symbolique: ln -s /usr/share/cvsweb /var/www/cvsweb Nous pouvons tester linterface cvsweb avec un navigateur internet: http://127.0.0.1/cgi-bin/cvsweb

Rancid et les mails


Optionnellement, vous pouvez configurer Rancid pour vous envoyer un mail quand une configuration a t change aprs le lancement du script rancid-run. La premire chose faire est dinstaller Postfix avec: apt-get install postfix Ensuite, il faut configurer Postfix afin quil puisse envoyer des mails vers la passerelle SMTP. Cette machine va envoyer les courriels soit directement sur internet ou lintrieur de la socit vers des serveurs de messagerie. Dans notre cas, email.domain.fr Pour a, nous avons besoin de paramtrer le fichier de configuration de Postfix qui est /etc/postfix/main.cf . Ajouter les paramtres suivants: relayhost = FQDN du serveur SMTP relayhost = email.domain.fr Redmarrer postfix:
http://coradi.hd.free.fr/tech/?p=3 6/11

19.12.2010

Sauvegarde des routeurs et switchs

/etc/init.d/postfix restart Maintenant, nous pouvons tester si nous pouvons envoyer un mail avec succs depuis la machine SMTP locale: #telnet localhost 25 Trying 127.0.0.1 Connected to localhost. Escape character is ^]. 220 localhost ESMTP Postfix (Ubuntu) ehlo mail 250-localhost 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-STARTTLS 250 8BITMIME mail from: <test@votre_domaine.fr> 250 Ok rcpt to: <votre_utilisateur@votre_domaine.fr> 250 Ok data 354 End data with .

Subject: Cest un test ! . 250 Ok: queued as BD8261C01D4 quit Connection closed by foreign host. Vous devriez recevoir un mail. On peut galement tester cela laide de la commande mailx ci ce dernier est install : mailx s test RANCID <votre_utilisateur@votre_domaine.fr> Si vous avez un problme, regarder le fichier /var/log/mail.log. Pour voir les dernires lignes en temps rel: tail -f /var/log/mail.log Loutil Rancid est paramtr pour envoyer des courriels deux destinataires par groupe. rancid- nom_du_groupe rancid-admin- nom_du_groupe Le premier destinataire ci-dessus va recevoir un rapport aprs un changement de configuration, le deuxime est envoy quand il y a des messages derreur. Pour rappel, le ou les groupes sont configurs dans le fichier /home/rancid/etc/rancid.conf. Par exemple, pour le groupe appel routeurs_Siege, les mails seront envoys aux adresses rancidhttp://coradi.hd.free.fr/tech/?p=3 7/11

19.12.2010

Sauvegarde des routeurs et switchs

routeurs_siege et rancid-admin- routeurs_siege. Afin que les mails soient dirigs vers les bons destinataires, il faut crer des alias (2 alias par groupes). Ouvrez le fichier /etc/aliases, ou /etc/postfix/aliases, selon le rpertoire dclar dans /etc/postfix/main.cf: rancid- routeurs_siege administrateur@domain.fr rancid-admin- routeurs_siege administrateur@domain.fr Pour terminer, initialiser la base de donnes dalias: newaliases ATTENTION : Les scripts RANCID, dans les dernires versions, intgre le suffixe $MAILDOMAIN, ce qui rend inutile la cration des alias. Cette variable est initialise dans le fichier de configuration $HOME/etc/rancid.conf. Il ne faut donc pas la dclarer pour que la redirection via les alias fonctionne. Pour tester, on peut utiliser la commande mailx, si celle-ci t installe: mailx s test Alias RANCID rancid-<groupe> Le mail doit tre redirig vers ladresse <votre_utilisateur@votre_domaine.fr>. Il est possible de vrifier cela en consultant le fichier /var/log/mail.log. Nous avons besoin de crer un cron job pour lancer rancid-run rgulirement. crontab -e -u rancid # lancer le script rancid-run tous les jours 12:45 45 12 * * * /home/rancid/bin/rancid-run La commande crontab va mettre jour le fichier /var/spool/cron/crontabs/rancid. La commande find peut tre ajoute au crontab pour supprimer les anciens logs. La commande suivante supprime les fichiers de plus de 30 jours dans le dossier /home/rancid/var/logs/: # supprime les anciens logs tous les premiers jours de chaque mois 00:15 15 00 1 * * find /home/rancid/var/logs -type f -mtime +30 -exec rm {} \;

Mthodes dauthentifications
Diffrents exemples de mthodes dauthentifications sont prsents dans le fichier /home/rancid/share/.cloginrc.conf. En voici quelques exemples.

Simple connexion telnet puis passer en mode enable


Add password <nom-du_priphrique ou @IP> {vty-password} {enable-password}

Il est possible dutiliser des jokers pour les mthodes rcurrentes.


http://coradi.hd.free.fr/tech/?p=3 8/11

19.12.2010

Sauvegarde des routeurs et switchs

add password 172.16.*

{telnet-password}

{enable-password}

Authentification par SSH


add password 172.30.0.2 Add methode 172.30.0.2 {ssh-password} {enable-password} {ssh}

Configuration avec utilisateur


Imaginons que certains routeurs demandent un login et un mot de passe pour la connexion vty, la syntaxe serait la suivante : add user <nom-du_priphrique ou @IP> username add password {vty-password}

Configuration Autoenable
Sur certains routeurs, et notamment ceux disposant dune connexion avec login/mot de passe, on arrive directement en mode enable. Dans ce cas, il faut rajouter la configuration du priphrique le paramtre : add autoenable <nom-du_priphrique ou @IP> 1 Ce sont les principales options utiles. Cependant, il en existe dautres, permettant par exemple dutiliser des cls prives pour les connexions SSH. Vous pouvez trouver la page de de manuel de .cloginrc ladresse: http://pwet.fr/man/linux/formats/cloginrc Categories: LINUX, Rancid, Rseaux Tags: cisco, LINUX, Rseaux Commentaires (0) Trackbacks (0) Commenter Trackback 1. Pas encore de commentaire 1. Pas encore de trackbacks Nom (requis) E-Mail (ne sera pas publi) (requis) Site internet

S'abonner aux commentaires


Envoyer un commentaire

Installation de contrleurs RAID 3ware sur Ubuntu RSS


http://coradi.hd.free.fr/tech/?p=3 9/11

19.12.2010

Sauvegarde des routeurs et switchs

Recent Posts
Aide-mmoire : Configurer SSH sur des IOS Cisco de routeurs Remplacer la freebox par un routeur CISCO Problme Network-Manager OpenVPN trier par taille avec du -h Dsactiver la compression automatique des fichiers non utiliss Rinitialiser le mot de passe sur les switch CISCO Catalyst 2960 et 2970 Hard Reboot dun GNU/Linux distance Outils du panneau de configuration Windows via invite de commande Installation dun contrleur de domaine SAMBA, OpenLDAP sur Ubuntu 9.10 Entrer des ordinateurs Windows 7 dans un domaine Linux (SAMBA,LDAP)

Categories
CISCO Gnral LINUX Rseaux Scripts Systme WINDOWS

Liens
Bloginfo Croc-informatique L'admin sous Linux Mad Routeur MLMD.fr Nemako Planet libre Tux planet

Archives
dcembre 2010 novembre 2010 octobre 2010 septembre 2010 aot 2010 juillet 2010 juin 2010 fvrier 2010 janvier 2010 novembre 2009

Meta
http://coradi.hd.free.fr/tech/?p=3 10/11

19.12.2010

Sauvegarde des routeurs et switchs

Connexion Remonter ;) Copyright 2009-2010 le petit monde de l'informatique Valid XHTML 1.1 and CSS 3.

http://coradi.hd.free.fr/tech/?p=3

11/11