Добрый день, коллеги! В этой статье я попытался создать шаблон базовой настройки коммутаторов Eltex MES 23XX для использования в корпоративных сетях, имеющих вспомогательные сервисы администрирования и мониторинга. Разумеется, невозможно описать весь функционал коммутатора или рассмотреть все системы, применяющиеся для обслуживания сетей передачи данных. Но базовые настройки  мы разберем.

Итак, всё начинается с имени устройства. Имя можно назначить любое, но оно должно нести информацию, помогающую администратору ориентироваться в своей сети. Такие имена, как switch1, sg1231fa или qwerty, неинформативны. Подробные, например ekb-malisheva51-floor.13-serv3-shkaf5-unit27, неудобны в работе. Лучше краткий вариант имени с указанием местоположения, например ekb-tower-lan1, поскольку остальные сведения можно указать в схемах сетей, системах мониторинга и баннерах.

hostname ekb-tower-lan1

Теперь займемся локальной учетной записью с полными правами (на учетной записи admin обязательно нужно изменить пароль) и паролем к привилегированному режиму:

username admin password ****** privilege 15

username not_admin password ****** privilege 15

enable password level 15 ******

Включаем SSH, протокол удаленного управления с шифрованием:

ip ssh server

Затем – баннеры. Их применяют при получении удаленного доступа:

  • предупреждающий баннер при попытке входа. Он используется для уведомления того, кто осуществляет попытку подключения, о том, что несанкционированные подключения незаконны и расцениваются как попытка взлома;

  • приветственный баннер после успешной аутентификации. В нем можно разместить любую информацию от сведений о местоположении и назначении устройства до картинки из символов.

Особенность настройки баннера: необходимо выбрать разделительный символ, с которого баннер начнется, и которым закончится. При этом выбранный символ не должен использоваться в самом баннере:

banner login $

-----------------------------------------

----UNAUTHORIZED ACCESS IS PROHIBITED----

-----------------------------------------

$

 

banner exec $

--------------------------------------------------------------------

@@_____@@__________@@@@@@@__@@_____@@@@@@@_@@@@@@@_@@@___@@__@__@__@

@@__@__@@__________@@_______@@________@@___@@_______@@@_@@___@__@__@

@@_@@@____@@@@@@___@@_______@@________@@___@@_________@@@____@__@__@

@@__@_____@@@@_____@@@@@@@__@@________@@___@@@@@@@____@@@____@__@__@

@@__@_________@@___@@_______@@________@@___@@_______@@@_@@__________

@@__@@.____@@@@@___@@@@@@@__@@@@@@____@@___@@@@@@@_@@@___@@__@__@__@

--------------------------------------------------------------------

----------Switch is located in the Ekaterinburg, Malisheva 51-------

------------------------Server room on floor 13---------------------

------------------------------Daisy, Daisy--------------------------

----------------------------You are welcome!------------------------

--------------------------------------------------------------------

$

Далее нам потребуется сервер AAA. В небольших сетях такие решения не применяются (и для доступа на оборудование используется локальная учетная запись), но в крупных корпоративных или провайдерских сетях они незаменимы для создания гибких и масштабируемых политик доступа (часто с привлечением доменных политик Active Directory). ААА (Authentication, Authorization, Accounting) – три независимых друг от друга процесса, которые выполняются при предоставлении доступа пользователю к устройству:

  • Authentication – определение наличия пользователя и проверка правильности введенного пароля, аутентификация по логину и паролю;

  • Authorization – определение уровня прав пользователя, какие команды ему позволено выполнять и на каких устройствах;

  • Accounting – логирование всех действий пользователя на AAA-сервере.

Самые распространенные протоколы ААА – TACACS+ и Radius, причем TACACS+ считается более надежным. На сервере ААА создается объект для каждого узла в сети:

На узле сети задается соответствующая конфигурация: назначаются основной и резервный серверы ААА. Также указывается порядок проверок учетных записей: сначала c помощью сервера ААА, а если он недоступен, то через локальную базу в конфигурации устройства: 

tacacs-server host 192.168.50.1 key ************

tacacs-server host 192.168.50.2 key ************ priority 1

aaa authentication enable default tacacs enable

aaa authentication login default tacacs local

aaa authentication login authorization default tacacs local

aaa accounting commands stop-only default tacacs

 Осталось настроить интерфейс SVI для удаленного доступа. Разумеется, в корпоративных сетях для сегментации сетей используются VLAN. Пусть в нашем примере VLAN для управления сетевым оборудованием будет 15:

vlan database

vlan 10,15,99

interface vlan 15

description Management SVI

ip address 192.168.2.21 255.255.255.0

