Блог "Дети ОИТа"
/поиск

Джамп-доступ между Huawei-коммутаторами при уже существующей конфигурации

## Шаг 1. Зафиксировать вводные Сценарий: коммутатор уже был настроен до тебя.

Шаг 1. Зафиксировать вводные

Сценарий: коммутатор уже был настроен до тебя. Неизвестно, включены ли SSH/STelnet, Telnet, ACL на VTY, AAA, локальные пользователи и source-интерфейсы.

Цель:

  • сначала попробовать подключиться без изменений;
  • не ломать чужую рабочую конфигурацию;
  • диагностировать проблему по фактическому симптому;
  • вносить только минимальные точечные правки.
    Пример:
Устройство Роль IP
SW-A Текущий коммутатор, с которого прыгаем дальше 10.10.10.1
SW-B Целевой коммутатор 10.10.10.2

Перед применением замени IP-адреса и имена устройств на рабочие значения из схемы сети.

Шаг 2. Проверить, есть ли сосед по LLDP

На SW-A:

<SW-A> display lldp neighbor brief
<SW-A> display lldp neighbor interface GigabitEthernet0/0/24 verbose

display lldp neighbor brief показывает краткую информацию о соседних устройствах.
display lldp neighbor interface ... verbose показывает подробную информацию о соседе на конкретном порту.
LLDP не дает доступ в CLI. Он помогает понять, на какой коммутатор и порт фактически ведет линк.

Шаг 3. Сразу попробовать STelnet на целевой коммутатор

На SW-A:

<SW-A> stelnet 10.10.10.2

stelnet запускает SSH/STelnet-клиент и пытается подключиться к удаленному SSH/STelnet-серверу.
Если появилось приглашение логина:

Username:
Password:

Значит IP-связность, TCP/22, STelnet-сервер и VTY в целом работают. Дальше проблема может быть только в учетной записи, пароле, правах или service-type пользователя.

Шаг 4. Если STelnet ругается на первый ключ сервера

Включи первичное принятие ключа SSH-сервера на SW-A:

<SW-A> system-view
[SW-A] ssh client first-time enable
[SW-A] quit
<SW-A> stelnet 10.10.10.2

system-view переводит CLI из пользовательского режима в режим системной конфигурации.
ssh client first-time enable разрешает SSH-клиенту принять ключ сервера при первом подключении.
Если политика безопасности строгая, лучше не включать первичное принятие ключа вслепую, а сверить и заранее назначить ключ сервера.

Шаг 5. Попробовать STelnet с явным source IP

Если на целевом коммутаторе стоит ACL, он может разрешать только конкретный source IP.

<SW-A> stelnet -a 10.10.10.1 10.10.10.2

-a задает исходный IP-адрес клиента.
Используй IP management-интерфейса или Vlanif, который должен быть разрешен на целевом SW-B.

Шаг 6. Проверить IP-связность

Если STelnet не доходит до логина:

<SW-A> ping 10.10.10.2
<SW-A> tracert 10.10.10.2

ping проверяет базовую IP-доступность.
tracert показывает маршрут до целевого IP.
Если ping не проходит:

  • проверь правильность IP-адреса;
  • проверь management VLAN;
  • проверь маршруты;
  • проверь ACL на промежуточных устройствах;
  • проверь, не используется ли отдельный VPN-instance/VRF;
  • проверь, существует ли Vlanif или management-интерфейс на целевом устройстве.

Шаг 7. Попробовать Telnet только как проверку существующей конфигурации

Если сеть старая, на целевом коммутаторе может быть включен только Telnet.

<SW-A> telnet 10.10.10.2

telnet запускает Telnet-клиент и пытается подключиться к удаленному Telnet-серверу.
Если нужно явно указать source IP:

<SW-A> telnet -a 10.10.10.1 10.10.10.2

Telnet используй только для проверки или аварийного входа в изолированной management-сети. Пароли и данные в Telnet не защищены.

Шаг 8. Разобрать симптом первичной попытки

Симптом Вероятная причина Следующий шаг
ping не проходит Нет IP-связности Проверить VLAN, IP, routing, ACL, VRF
ping проходит, STelnet timeout SSH/STelnet закрыт, ACL блокирует TCP/22, неправильный source IP Проверить source IP, ACL, SSH server status
STelnet сразу connection refused STelnet server выключен или порт SSH не слушает Проверить display ssh server status на цели
Появился Username, но логин не проходит Неверный пользователь, пароль, AAA, service-type Проверить AAA и SSH-user
Логин проходит, но прав мало Недостаточный privilege level Проверить local-user или AAA-authorize
Telnet работает, STelnet нет Старая конфигурация только под Telnet Планово включить STelnet и перевести VTY на SSH
STelnet работал, потом перестал после ошибок пароля IP мог попасть в block-лист SSH Проверить SSH ip-block

