Ceci est une ancienne révision du document !
RANCID : Really Awesome New Cisco confIg Differ
Le code source est fourni par Terrapin Communications, Inc. dont la licence est diffusée ici : Licence.
Les copyrights associés à Rancid exigent que cette licence soit diffusée avec les sources quelque soit le mode de redistribution de celles-ci, et le nom de la compagnie ne doit pas être utilisé en tant qu'argument de vente.
Installation
Pré-requis
Avant d'installer Rancid, il faut d'abord installer les paquets cvs cvsweb expect.
Parmis ces paquets figurent :
- cvs : base CVS pour gérer le suivi de versions
- cvsweb : interface web permettant d'accéder aux données CVS
resolvconf : utilisé par exim4- exim4 : agent de transfert de mail, utilisé par Rancid pour diffuser les rapports de sauvegarde
Avant de poursuivre, il est important de tester la bonne configuration des services précédemment installés. Pour vérifier le fonctionnement de cvsweb, accéder à la page web en local http://127.0.0.1/cgi-bin/cvsweb/. Le message d'erreur ci-dessous devrait apparaittre :
Error: No valid CVS roots found! See @CVSrepositories in the configuration file (/etc/cvsweb/cvsweb.conf).
Comme le message l'indique, le serveur CVS n'est pas configuré. Cette étape sera traitée dans la section Configuration.
Depuis les dépôts Ubuntu
Depuis les sources
Cette section décrit l'installation de Rancid depuis les sources disponibles sur le site de Shrubbery Networks, Inc. : Rancid
cd /usr/src/ wget ftp://ftp.shrubbery.net/pub/rancid/rancid-2.3.6.tar.gz tar xvzf rancid-2.3.6.tar.gz ./configure -prefix=/ sudo make install
Configuration
Emplacement des fichiers
Une fois installé, les dossiers et fichiers se retrouve comme suit :
- Scripts d'exécution :
/bin/[rancid-run,rancid-cvs,erancid,...]
- Fichier de configuration principal :
/etc/rancid.conf
- Fichiers de configuration des groupes et des équipements :
/var/CVS
Configuration de cvsweb
Une première étape est la configuration du serveur cvsweb. En effet, il faut lui spécifier le répertoire racine qu'il doit utiliser. Pour cela, il faut éditer le fichier /etc/cvsweb/cvsweb.conf et ajouter un répertoire racine comme indiqué dans l'exemple ci-dessous :
@CVSrepositories = ( 'Rancid' => ['Rancid', '/var/rancid'], );
Création d'un groupe d'équipements
Rancid gère les équipements par groupe. Ainsi, pour chaque groupe sont associés des équipements, et des utilisateurs pour la réception des rapports de sauvegarde.
Ici nous allons créer un premier groupe GRP_SW_1. Pour cela, modifier le fichier de configuration /etc/rancid.conf et spécifier la valeur de LIST_OF_GROUP :
LIST_OF_GROUPS="GRP_SW_1"
La commande suivante doit ensuite être utilisée pour créer ce groupe dans la base CVS.
rancid-cvs
Utilisation
Lancez l'application depuis le menu Applications → Accessoires → Machin Chose ou via la commande suivante :
machin-chose
Désinstallation
La suppression de Rancid dépend de la méthode d'installation. Cependant, dans les deux cas décrits ci-dessous les fichiers de configurations seront conservés.
Depuis les sources
Procéder comme indiqué ci-dessous :
cd /usr/src/rancid-2.3.6 make uninstall
Puis supprimer les paquets indiqués dans la section Installation s'ils ne sont plus requis ultérieurement. Le paquet expect est assez spécifique à l'utilisation de Rancid, il sera donc généralement à supprimer.
sudo apt-get remove expect
Par ailleurs, si l'historique des configurations ainsi que l'accès via l'interface web doivent être conservés, les paquets cvs cvsweb ne doivent être supprimés. Dans le cas contraire :
sudo apt-get remove cvs cvsweb
Troubleshooting
cvsweb : 404 Not Found
En cas d'affichage de l'erreur 404 Not Found lors du chargement de la page web http://127.0.0.1/cgi-bin/cvsweb, cela signifie généralement que c'est le serveur Apache2 est mal configuré. Dans ce cas, il faut vérifier :
- la présence du dossier cvsweb à l'emplacement /usr/lib/cgi-bin/
- les droits d'accès en 755 sur le répertoire /usr/lib/cgi-bin/cvsweb
- la bonne configuration du répertoire /usr/lib/cgi-bin/cvsweb dans le fichier /etc/apache2/sites-enabled/000-default
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory>
Lorsque ces 3 points ont été vérifiés, redémarrer le service Apache puis effectuer un nouveau test d'accès web.
sudo service apache2 restart