ip default-gateway 192.168.2.254

 После успешного входа мы получаем оба баннера:

Теперь нужно регламентировать все внешние подключения к коммутатору, настроив доступ к так называемой плоскости управления. В своем варианте я разрешаю узкому кругу хостов и подсетей удаленный доступ по SSH и мониторинг по SNMP. В результате возможность подключения по Telnet и HTTP будет заблокирована:

management access-list remote-access

permit ip-source 192.168.33.1 service ssh

permit ip-source 172.16.0.0 mask 255.255.255.240 service ssh

permit ip-source 10.0.0.1 service snmp

exit

management access-class remote-access

Кстати об SNMP. Используем самый простой вариант с SNMPv2c, без шифрования:

snmp-server server

snmp-server community ******** ro

И можем сразу переходить к мониторингу. Zabbix отлично подходит для этой задачи:

Следующий шаг – настройка точного времени и отправка логов на Syslog-сервер. Для анализа событий в сети необходимо иметь единую точку отсчета времени, поэтому на всех узлах сети нужно настроить синхронизацию времени по протоколу NTP:

clock timezone MSK +3

clock source sntp

sntp unicast client enable

sntp server 10.0.0.1

Осталось сформировать удобочитаемые логи:

logging on

logging host 192.168.2.22

logging cli-commands

logging origin-id hostname

logging buffered informational

Разумеется, система анализа логов в крупной сети – сложный, комплексный продукт. В примере же я использую простую демонстрацию:

2021-08-27T10:04:26+03:00 ekb-tower-lan1 COPY - TRAP - The copy operation was completed successfully         192.168.2.21 27/08 14:04:26.726 

2021-08-27T10:04:26+03:00 ekb-tower-lan1 GCLI - CMD-EXEC - source:10.0.0.2 destination:192.168.2.21 user:eltex_user cmd:wr     192.168.2.21 27/08 14:04:26.788

Еще один важный элемент конфигурации - её автоматическое сохранение на стороннем ресурсе. Есть различные подходы к этой задаче - использование готовых коммерческих или свободно распространяемых решений, например NOC, автоматизированная выгрузка конфигураций и их размещение, например, на GitHub, использование встроенных инструментов для использования FTP/TFTP-хранилищ. Мы рассмотрим автоматическую выгрузку конфигурации после ее сохранения на TFTP-сервер, размещенный в корпоративной сети (Eltex позволяет такжеиспользовать SCP). Для этого необходимо в конфигурации указать адрес TFTP-сервера, действие для выгрузки, и путь на сервере (я так же добавляю имя устройства, а коммутатор при формировании файла добавит в название временную метку):

backup server tftp://10.0.0.1

backup path eltex/ekb-tower-lan1

backup write-memory

В результате, после сохранения файла, мы получим отчет в логе устройства, и новый файл на TFTP-сервере:

Пора настроить порты. Начнем с порта доступа. Не углубляясь в параметры безопасности, зададим принадлежность VLAN, защиту от BPDU при появлении постороннего коммутатора, быстрый переход порта в состояние передачи и выключим LLDP (пользователям необязательно знать, какое именно оборудование мы используем в своей сети):  

 interface gigabitethernet1/0/1

description "Simple PC access"

switchport mode access

switchport access vlan 10

spanning-tree portfast

spanning-tree bpduguard enable                     

no lldp transmit

no lldp receive

Порт для соединения с другими сетевыми устройствами (uplink) настраивается в режиме trunk с запретом на прохождение native vlan и формированием полноценной выдачи информации по протоколу LLDP:

 interface gigabitethernet1/0/9

description "Link to CORE1 (192.168...)"

switchport mode trunk

switchport trunk allowed vlan add 10,15

switchport trunk native vlan 99

lldp optional-tlv port-desc sys-name sys-desc sys-cap

lldp management-address automatic

 Теперь соседнее устройство будет знать о нашем коммутаторе чуть больше:

Соберем нашу конфигурацию в один шаблон, который можно легко адаптировать под простую архитектуру локальной сети:

 hostname ekb-tower-lan1

username admin password ****** privilege 15

username not_admin password ****** privilege 15

enable password level 15 ******

ip ssh server

banner login $

-----------------------------------------

----UNAUTHORIZED ACCESS IS PROHIBITED----

-----------------------------------------

$

banner exec $

--------------------------------------------------------------------

@@_____@@__________@@@@@@@__@@_____@@@@@@@_@@@@@@@_@@@___@@__@__@__@

@@__@__@@__________@@_______@@________@@___@@_______@@@_@@___@__@__@

@@_@@@____@@@@@@___@@_______@@________@@___@@_________@@@____@__@__@

