Rancid
From HackerNet
Really Awesome New Cisco confIg Differ är ett verktyg för versionshantering av konfigurationsfiler på nätverksutrustning. Programvaran är skapad av Shrubbery Networks.
Rancid kan användas för följande:
- Backup och lagring av konfigurationsfiler
- Jämförelse av konfiguration
- Versionsarkivering av konfiguration
Rancid kan hjälpa till i arbetet med följande frågor:
- Hur vet du när en förändring sker?
- Vad gör du när en förändring sker?
- Kan du korrelera nätverkshändelser med ändringar?
- Upprätthåller du en "basline" eller sätter en konfigurationsstandard?
Contents
Installation
sudo apt-get -y install rancid subversion postfix
Rancid-användare skapas under installationen.
Konfiguration
Filer
- /etc/rancid/ # Config file
- /var/lib/rancid/ # Most other files
- /var/lib/rancid/[gruppnamn]/router.db # Devices list
Byt från cvs till subversion samt skapa grupper för dina enheter
sudo sed -i.bak 's/RCSSYS=cvs; export RCSSYS/RCSSYS=svn; export RCSSYS/g' /etc/rancid/rancid.conf sudo sed -i 's#CVSROOT=$BASEDIR/CVS; export CVSROOT#CVSROOT=$BASEDIR/svn; export CVSROOT#g' /etc/rancid/rancid.conf echo 'LIST_OF_GROUPS="routers switches fws"' | sudo tee -a /etc/rancid/rancid.conf
Don't strip passwords
sudo sed -i 's/FILTER_PWDS=YES/FILTER_PWDS=NO/g' /etc/rancid/rancid.conf
Fixa rättigheter
sudo chown -R rancid:rancid /var/lib/rancid sudo su -s /bin/bash rancid
User rancid
cd && nano .cloginrc #add autoenable * 1 add cyphertype * {aes256-cbc} add method * ssh add user * cisco add password * {cisco} {cisco} chmod 600 .cloginrc
Testa inlogg
/var/lib/rancid/bin/clogin 172.20.0.100
SVN
Lagra i SVN repo. Går även att köra med cvs. Kör som user rancid.
/var/lib/rancid/bin/rancid-cvs
Add devices
nano /var/lib/rancid/switches/router.db 192.168.0.100:cisco:up sw01.local:cisco:up 10.0.0.10:hp:up
Kör igång
/usr/lib/rancid/bin/rancid-run
Schemaläggning
su - rancid crontab -e 0 * * * * /usr/lib/rancid/bin/rancid-run 0 1 * * * find /opt/rancid/var/logs -type f -mtime +30 -exec rm {} \; # Slang gamla loggar
CVSWeb
Endast om man valde cvs.
sudo apt-get -y install cvsweb
WebSVN
sudo apt-get -y install websvn
path: /var/lib/rancid/svn
repo: /var/lib/rancid/svn
sudo ln -s /etc/websvn/apache.conf /etc/apache2/conf-available/websvn.conf sudo a2enconf websvn.conf sudo service apache2 reload sudo chgrp -R www-data /var/lib/rancid/svn sudo chmod g+w -R /var/lib/rancid/svn
Auth
HTTP authentication för /websvn
sudo apt-get -y install apache2-utils sudo htpasswd -c /opt/websvnpassword admin
sudo nano /etc/websvn/apache.conf AuthType Basic AuthName "Restricted Access" AuthBasicProvider file AuthUserFile /opt/websvnpassword Require user admin
sudo service apache2 reload
Others
"ln: failed to create symbolic link ‘/etc/apache2/conf.d/websvn’: No such file or directory"
workaround:
sudo mkdir /etc/apache2/conf.d
Mailnotifiering
Postfix
sudo nano /etc/aliases rancid-routers: sysadm rancid-admin-routers: sysadm sudo newaliases