Установка и настройка rancid

Хочу рассказать про утилиту для бэкапа конфигов цисок — rancid. Она сохраняет конфиги в CVS, что очень важно, т.к. позволяет быстро узнать разницу в конфигах. Буду рассказывать про установку в Debian 7 Wheezy:

1.Устанавливаем rancid:

apt-get install rancid

2. Добавляем алиасы для почты, туда ранцид будет слать письма с диффами конфигов, а также предупреждения о недоступности циски:

cat >> /etc/aliases << END
rancid-all: root
rancid-admin-all: root
END

3. Сохраняем файл и добавляем алиасы в систему:

newaliases

4. Создадим группу «cisco». Соответвственно все файлы относящиеся к этой группе будут храниться в директории: /var/lib/rancid/cisco. Также отключаем фильтрацию паролей и snmp-комьюнити при бэкапе конфигов:

cat >> /etc/rancid/rancid.conf << END
LIST_OF_GROUPS="cisco"
FILTER_PWDS=NO; export FILTER_PWDS
NOCOMMSTR=NO; export NOCOMMSTR
END

5. Дальнейшие действия нужно выполнять от пользователя rancid:

su rancid

6. Создаем файл .cloginrc и вбиваем туда данные по цискам(этот файл содержит только данные для подключения к циске, но не указывает ранциду что из этого бэкапить):

cat >> /var/lib/rancid/.cloginrc << END ########################Routers###################################
#Cisco 2901-1 IP-address rancid pass enable pass
add password 10.3.1.5 {ssh-pass} {enable-pass}
add method 10.3.1.5 ssh #Cisco 2901-2
add password 10.3.1.1 {ssh-pass} {enable-pass}
add method 10.3.1.1 ssh
END

7. Назначаем нужные права на этот файл:

chmod 600 /var/lib/rancid/.cloginrc

8. Проверяем правильность заполнения .cloginrc, пытаемся подключиться к указанной циске — если доступ получен, то данные верны:

/var/lib/rancid/bin/clogin 10.3.1.5

9. Инициализируем cvs-репозиторий:

/usr/lib/rancid/bin/rancid-cvs

10.Добавляем информацию в файл router.db, где указываем кого бэкапить:

cat >> /var/lib/rancid/cisco/router.db << END
#Format: ip-address:device-type:status
10.3.1.5:cisco:up
10.3.1.1:cisco:up
END

11. Запускаем бэкап, и проверяем что все хорошо(конфиги цисок будут лежать в /var/lib/rancid/cisco/configs/):

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

12. Добавляем задание на бэкап в крон(это и последующие действия нужно делать от рута):

cat >> /etc/crontab << END #Backup cisco configs 00 3 * * * rancid /var/lib/rancid/bin/rancid-run &> /dev/null
END

13. Установим веб-морду для ранцида, чтобы было удобнее просматривать конфиги и разницу между ними:

apt-get install cvsweb

14. Нужно добавить репозиторий в конфиг /etc/cvsweb/cvsweb.conf:

@CVSrepositories = (
'rancid' => ['Rancid', '/var/lib/rancid/CVS/'],
);

15. Создадим ссылку чтобы в вебморде корректно отображались иконки:

ln -s /usr/share/cvsweb /var/www/cvsweb

16. Все, теперь можно просматривать конфиги по ссылке:

http://yourserverip/cgi-bin/cvsweb/cisco/configs/


17. В дальнейшем при добавлении новых устройств доступ к ним необходимо прописывать в /var/lib/rancid/.cloginrc, а также добавлять в список /var/lib/rancid/cisco/router.db

На этом все! Успехов в установке!

Leave a Comment