====== Linux. Мониторинг оборудования и интеграция с Cisco ======
===== Программа курса =====
* [[http://www.specialist.ru/course/yun4-a|Linux. Уровень 7. Мониторинг оборудования и интеграция с решениями Cisco]]
===== Вебинар =====
===== Часть 1. Использование GNS для обучения работе с оборудованием Cisco =====
* [[https://ru.wikipedia.org/wiki/Dynamips|Dynamips]]
* [[https://en.wikipedia.org/wiki/Graphical_Network_Simulator-3|Graphical Network Simulator-3]]
* [[https://docs.gns3.com/docs/#what-is-gns3|What is GNS3?]]
===== Модуль 0. Подготовка стенда в классе. =====
* Узнать свой номер стенда
* Удалить виртуалки
* Удалить профили putty
* Отключить не используемые адаптеры, в том числе, vbox
* Записать логин пароль и IP (сообщить преподаватель) рабочей станции
* Проверить наличие дистрибутивов и образов
===== Модуль 1. Развертывание сети предприятия. =====
==== Теория ====
* Схема стенда
* [[http://ru.wikipedia.org/wiki/Cisco_IOS|Cisco IOS]]
==== Лабораторные работы: Знакомство с оборудованием Cisco ====
=== 1.1 Знакомство с интерфейсом GNS ===
* [[Материалы по GNS]]
* Добавляем router и подключаем его к isp
=== 1.2 Знакомство с Cisco CLI ===
* [[Интерфейс командной строки в IOS]]
* Установка времени (clock set ?)
* Управление конфигурацией (running-config, startup-config)
=== 1.3 Настройка router ===
* [[Оборудование уровня 3 Cisco Router]]
* [[Оборудование уровня 3 Cisco Router#Настройка DHCP сервиса]] (через блокнот)
=== 1.4 Добавление VM client1 в GNS ===
* Добавляем switch без настроек
* Подключение Vbox VM client1
==== Вопросы ====
- Какая команда в Cisco используется для поиска строк, содержащих заданный образец?
- Какая клавиша выводит варианты набора команды в Cisco?
- Какая клавиша дописывает ключевые слова команды в Cisco?
===== Модуль 2. Развертывание менеджмент станции =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/Управление_компьютерной_сетью|Управление компьютерной сетью]]
==== Лабораторные работы: Настройка Linux (Debian) server ====
=== 2.1 Добавление server в GNS ===
- В VBox первую карту подключаем мостом
- В GNS назначить 3 сетевых адаптера, НЕ разрешая использовать, то что настроено в VirtualBox. Использовать Ethernet1 и 2
=== 2.2 Подключение server к switch в GNS ===
conf t
int f0/1
shutdown
no shutdown
end
=== 2.3 Настройка базовой конфигурации server ===
ifconfig eth0 inet 10.5.11.100+X/24
# sh net_server.sh
...
# cat /etc/hosts
127.0.0.1 localhost
192.168.X.10 server.corpX.un server
10.5.11.254 proxy
# cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.5.11.100+X
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 192.168.X.10
netmask 255.255.255.0
gateway 192.168.X.1
auto eth2
iface eth2 inet manual
up ip link set eth2 up
# cat .bashrc
...
export http_proxy=http://proxy:3128/
...
root@localhost:~# init 6
...
root@server:~# apt update
===== Часть 2. Мониторинг оборудования. Задачи и инструменты =====
* [[http://ru.wikipedia.org/wiki/FCAPS|FCAPS — модель администрирования и управления сетями]]
* [[http://cyclowiki.org/wiki/Циклопедия:Списки:Системы_мониторинга_сети|Циклопедия:Списки:Системы мониторинга сети]]
===== Модуль 3. Управление производительностью =====
==== Теория ====
* [[http://www.bog.pp.ru/work/network_performance.html|Bog BOS: Производительность сети и её измерение]]
* [[https://www.ibm.com/developerworks/ru/library/au-networkperfanalysis/index.html|Анализ производительности сети в UNIX]]
* [[http://ru.wikipedia.org/wiki/Тестирование_производительности|Тестирование_производительности - Wikipedia]]
* [[https://ru.wikipedia.org/wiki/SNMP|Протокол SNMP - Wikipedia]]
* [[http://ru.wikipedia.org/wiki/RRDtool|Архитектура RRD баз данных - Wikipedia]]
* [[http://ru.wikipedia.org/wiki/RMON|Протокол RMON - Wikipedia]]
==== Лабораторные работы ====
=== 3.1 Тестирование производительности сети ===
* Утилита [[Утилиты для тестирования сети#ping]]
Host: gate.isp.un
Login: userX
Pass:
* [[Утилита iPerf]]
router#show interface f1/0
router#show interface f1/1
=== 3.2 Использование SNMP ===
router#show processes cpu
* Поиск OID оборудования cisco.com -> Search -> SNMP Object Navigator -> SEARCH -> busy
* [[Общие настройки сетевого оборудования Cisco#Настройка snmp агента]] на router с разрешением на чтение
* Установка snmp консоли ([[Сервис SNMP#Установка пакета net-snmp]])
* [[Сервис SNMP#Варианты использования snmp консоли в режиме чтения]]
* [[http://val.bmstu.ru/unix/MIB%20Browser%20setup.exe|MIB Browser]] [[http://www.ireasoning.com/]]
* [[http://www.mikrotik.com/thedude.php|The Dude by MikroTik]]
=== 3.3 Создание профиля загрузки элементов сети ===
* [[Локализация системы#Локализация временной зоны]]
* [[Сервис MRTG]] (демонстрирует преподаватель)
* [[Сервис Cacti]] (демонстрирует преподаватель)
* [[Сервис Prometheus]]
* [[Сервис Prometheus#prometheus-snmp-exporter]]
* [[Сервис Grafana]]
==== Вопросы ====
- Назовите характеристики сети, относящиеся к производительности.
- Можно ли измерить пропускную способность сети утилитой ping ?
- Что обозначает аббревиатура SNMP?
- Какой протокол и порт по умолчанию использует агент SNMP для запросов?
- Назовите основные команды протокола SNMP.
- Какая утилита пакета используется для перебора значений внутри заданного OID’ом диапазона?
- Как соотносятся MIB и OID в SNMP?
- Как меняется размер базы данных RRD?
===== Модуль 4. Управление конфигурацией =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/CDP|Протокол CDP]]
* [[http://ru.wikipedia.org/wiki/LLDP|Протокол LLDP]]
* [[http://ru.wikipedia.org/wiki/TFTP|Протокол TFTP]]
* [[http://bog.pp.ru/work/rsh.html|Протоколы RSH/RCP]]
* [[http://ru.wikipedia.org/wiki/Система_управления_версиями|Системы управления версиями]]
* [[https://habr.com/ru/post/339844/|Cisco IOS функционал Archive]]
==== Лабораторные работы ====
=== 4.1 Использование сервиса TFTP ===
* [[Сервис ТFTP]]
* [[Оборудование уровня 3 Cisco Router#Настройка пакетного фильтра]] на Cisco router
* [[Операции с файловыми системами в IOS]]
=== 4.2 Использование сервиса RSH и RCP ===
* [[Общие настройки сетевого оборудования Cisco#Настройка rcmd сервисов]] на Cisco router
* [[Сервисы TELNET RSH#Установка клиента]] rsh
* [[Сервисы TELNET RSH#Варианты использования]] rcmd сервисов в Cisco
rsh router show ip dhcp binding
* Сервис MRTG [[Сервис MRTG#Использование скриптов]]
* [[Сервис Prometheus#prometheus-pushgateway]]
* [[Сервис DHCP#Поиск посторонних DHCP серверов]]
=== 4.3.Использование сервисов SSH, SCP и Ansible ===
* [[Оборудование уровня 2 Cisco Catalyst]]
* [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на Cisco switch, (можно не включать сервис SCP)
* Может потребоваться [[Сервис SSH#Настройка ssh клиента]] для согласования алгоритмов шифрования
* [[Программирование диалогов expect]] (включаем scp)
* [[Общие настройки сетевого оборудования Cisco#Аутентификация по публичному ключу]] (может не поддерживаться, в этом случае использовать [[Сервис SSH#Парольная аутентификация]])
* [[Сервис SSH#SSH вместо RCP (SCP)]]
* Сервис Ansible [[Сервис Ansible#Установка на управляющей системе]], [[Сервис Ansible#Настройка групп управляемых систем]] и [[Сервис Ansible#Использование модулей]]
=== 4.4 Регистрация изменений конфигурации ===
* [[Система контроля версий rcs]]
* [[Сервис Git]] для каталога /srv/tftp/
=== 4.5 Протоколирование топологии сети ===
* [[Использование протокола CDP]]
* [[Сервис SSH#SSH вместо RSH]]
# cat cdp_save.sh
#!/bin/sh
/usr/bin/ansible sws -m ios_command -a "commands='show cdp nei'" -c local > /srv/tftp/switch.cdp.json
cd /srv/tftp/
/usr/bin/git add *
/usr/bin/git --no-optional-locks status | grep 'modified\|deleted\|new file' | /usr/bin/git commit -a -F -
# crontab -l
* * * * * /root/cdp_save.sh >/dev/null 2>&1
=== 4.6 Управление конфигурацией с использованием протокола SNMP ===
* [[Общие настройки сетевого оборудования Cisco#Настройка snmp агента]] на switch с разрешением на запись
* [[Сервис SNMP#Варианты использования протокола SNMP в режиме записи]]
==== Вопросы ====
- Какой протокол и порт по умолчанию использует протокол TFTP?
- Какой командой Cisco IOS можно посмотреть содержимое текстового файла, расположенного на TFTP сервере?
- Когда нужно настраивать IP адрес на layer 2 коммутаторе?
- На каком интерфейсе коммутаторов Cisco настраивается IP адрес?
- На каком уровне сетевой модели работают протоколы CDP и LLDP?
- Чем значение OID ifAdminStatus отличается от ifOperStatus?
===== Модуль 5. Управление отказами =====
==== Теория ====
* [[https://ru.wikipedia.org/wiki/Syslog|Syslog]]
* [[https://habrahabr.ru/post/243035/|Ловим snmp трапы mac-notification с устройств Cisco]]
==== Лабораторные работы ====
=== 5.1 Настройка уведомлений о проблемах ===
* [[Сервис Nagios]] [[Сервис MTA#Использование почтовых псевдонимов]]
* Сервис Grafana [[Сервис Grafana#Настройка уведомлений]]
* [[Сервис Prometheus#prometheus-blackbox-exporter]]
* [[Сервис Grafana#Grafana dashboard]]
* Видеоурок: [[https://youtu.be/RBCEef43FBQ|Развертывание и настройка Prometheus и Grafana]]
=== 5.2 Управление и анализ журналов ===
* Сервис rsyslog [[Регистрация событий в Linux#Настройка на обработку сообщений типа local0]] и [[Регистрация событий в Linux#Регистрация сообщений, переданных по сети]]
* [[Общие настройки сетевого оборудования Cisco#Управление log сообщениями]] в оборудовании Cisco (router)
* [[Сервис Ansible#Использование playbook]] Ansible для массовой настройки клиента syslog в cisco (switch)
Историческая ретроспектива - использование монолитного пакета ciscoconf в FreeBSD
* Резервное копирование конфигурации с использованием [[Резервное копирование конфигурации Cisco#Пакет ciscoconf]]
Использование современных модульных решений
* Сервис Fail2ban [[Сервис Fail2ban#Установка]], [[Сервис Fail2ban#Интеграция fail2ban и cisco log]] и [[Сервис Fail2ban#Запуск и отладка]] ([[https://youtu.be/zUi4lTd5WHc|Видео урок]])
=== 5.3.1 Использование snmptrap ===
* [[Сервис SNMP#Настройка snmptrapd сервиса]]
* [[Общие настройки сетевого оборудования Cisco#Настройка адреса перехватчика trap сообщений]] на cisco switch
* [[Общие настройки сетевого оборудования Cisco#Настройка генерации trap-ов]] и [[Оборудование уровня 2 Cisco Catalyst#storm-control]] на cisco switch
* Резервное копирование конфигурации с использованием с использованием snmptrap
=== 5.3.2 Использование Logstash ===
* Видео урок: [[https://youtu.be/EvuEjXhDMNQ|Elastic Stack для сетевого инженера]] (до 46:30)
=== 5.4 Настройка уведомлений в о критических нагрузках ===
* [[Сервис Nagios#Использование plugin check_snmp]]
* Сервис Grafana [[Сервис Grafana#Настройка уведомлений]]
* [[Общие настройки сетевого оборудования Cisco#Использование RMON подсистемы протокола SNMP]] на cisco router
==== Вопросы ====
- Какой протокол и порт по умолчанию использует протокол Syslog?
- Для чего используется тип сообщений в протоколе Syslog?
- Какой протокол и порт по умолчанию используется для SNMP trap?
- Как работает протокол RMON?
===== Модуль 6. Учет трафика в сетях Cisco =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/Netflow|Протокол NetFlow]]
==== Лабораторные работы ====
* [[Оборудование уровня 3 Cisco Router#Настройка экспорта статистики по протоколу NetFlow]]
* [[Пакет flow-tools]]
* Файловый сервер SAMBA [[Файловый сервер SAMBA#Публичный каталог доступный на запись]]
* [[Excel]]
* Видео урок: [[https://youtu.be/EvuEjXhDMNQ|Elastic Stack для сетевого инженера]] (с 46:30)
==== Вопросы ====
- Какие задачи решают сенсоры, коллекторы и анализаторы в протоколе Netflow?
- Пригоден ли протокол Netflow как источник данных для систем IDS/IPS?
===== Модуль 7. Управление безопасностью =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/Протокол_AAA|Архитектура моделей AAA оборудования Cisco]]
* [[http://ru.wikipedia.org/wiki/RADIUS|Протокол RADIUS]]
* [[https://ru.wikipedia.org/wiki/TACACS|Протокол TACACS]]
* [[http://ru.wikipedia.org/wiki/IEEE_802.1X|Протокол 802.1x]]
* [[http://ru.wikipedia.org/wiki/Зеркалирование|Протокол SPAN]]
==== Лабораторные работы ====
=== 7.1 Использование локальных учетных записей администраторов ===
* [[AAA#Старая модель AAA]] можно показать на router
* [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на switch
* [[AAA#Новая модель AAA]] на switch
=== 7.2 Использование RADUIS для хранения учетных записей администраторов ===
switch(config)#no username root
switch(config)#no username user1
* [[Сервис FreeRADIUS]]
* [[AAA#Настройка клиента RADIUS]] на switch
* [[AAA#Использование RADIUS для аутентификации подключений]] на switch
* [[AAA#Использование RADIUS для авторизации подключений]] на switch
=== 7.3 Использование TACACS для хранения учетных записей администраторов ===
* [[Сервис TACACS]]
* [[AAA#Аутентификация и авторизация с использованием TACACS+]]
=== 7.4 Использование RADUIS для аутентификации пользователей ===
* Настройка протокола [[Сервис FreeRADIUS#EAP]] для 802.1x на FreeRADIUS
* [[AAA#Использование RADIUS для протокола 802.1x]] на switch
* [[Оборудование уровня 2 Cisco Catalyst#Настройка 802.1x]] на switch
* Настройка Windows ([[Материалы по Windows#802.1X authentication]])
=== 7.5 Развертывание систем IDS и IPS ===
* Настройка [[Оборудование уровня 2 Cisco Catalyst#SPAN]] на Cisco Catalyst (может потребоваться остановить/запустить server в GNS)
switch#conf t
interface FastEthernet0/15
shut
no shut
interface FastEthernet0/2
no dot1x port-control auto
end
server# tcpdump -nni eth2 tcp
* Развертывание системы IDS ([[Сервис SNORT]])
* Развертывание системы IPS (в Linux [[Сервис Fail2ban#Интеграция fail2ban и snort]])
==== Вопросы ====
- Что обозначает аббревиатура AAA?
- К чему в модели AAA относятся директивы username, password, login, exec, dot1x, privilege?
- Кто является клиентом для RADIUS сервера?
- Для чего используется общий секрет между RADIUS сервером и сервером доступа?
- Какой протокол и порт по умолчанию использует RADIUS сервер для аутентификации?
- Какой протокол и порт по умолчанию использует RADIUS сервер для учета?
- Может ли сервер RADIUS использоваться для управления правами доступа администраторов в Cisco CLI?
- Какой трафик в стандарте 802.1X разрешен для неавторизованного клиента?
- Какой протокол и порт по умолчанию использует TACACS+ сервер?
- В чем преимущества и недостатки протоколов RADIUS и TACACS+ ?
- Можно ли использовать порт коммутатора Cisco одновременно и для SPAN и для передачи трафика адресованного подключенной к этому порту рабочей станции?
- Пригодна ли технология Cisco SPAN как источник данных для систем IDS/IPS?
- Почему системы IPS затруднительно использовать для блокировки передачи вирусных файлов по сети?
===== Часть 3. Совместное использование Linux систем с оборудованием Cisco =====
===== Модуль 8. Использование виртуальных сетей (VLAN) =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/IEEE_802.1Q|Протокол 802.1q]]
==== Лабораторные работы ====
* [[Использование протокола 802.1q]]
==== Вопросы ====
- Что обозначает термин Native VLAN?
- Как увеличивается размер фрейма в протоколе 802.1q?
===== Модуль 9. Управление маршрутизацией =====
==== Теория ====
* [[http://ru.wikipedia.org/wiki/Протокол_маршрутизации|Протоколы маршрутизации]]
* [[http://ru.wikipedia.org/wiki/OSPF|Протокол маршрутизации OSPF]]
* [[http://habrahabr.ru/post/101796/|Маршрутизация на основе политик]]
==== Лабораторные работы ====
* Использование списков доступа [[Использование списков доступа#для организации сервиса NAT]] (не обязательно)
* [[Использование протоколов маршрутизации]] !!! включение OSPF замедляет работу GNS !!!
* [[Использование двух ISP]] ([[https://youtu.be/H8F97J8yG4k|Видео урок]]) (не обязательно)
==== Вопросы ====
- Какие протоколы динамической маршрутизации Вам известны?
- Чем характеризуется протокол OSPF?
- Что обозначает термин PBR?