Шаг 9. Если удалось войти на SW-B

Сразу посмотри текущую картину, не меняя конфигурацию:

<SW-B> display ssh server status
<SW-B> display ssh user-information
<SW-B> display users
<SW-B> display current-configuration configuration user-interface

display ssh server status показывает состояние SSH/STelnet-сервера.
display ssh user-information показывает SSH-пользователей и их service-type.
display users показывает текущие активные сессии.
display current-configuration configuration user-interface показывает конфигурацию VTY/Console/AUX.
Проверь:

  • включен ли STelnet server;
  • какая версия SSH используется;
  • какие VTY-линии заняты;
  • какой protocol inbound настроен на VTY;
  • какая authentication-mode настроена на VTY;
  • есть ли ACL на VTY;
  • есть ли нужный SSH-пользователь;
  • разрешен ли пользователю service-type stelnet.

Шаг 10. Проверить Telnet-сервер на SW-B

Если подозреваешь, что устройство живет на Telnet:

<SW-B> display telnet server status
<SW-B> display current-configuration | include telnet

display telnet server status показывает состояние Telnet-сервера.
display current-configuration | include telnet ищет строки конфигурации, связанные с Telnet.
Если Telnet включен в рабочей сети, зафиксируй это как риск и планируй перевод на STelnet.

Шаг 11. Проверить VTY и лимиты сессий

<SW-B> display user-interface maximum-vty
<SW-B> display user-interface vty 0 14 summary
<SW-B> display users all

display user-interface maximum-vty показывает максимальное количество VTY-сессий.
display user-interface vty ... summary показывает состояние VTY-линий.
display users all показывает всех пользователей и занятые пользовательские интерфейсы.
Если все VTY заняты, новый вход может не открыться даже при корректной настройке SSH.

Шаг 12. Проверить ошибки SSH на SW-B

<SW-B> display ssh server error
<SW-B> display ssh server session
<SW-B> display ssh server ip-block all

display ssh server error показывает ошибки SSH-логина.
display ssh server session показывает активные SSH-сессии.
display ssh server ip-block all показывает IP-адреса, заблокированные после неудачных попыток аутентификации.
Если IP джамп-коммутатора заблокирован из-за ошибок пароля, разблокируй его только после проверки причины:

<SW-B> activate ssh server ip-block ip-address 10.10.10.1

activate ssh server ip-block ip-address снимает временную блокировку с указанного IP-адреса.

Шаг 13. Проверить AAA и локальных пользователей

<SW-B> display aaa local-user
<SW-B> display current-configuration configuration aaa

display aaa local-user показывает локальных пользователей AAA.
display current-configuration configuration aaa показывает AAA-конфигурацию.
Проверь:

  • существует ли нужный пользователь;
  • разрешен ли ему service-type ssh;
  • достаточный ли privilege level;
  • не используется ли домен AAA;
  • не уходит ли аутентификация на RADIUS/TACACS+;
  • доступен ли внешний AAA-сервер.

Шаг 14. Проверить VTY ACL

<SW-B> display current-configuration configuration user-interface
<SW-B> display acl all

display acl all показывает настроенные ACL.
Если на VTY привязан ACL, проверь, разрешен ли source IP SW-A.
Типовая проблема:

  • с рабочей станции администратора вход есть;
  • с другого коммутатора входа нет;
  • причина — ACL разрешает подсеть администраторов, но не management IP джамп-коммутатора.

Шаг 15. Минимально включить STelnet, если он выключен

Делай это только если есть право менять конфигурацию и понятен текущий доступ.
На SW-B:

<SW-B> system-view
[SW-B] rsa local-key-pair create
[SW-B] stelnet server enable

rsa local-key-pair create создает локальную RSA-пару ключей.
stelnet server enable включает STelnet-сервер.
Если ключи уже существуют, устройство сообщит об этом или предложит перегенерацию. Не перегенерируй ключи без необходимости: это может повлиять на доверие клиентов к SSH-серверу.

Шаг 16. Минимально разрешить SSH на VTY

