This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
linux._мониторинг_оборудования_и_интеграция_с_cisco [2022/03/31 14:36] val [Схема стенда] |
linux._мониторинг_оборудования_и_интеграция_с_cisco [2024/12/10 14:14] (current) val |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Linux. Мониторинг оборудования и интеграция с Cisco ====== | ====== Linux. Мониторинг оборудования и интеграция с Cisco ====== | ||
| + | * [[https://www.cisco.com/c/dam/m/ru_ru/training-events/2019/cisco-connect/pdf/netdevops_angrechi_on_site.pdf|Как начать управлять сетью на основе методологии NetDevOps и перестать бояться изменений в пятницу вечером]] | ||
| + | * [[https://habr.com/ru/post/682974/|Простое развёртывание сетевой лабы на базе контейнеров]] | ||
| ===== Программа курса ===== | ===== Программа курса ===== | ||
| Line 8: | Line 10: | ||
| ===== Список ПО для установки в перерывах ===== | ===== Список ПО для установки в перерывах ===== | ||
| + | |||
| + | * [[Переменные окружения#Установка переменных окружения]] http_proxy | ||
| - [[Технология Docker]] | - [[Технология Docker]] | ||
| Line 22: | Line 26: | ||
| ===== Модуль 0. Подготовка стенда в классе. ===== | ===== Модуль 0. Подготовка стенда в классе. ===== | ||
| - | * Узнать свой номер стенда | + | * Узнать свой номер стенда X=? |
| * Удалить VM с прошлых курсов | * Удалить VM с прошлых курсов | ||
| * Удалить профили putty | * Удалить профили putty | ||
| Line 32: | Line 36: | ||
| * [[http://ru.wikipedia.org/wiki/Cisco_IOS|Cisco IOS]] | * [[http://ru.wikipedia.org/wiki/Cisco_IOS|Cisco IOS]] | ||
| + | |||
| ==== Схема стенда ==== | ==== Схема стенда ==== | ||
| Line 58: | Line 63: | ||
| LAN - [f0/10 switch1 или switch2] | LAN - [f0/10 switch1 или switch2] | ||
| !!! Можно через неуправляемый switch подключить к обоим коммутаторам | !!! Можно через неуправляемый switch подключить к обоим коммутаторам | ||
| - | !!! Еще лучше подключить LAN к 15-му порту switch3 и поменять символ Cloud на Computer | + | !!! Можно подключить LAN к 15-му порту switch3 (потребуется int f0/1 shut) |
| + | Можно поменять символ Cloud на Computer | ||
| </code> | </code> | ||
| Line 93: | Line 99: | ||
| C:\> ping 1.1.1.1 | C:\> ping 1.1.1.1 | ||
| </code> | </code> | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod1_pract.mp4|Запись практикума]] (длительность: 15 минут) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 106: | Line 116: | ||
| * [[http://ru.wikipedia.org/wiki/Управление_компьютерной_сетью|Управление компьютерной сетью]] | * [[http://ru.wikipedia.org/wiki/Управление_компьютерной_сетью|Управление компьютерной сетью]] | ||
| - | ==== Лабораторные работы: Настройка Linux (Debian) server ==== | + | ==== Лабораторные работы: Настройка Linux server ==== |
| === 2.1 Добавление server в GNS === | === 2.1 Добавление server в GNS === | ||
| Line 112: | Line 122: | ||
| - Назначить 8Gb RAM и 2 CPU | - Назначить 8Gb RAM и 2 CPU | ||
| - В GNS назначить 2 сетевых адаптера (или 4-ре при использовании bond) | - В GNS назначить 2 сетевых адаптера (или 4-ре при использовании bond) | ||
| - | - При увеличении числа адаптеров требуется указать их количество в свойствах VM и в свойствах объекта на карте | + | - При увеличении числа адаптеров после добавления VM, требуется указать их количество в свойствах VM и в свойствах объекта на карте |
| </code> | </code> | ||
| Line 119: | Line 129: | ||
| * Добавить server и подключить его к switch1 и switch2 | * Добавить server и подключить его к switch1 и switch2 | ||
| * Добавить LAN в схему стенда | * Добавить LAN в схему стенда | ||
| - | * Выключить и включить switch1 | + | * Выключить и включить switch1 (и switch3 если LAN через него) |
| * Провести [[netsh#Настройка IP]] на хост системе и проверить ее связь с router | * Провести [[netsh#Настройка IP]] на хост системе и проверить ее связь с router | ||
| + | |||
| + | <code> | ||
| + | PS C:\Windows\system32> ping 192.168.X.1 | ||
| + | </code> | ||
| === 2.3 Настройка базовой конфигурации server === | === 2.3 Настройка базовой конфигурации server === | ||
| Line 131: | Line 145: | ||
| <code> | <code> | ||
| - | # cat /etc/hostname | + | # hostnamectl set-hostname server.corpX.un |
| - | </code><code> | + | |
| - | server.corpX.un | + | # bash |
| </code> | </code> | ||
| - | * Настройка сети через [[Настройка сети в Linux#netplan]] | + | * Обсудить настройку сети через [[Настройка сети в Linux#Настройка Netplan]] |
| - | * [[Настройка сети в Linux#Настройка bonding]] | + | * Произвести [[Настройка сети в Linux#Отключение ifupdown]] и [[Настройка сети в Linux#Настройка bonding]] |
| <code> | <code> | ||
| # init 6 | # init 6 | ||
| + | или | ||
| + | # netplan apply | ||
| # sh conf/dns.sh | # sh conf/dns.sh | ||
| Line 164: | Line 180: | ||
| </code><code> | </code><code> | ||
| search corpX.un | search corpX.un | ||
| - | nameserver 192.168.X.10 | + | nameserver 192.168.X.10 #!!! not 127.0.0.1, need in docker |
| </code><code> | </code><code> | ||
| # host router | # host router | ||
| Line 171: | Line 187: | ||
| </code> | </code> | ||
| - | * Вместо [[Сервис DNS#Настройка сервера зоны обратного преобразования X.168.192.IN-ADDR.ARPA]], понадобится для генерации имен файлов с конфигурацией коммутаторов | + | * [[netsh#Настройка DNS клиента]] на host системе |
| + | |||
| + | * Добавить в файл hosts switchN вместо [[Сервис DNS#Настройка сервера зоны обратного преобразования X.168.192.IN-ADDR.ARPA]], понадобится для генерации имен файлов с конфигурацией коммутаторов | ||
| <code> | <code> | ||
| Line 186: | Line 204: | ||
| # getent hosts 192.168.X.51 | # getent hosts 192.168.X.51 | ||
| </code> | </code> | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod2_pract.mp4|Запись практикума]] (длительность: 18 минут) | ||
| + | |||
| ===== Часть 2. Мониторинг оборудования. Задачи и инструменты ===== | ===== Часть 2. Мониторинг оборудования. Задачи и инструменты ===== | ||
| Line 209: | Line 232: | ||
| <code> | <code> | ||
| - | Host: gate.isp.un | + | Host: 172.16.1.254 |
| Login: userX | Login: userX | ||
| Pass: | Pass: | ||
| Line 241: | Line 264: | ||
| * [[Локализация системы#Локализация временной зоны]] | * [[Локализация системы#Локализация временной зоны]] | ||
| - | * [[Сервис MRTG]] (демонстрирует преподаватель за время установки Prometheus) | + | |
| - | * [[Сервис Cacti]] (демонстрирует преподаватель за время установки Docker и Grafana) | + | * [[Сервис MRTG]] |
| + | * [[Сервис Cacti]] | ||
| + | * [[https://youtu.be/twwIF6_khiE|Сети Cisco и Linux у Вас дома]] ([[https://rutube.ru/video/e4f51279544f862e07ae4727fe58b2e0/|RuTube]]) | ||
| * [[Сервис Prometheus]] | * [[Сервис Prometheus]] | ||
| * [[Сервис Prometheus#prometheus-snmp-exporter]] | * [[Сервис Prometheus#prometheus-snmp-exporter]] | ||
| * [[Сервис Grafana]] | * [[Сервис Grafana]] | ||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod3_pract.mp4|Запись практикума]] (длительность: 25 минут) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 295: | Line 324: | ||
| * [[Оборудование уровня 2 Cisco Catalyst]] | * [[Оборудование уровня 2 Cisco Catalyst]] | ||
| * [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на switch1 и switch3, (можно не включать сервис SCP) | * [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на switch1 и switch3, (можно не включать сервис SCP) | ||
| - | * При выключении стенда в конфигурации не сохраняются ключи ssh в коммутаторах, необходимо | + | * При выключении коммутатора в его конфигурации не сохраняются ключи ssh, поэтому, после включения, необходимо: |
| <code> | <code> | ||
| crypto key generate rsa general-keys modulus 1024 | crypto key generate rsa general-keys modulus 1024 | ||
| Line 320: | Line 349: | ||
| #!/bin/sh | #!/bin/sh | ||
| - | /usr/bin/ansible sws -m ios_command -a "commands='show cdp nei'" -c local > /srv/tftp/switch.cdp.json | + | #/usr/bin/ansible sws -m ios_command -a "commands='show cdp nei'" -c local > /srv/tftp/switch.cdp.json |
| + | /usr/bin/ansible sws -m ios_command -a "commands='show cdp nei'" -c network_cli > /srv/tftp/switch.cdp.json | ||
| cd /srv/tftp/ | cd /srv/tftp/ | ||
| Line 340: | Line 370: | ||
| * [[Сервис SNMP#Настройка snmptrapd сервиса]] на регистрацию всех событий | * [[Сервис SNMP#Настройка snmptrapd сервиса]] на регистрацию всех событий | ||
| * [[Общие настройки сетевого оборудования Cisco#Настройка адреса перехватчика trap сообщений]] и [[Общие настройки сетевого оборудования Cisco#Настройка генерации trap-ов]] на изменение конфигурации switchN (можно через [[Сервис Ansible#Использование playbook]] Ansible) | * [[Общие настройки сетевого оборудования Cisco#Настройка адреса перехватчика trap сообщений]] и [[Общие настройки сетевого оборудования Cisco#Настройка генерации trap-ов]] на изменение конфигурации switchN (можно через [[Сервис Ansible#Использование playbook]] Ansible) | ||
| - | * [[Сервис SNMP#Настройка snmptrapd сервиса]] на резервное копирование конфигурации (демонстрирует преподаватель, слушатели сделают вариант с ELK Logstash) | + | * [[Сервис SNMP#Настройка snmptrapd сервиса]] на резервное копирование конфигурации (демонстрирует преподаватель, далее будут варианты решения этой же задачи с Fail2Ban и ELK Logstash) |
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod4_pract.mp4|Запись практикума]] (длительность: 24 минуты) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 370: | Line 404: | ||
| Мониторинг доступности оборудования и сервисов | Мониторинг доступности оборудования и сервисов | ||
| - | * [[Сервис Nagios]] (понадобится [[Сервис MTA#Использование почтовых псевдонимов]]) демонстрирует преподаватель | + | * [[Сервис Nagios]] можно посмотреть в вебинаре [[https://youtu.be/twwIF6_khiE|Сети Cisco и Linux у Вас дома]] ([[https://rutube.ru/video/e4f51279544f862e07ae4727fe58b2e0/|RuTube]]) |
| * Сервис [[Сервис Prometheus#prometheus-blackbox-exporter]] | * Сервис [[Сервис Prometheus#prometheus-blackbox-exporter]] | ||
| * [[Сервис Grafana#Grafana dashboard]] | * [[Сервис Grafana#Grafana dashboard]] | ||
| Line 392: | Line 427: | ||
| * Сервис rsyslog [[Регистрация событий в Linux#Настройка на обработку сообщений типа local0]] и [[Регистрация событий в Linux#Регистрация сообщений, переданных по сети]] | * Сервис rsyslog [[Регистрация событий в Linux#Настройка на обработку сообщений типа local0]] и [[Регистрация событий в Linux#Регистрация сообщений, переданных по сети]] | ||
| - | * [[Общие настройки сетевого оборудования Cisco#Управление log сообщениями]] в оборудовании Cisco (показать на router, для switch аналогично) | + | * [[Общие настройки сетевого оборудования Cisco#Управление log сообщениями]] в оборудовании Cisco (показать на router, для switch-s можно через [[Сервис Ansible#Использование playbook]] Ansible |
| * Обсудить в видео "[[https://youtu.be/zUi4lTd5WHc|Система управления конфигурациями Ansible и оборудование Cisco]]" использование журнала для выбора момента резервного копирования с помощью [[Сервис Fail2ban]] | * Обсудить в видео "[[https://youtu.be/zUi4lTd5WHc|Система управления конфигурациями Ansible и оборудование Cisco]]" использование журнала для выбора момента резервного копирования с помощью [[Сервис Fail2ban]] | ||
| - | * Мастер класс [[https://youtu.be/EvuEjXhDMNQ|Elastic Stack для сетевого инженера]] | + | * Мастер класс [[https://youtu.be/EvuEjXhDMNQ|Elastic Stack для сетевого инженера]]([[https://rutube.ru/video/ee37e10713d6643c26f7af7eb6457171/|RuTube]]) |
| * Запускаем/знакомимся с [[Сервисы ELK#Elasticsearch]] и подключаемся к нему из [[Сервисы ELK#Kibana]] | * Запускаем/знакомимся с [[Сервисы ELK#Elasticsearch]] и подключаемся к нему из [[Сервисы ELK#Kibana]] | ||
| Line 414: | Line 449: | ||
| * Сервис Nagios [[Сервис Nagios#Использование plugin check_snmp]] или [[Сервис Nagios#Интеграция с MRTG]] | * Сервис Nagios [[Сервис Nagios#Использование plugin check_snmp]] или [[Сервис Nagios#Интеграция с MRTG]] | ||
| * Сервис [[Сервис Prometheus#prometheus-alertmanager]] | * Сервис [[Сервис Prometheus#prometheus-alertmanager]] | ||
| - | * Сервис Grafana [[Сервис Grafana#Настройка уведомлений]] (обсудить) | + | * Сервис Grafana [[Сервис Grafana#Настройка уведомлений]] |
| * [[Сервис SNMP#Настройка snmptrapd сервиса]] на обработку сообщений, полученных с [[Общие настройки сетевого оборудования Cisco#Использование RMON подсистемы протокола SNMP]] на cisco router | * [[Сервис SNMP#Настройка snmptrapd сервиса]] на обработку сообщений, полученных с [[Общие настройки сетевого оборудования Cisco#Использование RMON подсистемы протокола SNMP]] на cisco router | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod5_pract.mp4|Запись практикума]] (длительность: 22 минуты) | ||
| + | |||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 437: | Line 477: | ||
| * [[Сервисы ELK#Elasticsearch]], [[Сервисы ELK#Filebeat]], [[Сервисы ELK#filebeat netflow module]] и [[Сервисы ELK#Kibana Dashboard]] | * [[Сервисы ELK#Elasticsearch]], [[Сервисы ELK#Filebeat]], [[Сервисы ELK#filebeat netflow module]] и [[Сервисы ELK#Kibana Dashboard]] | ||
| + | ==== Внимание! Посмотрите вебинар ==== | ||
| + | |||
| + | * [[https://youtu.be/EvuEjXhDMNQ|Elastic Stack для сетевого инженера]] | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod6_pract.mp4|Запись практикума]] (длительность: 7 минут) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 459: | Line 506: | ||
| * [[AAA#Старая модель AAA]] преподаватель демонстрирует на router | * [[AAA#Старая модель AAA]] преподаватель демонстрирует на router | ||
| * [[AAA#Новая модель AAA]] преподаватель демонстрирует на switch1 | * [[AAA#Новая модель AAA]] преподаватель демонстрирует на switch1 | ||
| - | * Настраиваем новую модель AAA с локальной базой пользователей и настройками line con через [[Сервис Ansible#Использование playbook]] | + | * Настраиваем новую модель AAA с локальной базой пользователей и настройками line con через [[Сервис Ansible#Использование playbook]] (можно совместить с RADIUS) |
| - | === 7.2 Использование RADUIS для хранения учетных записей администраторов === | + | === 7.2 Использование RADIUS для хранения учетных записей администраторов === |
| * [[Сервис FreeRADIUS]] (пользователи root и student, коммутаторы switchN) | * [[Сервис FreeRADIUS]] (пользователи root и student, коммутаторы switchN) | ||
| Line 519: | Line 566: | ||
| </code> | </code> | ||
| - | * Применяем конфигурацию [[Настройка сети в Linux#netplan]] | + | * Применяем [[Настройка сети в Linux#Настройка Netplan]] |
| * Проверяем [[Настройка сети в Linux#bond netplan]] | * Проверяем [[Настройка сети в Linux#bond netplan]] | ||
| Line 536: | Line 583: | ||
| </code> | </code> | ||
| * Развертывание системы IDS ([[Сервис SNORT]]) | * Развертывание системы IDS ([[Сервис SNORT]]) | ||
| + | * [[Общие настройки сетевого оборудования Cisco#Настройка snmp агента]] на router с разрешением на запись | ||
| * Развертывание системы IPS (Сервис Fail2ban [[Сервис Fail2ban#Установка]], [[Сервис Fail2ban#Интеграция fail2ban и snort]] и [[Сервис Fail2ban#Запуск и отладка]]) | * Развертывание системы IPS (Сервис Fail2ban [[Сервис Fail2ban#Установка]], [[Сервис Fail2ban#Интеграция fail2ban и snort]] и [[Сервис Fail2ban#Запуск и отладка]]) | ||
| + | |||
| + | * [[https://habr.com/ru/articles/813799/|DPI из подручных материалов]] | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod7_pract.mp4|Запись практикума]] (длительность: 25 минут) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 572: | Line 626: | ||
| server# sh conf/dhcp.sh | server# sh conf/dhcp.sh | ||
| </code> | </code> | ||
| - | * [[Сервис DHCP]] | + | * [[Сервис DHCP]] (vlan2 и 100+X) |
| * [[Сервис DHCP#Проверка конфигурации и запуск]] | * [[Сервис DHCP#Проверка конфигурации и запуск]] | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod8_pract.mp4|Запись практикума]] (длительность: 12 минут) | ||
| + | |||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 588: | Line 647: | ||
| ==== Лабораторные работы ==== | ==== Лабораторные работы ==== | ||
| - | * !!! Потребовалось | + | * Необходимо перезагрузить server |
| <code> | <code> | ||
| - | # systemctl disable docker | ||
| - | |||
| # init 6 | # init 6 | ||
| </code> | </code> | ||
| * [[Использование протоколов маршрутизации]] | * [[Использование протоколов маршрутизации]] | ||
| + | |||
| + | ==== Практикум ==== | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/lin7/lin7_mod9_pract.mp4|Запись практикума]] (длительность: 18 минут) | ||
| ==== Вопросы ==== | ==== Вопросы ==== | ||
| Line 607: | Line 668: | ||
| - Сохраняем конфигурацию и отключаем switch1 | - Сохраняем конфигурацию и отключаем switch1 | ||
| - | - Переключаем LAN на 10-й порт switch2 | + | - Переключаем LAN на 10-й порт switch2 или отключаем интерфейс f0/0 и включаем f0/1 на switch3 |
| - Включаем switch2 | - Включаем switch2 | ||
| - Отключаем интерфейс eth0 на server [[Настройка сети в Linux]] | - Отключаем интерфейс eth0 на server [[Настройка сети в Linux]] | ||
| Line 615: | Line 676: | ||
| - Проводим базовую настройку [[Оборудование уровня 2 Cisco Catalyst]] switch2 | - Проводим базовую настройку [[Оборудование уровня 2 Cisco Catalyst]] switch2 | ||
| - Проводим [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на switch2 | - Проводим [[Общие настройки сетевого оборудования Cisco#Настройка SSH]] на switch2 | ||
| - | - Через [[Сервис Ansible#Использование playbook]] ansible и [[Программирование диалогов expect]] обновляем конфигурацию на switch2 | + | - Через [[Сервис Ansible#Использование playbook]] ansible (aaa local) и [[Программирование диалогов expect]] обновляем конфигурацию на switch2 |
| - [[Использование протокола 802.1q#Настройка интерфейсов]] trunk на интерфейсах f0/1 и f0/2 на switch2 | - [[Использование протокола 802.1q#Настройка интерфейсов]] trunk на интерфейсах f0/1 и f0/2 на switch2 | ||
| - | - Отключаем интерфейс f0/0 и включаем f0/1 на switch3 | ||
| - Проверяем доступ в Internet на client1 | - Проверяем доступ в Internet на client1 | ||
| - Настраиваем [[Оборудование уровня 2 Cisco Catalyst#SPAN]] на switch2, отключаем интерфейс eth2 ([[Настройка сети в Linux]]) на server и проверяем работу IPS | - Настраиваем [[Оборудование уровня 2 Cisco Catalyst#SPAN]] на switch2, отключаем интерфейс eth2 ([[Настройка сети в Linux]]) на server и проверяем работу IPS | ||