Отключение ненужных служб перед сдачей: Telnet, HTTP, LLDP-MED, UPnP на MikroTik и Eltex

Отключение ненужных служб перед сдачей: Telnet, HTTP, LLDP-MED, UPnP на MikroTik и Eltex

  • Ноя, 07, 2025
Отключение ненужных служб перед сдачей: Telnet, HTTP, LLDP-MED, UPnP на MikroTik и Eltex
Почему это критично? По статистике CERT и ФСТЭК, более 60% первичных взломов сетевого оборудования происходят через неотключённые сервисы по умолчанию: Telnet без пароля, веб-интерфейс с admin/admin, UPnP с уязвимостями. Отключение — не опция, а обязательный этап сдачи.

Список служб, которые необходимо отключить перед передачей заказчику

Telnet — передаёт логин/пароль в открытом виде; отсутствует шифрование; используется ботнетами для сканирования.
HTTP (веб-интерфейс без HTTPS) — куки и сессии перехватываются сниффером; уязвим к MITM-атакам.
UPnP — автоматически открывает порты из локальной сети; использовался в атаках на камеры и роутеры (например, Mirai).
LLDP-MED — раскрывает топологию сети, модели устройств, VLAN’ы; полезно для атакующего при разведке.
SNMPv1/v2c без community-фильтрации — позволяет читать конфигурацию, таблицы MAC, статистику трафика.

Отключение на MikroTik (RouterOS v6 / v7)

Все команды выполняются в терминале (WinBox → Terminal или SSH).

1. Telnet

/ip service set telnet disabled=yes

Проверка:

/ip service print where name=telnet

В колонке disabled должно быть yes.

2. HTTP (оставляем только HTTPS)

/ip service set www disabled=yes
/ip service set api disabled=yes      # REST API без SSL — тоже опасен
/ip service set api-ssl disabled=no  # API только по HTTPS
Важно: не отключайте www-ssl — он нужен для WinBox (подключается через HTTPS-порт 8291).

3. UPnP

/ip upnp set enabled=no

Если ранее настраивался UPnP NAT, удалите правила:

/ip firewall nat remove [find comment~"UPnP"]

4. LLDP (включая LLDP-MED)

/lldp set enabled=no

Если LLDP включён на отдельных интерфейсах — отключите явно:

/interface ethernet set ether1,ether2 lldp=disabled

5. SNMP (если не используется)

/snmp set enabled=no

Если SNMP нужен — разрешите только v3 и ограничьте IP-адресами мониторинга:

/snmp set enabled=yes
/snmp community add name=secure_ro addresses=192.168.10.5/32 authentication-password=StrongPass123 encryption-password=CryptoKey456

Отключение на коммутаторах Eltex (MES2300/3500, прошивка 3.x+)

Настройка через CLI (консоль или SSH). Вход: логин admin, пароль — по умолчанию пустой.

1. Telnet

(config)# no ip telnet server

2. HTTP

(config)# no ip http server
(config)# ip http secure-server  # только HTTPS

3. UPnP

В большинстве L2/L3-коммутаторов Eltex UPnP не поддерживается, но проверьте:

# show running-config | include upnp

Если вывод не пуст — отключите через GUI или обратитесь к документации на конкретную прошивку.

4. LLDP и LLDP-MED

(config)# no lldp run
(config)# no lldp med

Проверка:

# show lldp

Вывод должен быть: LLDP is not enabled.

5. SNMP

(config)# no snmp-server community public ro
(config)# no snmp-server community private rw
(config)# snmp-server community SECURE-RO ro ip access-list SNMP-ACL

Где SNMP-ACL — список разрешённых IP:

(config)# ip access-list standard SNMP-ACL
(config-std-nacl)# permit 192.168.10.5
(config-std-nacl)# deny any

Дополнительно: что ещё проверить перед сдачей

  • Заводские пароли — сменили ли вы пароль у admin на всех устройствах?
  • Учётные записи по умолчанию — на Eltex удалите пользователя user (он есть в некоторых прошивках);
  • FTP/TFTP серверы — отключите: /ip service set ftp disabled=yes;
  • WinBox/MAC-сервер — если не используется, отключите: /ip service set winbox disabled=yes;
  • Discovery-протоколы — CDP, MNDP, NDP: /ip neighbor discovery-settings set discover-interface-list=none.

Автоматизация: скрипт для массовой проверки

Сохраните как audit.rsc и запустите на роутере:

:put "=== Проверка критичных сервисов ==="
:if ([/ip service get telnet disabled] = "no") do={ :put "❗ Telnet включён!" }
:if ([/ip service get www disabled] = "no") do={ :put "❗ HTTP включён!" }
:if ([/ip service get api disabled] = "no") do={ :put "❗ API (незащищённый) включён!" }
:if ([/ip upnp get enabled] = "yes") do={ :put "❗ UPnP включён!" }
:if ([/lldp get enabled] = "yes") do={ :put "❗ LLDP включён!" }
:if ([/snmp get enabled] = "yes") do={ 
    :local comm [/snmp community find]
    :if ($comm = "") do={ :put "⚠ SNMP включён без community" }
}
:put "=== Проверка завершена ==="
Данная статья носит исключительно информационный и методический характер. Она не является официальным руководством пользователя, технической документацией или рекомендацией производителя. Все описанные процедуры основаны на практическом опыте и могут потребовать адаптации под конкретную конфигурацию оборудования, версию программного обеспечения или условия эксплуатации. Автор и издатель не несут ответственности за последствия применения приведённых инструкций.