Integration de RANCID dans Observium

Rancid permet de récupérer les confs des différents équipements réseau de votre infra

Installation de RANCID

apt install rancid subversion

Configuration de RANCID

nano /etc/rancid/rancid.conf

LIST_OF_GROUPS="observium"
CVSROOT=$BASEDIR/SVN; export CVSROOT
RCSSYS=svn; export RCSSYS

Création de la structure:

su - rancid
/var/lib/rancid/bin/rancid-cvs

Configuration de la connexion

nano /var/lib/rancid/.cloginrc 

add autoenable * 1
add method * telnet
add user * admin
add password * password1

Test de la connexion au routeur

su - rancid
/var/lib/rancid/bin/clogin 10.10.1.254

10.10.1.254
spawn telnet -K 10.10.1.254
Trying 10.10.1.254...
Connected to 10.10.1.254.
Escape character is '^]'.
Interdit aux mechants hackeurs !
User Access Verification

Username: admin
Password: 

R1#
R1#

La connexion devrait être automatique

Intégration dans Observium

nano /opt/observium/config.php

$config['rancid_configs'][]              = "/var/lib/rancid/observium/configs/";
$config['rancid_ignorecomments']        = 0;
$config['rancid_version'] = '3';

Reload d'Apache

systemctl restart apache2

Génération du fichier router.db

php /opt/observium/scripts/generate-rancid.php 
# RANCID router.db autogenerated by /opt/observium/scripts/generate-rancid.php
# Used RANCID version detected on system: 3.9
# Do not edit this file directly!

10.10.1.254;cisco;up

Dump du ficher router.db dans la config de RANCID

php /opt/observium/scripts/generate-rancid.php > /var/lib/rancid/observium/router.db

Lancer la récupération des fichiers de conf:

/var/lib/rancid/bin/rancid-run

Vous deviez voir votre configuration directement dans Observium !

rancid.png

Pour automatiser la récupération des configs, rajouter les lignes suivantes dans crontable

crontable -e

0 5 * * * /var/lib/rancid/bin/rancid-run
#hourly router dump
50 23 * * * /usr/bin/find /var/lib/rancid/logs -type f -mtime   +2 -exec rm {} \;