@@__@_____@@@@_____@@@@@@@__@@________@@___@@@@@@@____@@@____@__@__@

@@__@_________@@___@@_______@@________@@___@@_______@@@_@@__________

@@__@@.____@@@@@___@@@@@@@__@@@@@@____@@___@@@@@@@_@@@___@@__@__@__@

--------------------------------------------------------------------

----------Switch is located in the Ekaterinburg, Malisheva 51-------

------------------------Server room on floor 13---------------------

------------------------------Daisy, Daisy--------------------------

----------------------------You are welcome!------------------------

--------------------------------------------------------------------

$

tacacs-server host 192.168.50.1 key ************

tacacs-server host 192.168.50.2 key ************ priority 1

aaa authentication enable default tacacs enable

aaa authentication login default tacacs local

aaa authentication login authorization default tacacs local

aaa accounting commands stop-only default tacacs

vlan database

vlan 10,15,99

interface vlan 15

description Management SVI

ip address 192.168.2.21 255.255.255.0

ip default-gateway 192.168.2.254

management access-list remote-access

permit ip-source 192.168.33.1 service ssh

permit ip-source 172.16.0.0 mask 255.255.255.240 service ssh

permit ip-source 10.0.0.1 service snmp

exit

management access-class remote-access

snmp-server server

snmp-server community ******** ro

clock timezone MSK +3

clock source sntp

sntp unicast client enable

sntp server 10.0.0.1

logging on

logging host 192.168.2.22

logging cli-commands

logging origin-id hostname

logging buffered informational

backup server tftp://10.0.0.1

backup path eltex/ekb-tower-lan1

backup write-memory

interface gigabitethernet1/0/1

description "Simple PC access"

switchport mode access

switchport access vlan 10

spanning-tree portfast

spanning-tree bpduguard enable                     

no lldp transmit

no lldp receive

interface gigabitethernet1/0/9

description "Link to CORE1 (192.168...)"

switchport mode trunk

switchport trunk allowed vlan add 10,15

switchport trunk native vlan 99

lldp optional-tlv port-desc sys-name sys-desc sys-cap

lldp management-address automatic

Пример базовой конфигурации для MES 23XX (я формировал ее на примере MES2308), использующей распространенные сервисы по обслуживанию сетей передачи данных, готов. Спасибо за внимание!

Комментарии (9)


  1. NickStanley
    02.09.2021 09:24

    тема BGP не раскрыта((((


    1. artemspitsyn
      02.09.2021 09:51

      BGP отдельно лицензируется на MES23xx, возможно, тут его и нет за ненадобностью ¯\_(ツ)_/¯


      1. Scruff_1
        02.09.2021 20:42

        Если "лицензируется" также как на циске - путём скачивания более навороченного Иоса с торрента, то девайс вполне даже норм.


      1. Jofa
        02.09.2021 20:42

        BGP есть, по лицензии


  1. Gaernebjorn
    03.09.2021 11:00

    Спасибо за статью

    Вот, ещё может быть полезным:

    backup server tftp://172.16.X.X 
    backup path sw_acc_123 
    backup write-memory 
    backup history enable

    Удобно, что при wri mem заодно автоматически сливает конфиг на tftp сервер

    backup path можно не указывать, тогда подставляется hostname, но в старых версиях был баг, переменная hostname инициализировалась после команды backup из-за чего backup write-memory игнорировалась при перезагрузке. Сейчас вроде поправили.


    1. sanhces7 Автор
      03.09.2021 14:36

      Спасибо, постараюсь протестировать и добавить в статью в течение нескольких дней


    1. sanhces7 Автор
      06.09.2021 11:18

      Внес в статью, спасибо!


  1. kterik
    19.09.2021 18:46

    защиту от BPDU без выключения порта при появлении постороннего коммутатора:

    switchport mode access

    switchport access vlan 10

    spanning-tree portfast

    spanning-tree bpdu filtering

    spanning-tree bpduguard enable 

    Прошу уточнить: такая конфигурация должна именно отключать порт при появлении постороннего коммутатора на порту вследствие срабатывания bpduguard, поскольку собственные BPDU элтекс в этот порт посылать будет. Чтобы не посылал, на порту надо сделать spanning-tree disable.


    1. sanhces7 Автор
      19.09.2021 18:49

      Спасибо, пасхалка найдена. Да, это на внимательность. STP на портах ни в коем случае отключать нельзя. Вы правы, моя конфигурация порт отключать не будет. Она будет дропать приходящие BPDU, но при этом продолжать обслуживать ethernet-кадры пользователей, и есть риск получить петлю. Убираю это из конфига, оставляю spanning-tree bpduguard enable 

      @kterik,спасибо, что прочитали!