img

rConfig - резервное копирование конфигов сетевого оборудования

Введение

Добрый день, коллеги! Недавно я получил свой первый сертификат и теперь я сертифицированный специалист Cisco. Но это было маленькое лирическое отступление. Сегодня хочу рассказать о том, как сделать бэкап конфигурации сетевого оборудования. Правда, на оборудовании компании Cisco уже есть встроенная возможность архивации конфигурации. Но в этом случае придется вручную настраивать все оборудование. Если у вас сотни коммутатаров, то думаю даже копи-паст нельзя считать выходом.

В сети есть много платного ПО с очень удобным интерфейсом и под каждую ОС. Но цены на них бешеные, поэтому решили найти опенсорсный аналог. После недолгих поисков нашёл пару программ из которых выбрали rConfig. Тут решил собрать более-менее подробное руководство по установке и настройке данного ПО.

Коротко об rConfig

Как уже и было сказано, программа совершенно бесплатна, работает на CentOS 7, не очень требователен к ресурсам. Правда, на сайте разработчика не нашел информацию о минимальной конфигурации сервера, но вот то, что раскопал в сети:

  • Выделенный сервер (физический или виртуальный) ;
  • 100 GB свободного места на диске;
  • 1 GB оперативки (рекомендую 4 GB);
  • Процессор Intel x86_64.

Но минимальные требования к софту разработчик разместил:

  • Centos 7+
  • PHP 7+
  • MySQL 5.6+
  • Apache 2.4+
  • Browser IE7+, Firefox3.5+, Chrome11+, Safari3+, Opera 9.4+
Установка

Для начала нужно поднять Linux-сервер. Разработчик рекомендует CentOS с минимальной конфигурацией. Дальше подключаемся к серверу по SSH (можно использовать всем знакомый PuTTY), качаем софт с сайта разработчика, файл установки делаем исполняемым и запускаем его:

cd /home
curl -O http://files.rconfig.com/downloads/scripts/install_rConfig.sh
chmod +x install_rConfig.sh
./install_rConfig.sh

Установка длится около 20-30 минут, нужно ответить на пару вопросов типа настройки NTP, root пароля для MySQL и т.п. Проследить ход установки можно открыв вторую сессию и введя команду

tail -f /home/install.log

После установки требуется перезагрузить сервер. После перезагрузки нужно ввести команду:

/home/centos7_postReboot.sh
Настройка rConfig

После завершения установки (система оповестит об этом) можно переходить непосредственно к самой настройке rConfig. Для начала создаём пользователя базы данных, базу данных и привязываем пользователя к БД:

mysql -u root –p
Enter new password:
mysql> GRANT ALL ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> CREATE DATABASE rconfig_db;

После этого в браузере открываем веб интерфейс:

https://yourhostname/install

Проверка соответствия ПО для rConfig

Здесь проверяется соответствие необходимого программного обеспечения требованиям rConfig. Далее принимаем лицензионное соглашение, которое, как правило, никто не читает, и переходим к настройке базы данных:

Настройка БД

Кнопкой Check Settings проверяется правильность имени БД, логина и пароля. Затем нажимаем Install Settings. После этого в фоновом режиме запускается скрипт, которые заполняет БД необходимыми данными. У меня в первый раз вышла ошибка, мол данная БД уже есть, но думаю это связано с тем, что я не дождался выполнения команды и несколько раз кликнул по кнопке. Если у вас будет также, просто нажимаем Last затем опять Next, вводим нужные данные, нажимаем на Install Settings и набираемся чуток терпения :) Далее переходим к финальной проверке:

Финальная проверка при установке

Прежде чем перейти к странице входа в систему, удаляем каталог установки:

rm -fr /home/rconfig/www/install/

Добавление устройства

Для добавления устройства заходим на веб интерфейс системы введя доменное имя или IP адрес сервера, вводим логин и пароль, по умолчанию admin/admin. Затем переходим на вкладку Devices и нажимаем на кнопку Add device:

Добавляем устройства

Вводим название устройства, выбираем категорию (можно добавлять и удалять категории в одноименной вкладке), прописываем IP адрес, можно добавить расположение оборудования, вводим имя и пароль для входа на устройство. Тут сделаю небольшое отступление.

Как правило, в крупных организациях пользуются TACACS+ или RADIUS серверами для авторизации на устройствах, которые используют Active Directory. В соотвествие со внутренней политикой пароль пользователя меняется каждый месяц, значит нам придется каждый месяц заходить и менять пароль для входа на устройство. В настройках rConfig есть интеграция с LDAP, но сам пока не настраивал его, и не знаю будет ли работать так, как нужно. Когда настрою и все заработает, постараюсь написать руководство. А пока для тестов ввёл свой username и текущий пароль. Кроме этого, можно настроить имя пользователя и пароль по умолчанию. Делается это на вкладке Settings:

Настройка имени и пароля

А при добавлении устройства просто можно поставить галочку перед Default username/password.

В Enable Prompt и Main Prompt я просто ввел hostname устройства и поставил соответствующие символы (, #). Далее выбираем вендора (по умолчанию только Cisco, но можно отредактировать этот список на вкладке Vendors) и вписываем модель. Из выпадающего списка Template выбираем подключение по SSH: Cisco IOS - SSH - Enable - ios-ssh-enable.yml. Нажимаем Save и вуаля, если все прописано правильно, то при клике на названии устройства переходим на новую страницу и там статус устройства должен быть Online:

Проверка статуса устройства

Дополнительные настройки

По умолчанию система выполняет на оборудовании три команды: show ip access-list, show cdp neighbors и show startup-config. Данное действие можно сократить до одной команды, для этого на вкладке Devices переходим в раздел Commands, выбираем команду и делаем Remove Command:

Удаляем стандартные команды

Просмотреть сохранённую конфигурацию можно на странице Device Management, куда можно перейти кликнув на устройство на вкладке Devices:

Просмотр сохраненных конфигураций

01 до удаления лишних, по моему мнению, команд, а 02 уже после.

Можно настроить автоматическое выполнение бэкапа, для чего, собственно, и было затеяно все это дело. Для настройки задания переходим на вкладку Scheduled Task, нажимаем на Add Scheduled Task заполняем соответствующие поля:

Настройка автоматического выполнения бэкапа

Выбираем Download Configuration, задаём название и описание задания. Можно настроить отправку e-mail при выполнении или при ошибке выполнения или выбрать сразу оба. Далее можно выбрать конкретное устройство, а можно выбрать всю категорию. Задаём частоту выполнения, в данном случае я выбрал раз в день. Система автоматом прописывает время выполнения в 00:00, что можно изменить. Нажимаем Save и радуемся :)

На этом пока все, думаю материал будет полезен как начинающим сетевым администраторам, так и имеющим достаточный опыт работы с сетью профессионалам. Удачи!

Ссылка
скопирована
Системное администрирование
Скидка 10%
Администратор Linux
Стань Linux администратором и сделай весомый шаг в сторону карьеры в DevOps. Самые важные знания от сертифицированного и практикующего тренера с 20 летним стажем
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Виртуализация серверов – это разделение одного физического сервера на несколько виртуальных серверов, каждый из которых работает
img
На базе нашего опыта и статей мы сделалем еще один полезный документ: руководство администратора по Linux/Unix системам. В докум
img
Удаленный доступ к системам давно стал необходимостью, и сейчас с трудом можно представить, что было бы, если бы мы не могли упр
img
Все мы любим компьютеры. Они могут делать столько удивительных вещей. За пару десятилетий компьютеры произвели самую настоящую р
img
Архитектуры х64 и х86 являются одними из наиболее широко используемых типов архитектур системы команд (АСК или ISA – Instr
img
Gzip – один из самых популярных алгоритмов сжатия, который позволяет сократить размер файла, но при этом сохранить исходный файл
Комментарии
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59