Если VTY принимает только Telnet:

[SW-B] user-interface vty 0 14
[SW-B-ui-vty0-14] authentication-mode aaa
[SW-B-ui-vty0-14] protocol inbound ssh
[SW-B-ui-vty0-14] quit

user-interface vty открывает настройки удаленных терминальных линий.
authentication-mode aaa включает AAA-аутентификацию на VTY.
protocol inbound ssh разрешает на VTY только SSH/STelnet.
Если нельзя сразу отключать Telnet из-за риска потерять доступ, временно используй:

[SW-B-ui-vty0-14] protocol inbound all

protocol inbound all разрешает и SSH, и Telnet. Это временный переходный режим, не финальное состояние.

Шаг 17. Минимально добавить SSH-пользователя

Если локальный пользователь есть, но SSH-user не настроен:

[SW-B] ssh user netadmin
[SW-B] ssh user netadmin authentication-type password
[SW-B] ssh user netadmin service-type stelnet

ssh user создает или изменяет SSH-пользователя.
ssh user authentication-type password задает парольную аутентификацию.
ssh user service-type stelnet разрешает пользователю STelnet.
Если локального пользователя нет:

[SW-B] aaa
[SW-B-aaa] local-user netadmin password irreversible-cipher <STRONG_PASSWORD>
[SW-B-aaa] local-user netadmin privilege level 15
[SW-B-aaa] local-user netadmin service-type ssh
[SW-B-aaa] quit

Не создавай общую учетку без согласования. В корпоративной сети лучше использовать персональные учетные записи или внешний AAA.

Шаг 18. Минимально поправить VTY ACL

Если ACL блокирует SW-A, добавь только нужный source IP:

[SW-B] acl 2000
[SW-B-acl-basic-2000] rule permit source 10.10.10.1 0
[SW-B-acl-basic-2000] quit

Не удаляй существующие deny/permit без понимания политики. Добавляй точечное разрешение для management IP джамп-коммутатора.

Шаг 19. Повторить попытку подключения

На SW-A:

<SW-A> stelnet -a 10.10.10.1 10.10.10.2

Если вход прошел:

  • проверь имя устройства в приглашении CLI;
  • выполни только нужные команды;
  • выйди через quit;
  • сохрани изменения только после проверки, что доступ не потерян.

Шаг 20. Сохранить конфигурацию только после проверки

На SW-B:

[SW-B] save

save сохраняет текущую конфигурацию в startup-конфигурацию.
Перед save проверь:

  • текущая STelnet-сессия работает;
  • новый вход с SW-A работает;
  • старый способ аварийного доступа не потерян до завершения работ;
  • VTY ACL не отрезает администраторов;
  • Telnet отключен или оставлен только временно по согласованной причине.

Шаг 21. Отключить Telnet после миграции на STelnet

Если STelnet уже проверен:

[SW-B] undo telnet server enable
[SW-B] user-interface vty 0 14
[SW-B-ui-vty0-14] protocol inbound ssh
[SW-B-ui-vty0-14] quit
[SW-B] save

undo telnet server enable выключает Telnet-сервер.
Финальное корпоративное состояние: удаленный CLI-доступ только через SSH/STelnet.

Быстрый порядок действий

display lldp neighbor brief
stelnet 10.10.10.2
system-view
ssh client first-time enable
quit
stelnet 10.10.10.2
stelnet -a 10.10.10.1 10.10.10.2
ping 10.10.10.2
tracert 10.10.10.2
telnet 10.10.10.2

Если одна из попыток дала вход, дальше диагностируй целевой коммутатор изнутри.

Диагностика на целевом коммутаторе

display ssh server status
display ssh user-information
display ssh server error
display ssh server session
display ssh server ip-block all
display telnet server status
display users all
display user-interface maximum-vty
display user-interface vty 0 14 summary
display aaa local-user
display current-configuration configuration user-interface
display current-configuration configuration aaa
display acl all

Контрольный чек-лист

Проверка Норма
Сначала выполнена попытка STelnet без изменений Да
Проверена попытка STelnet с явным source IP Да
Telnet использован только как проверка старой конфигурации Да
IP-связность проверена через ping и tracert Да
На целевом устройстве проверен display ssh server status Да
Проверены VTY, AAA, SSH-user и ACL Да
Правки вносились точечно Да
Telnet после миграции отключен Да
Новый STelnet-вход проверен перед save Да
Конфигурация сохранена только после проверки доступа Да