В этой заметке мы рассмотрим пример восстановления учётных записей по умолчанию для FC коммутатора Broadcom Brocade G620 с прошивкой Fabric OS (FOS) версии 8.2.
В качестве основного руководства к действию можно использовать документ Brocade Fabric OS Password Recovery Notes. Однако мне не удалось найти на сайте Broadcom данный документ под версию 8.2, которая залита в мои коммутаторы. Удалось лишь найти копию документа под версию 8.1 (53-1004413-01 от 16.02.2016). Указанный документ содержит инструкции по восстановлению учётных записей по умолчанию разными способами, да ещё и в зависимости от модели коммутатора. И как оказалось в ходе практического применения документа, шаги описанные в этой инструкции, изложены несколько сумбурно, что может создать проблемы в завершающей стадии процесса восстановления паролей. Поэтому и было решено написать данную заметку.
В нашем случае предполагается, что на коммутаторе не установлен пароль Boot PROM password и поэтому можно отталкиваться от последовательности шагов, описанной в разделе документа Password Recovery Using the Boot PROM Interface > Password recovery procedure for a Brocade G620 switch (стр.25).
Подключаемся к COM-порту и выключаем/включаем питание коммутатора. После включения коммутатора на подключенной консоли должен появиться вывод процедуры загрузки. Дожидаемся появления сообщения "Hit ESC to stop autoboot" с обратным 5-секундным отсчётом и нажимаем ESC.
В появившемся меню выбираем пункт 3 (Enter command shell).
Попадаем в приглашение командной строки (как ранее и отмечалось, предполагается что Boot PROM password не установлен и он на этом этапе не запрашивается), где выполняем команду вывода переменных окружения:
printenv
Запомним содержимое выделенного на скриншоте значения переменной bootargs, так как оно нам потребуются в дальнейшем.
Выполняем команду изменения строки переменной bootargs, добавив в конец строки опцию запуска в однопользовательском режиме (ключевое слово single):
setenv bootargs "root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 rootdelay=5 pcie_ports=native quiet single"
Затем выполняем команду сохранения настроек переменных в энергонезависимую память NVRAM и снова проверяем перечень переменных, чтобы убедиться в том, что ключевое слово single присутствует в переменной bootargs:
saveenv
printenv
Теперь вызываем команду загрузки с заданными настройками окружения:
boot
После того, как загрузка завершится и мы попадём в приглашение командной строки, используя команду mount перемонтируем корневой раздел / в режиме чтения/записи следующим образом:
mount -vo remount,rw,noatime /
Затем смонтируем раздел с FOS в каталог /mnt :
mount /dev/sda2 /mnt
Обратите внимание на примечание в документации о том, что если ранее в выводе printenv в переменной prt было указано значение 1, то монтировать следует раздел sda2 (как в нашем примере). Если же переменная prt была ровна 2, то монтировать следует раздел sda1.
После того, как раздел с FOS смонтирован, вызываем команду сброса паролей учётных записей до заводского состояния:
/sbin/passwddefault
В ходе выполнения команды сброса паролей мы можем получить несколько ошибок вида "Raslog Module Initialization failed rc=-1", "fabsys device open: No such device or address". В документации сказано, что данные ошибки в этой ситуации могут быть проигнорированы. Ключевым моментом здесь является то, чтобы мы получили сообщение об успешном сбросе паролей вида "All account passwords have been successfully set to factory default.".
Далее, если следовать шагам документации, предлагается сразу изменить переменные загрузчика командой setenv. Однако здесь мы словим ошибку, сообщающую об отсутствии такой команды:
Чтобы решить эту проблему, отправим устройство в перезагрузку:
reboot -f
Следует понимать, что сейчас устройство сконфигурировано в режим однопользовательской загрузки и его обычная загрузка FOS работать не будет. Поэтому в ходе повторной загрузки мы снова на этапе появления сообщения "Hit ESC to stop autoboot" нажимаем ESC, а затем в появившемся меню снова выбираем пункт 3 (Enter command shell).
Теперь, по аналогии с тем, как мы это делали ранее, проверим переменные окружения командой printenv, командой setenv поменяем значение переменной bootargs (вернём её значение в первоначальное состояние, убрав с конца строки ключевое слово single), а затем командой saveenv сохраним переменные
printenv
setenv bootargs "root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 rootdelay=5 pcie_ports=native quiet"
saveenv
printenv
Теперь остаётся выполнить команду загрузки системы:
boot
После того, как FOS загрузится в своём обычном режиме, входим с учётными данными по умолчанию:
имя пользователя - admin
пароль – password
FOS тут же предложит нам сменить учётные данные для учетных записей admin и user. Зададим свои пароли для этих учетных записей.
После этого можем выполнить logout и проверить вход в FOS уже с установленными нами учетными данными.
Все проверил на 620-ом, все работает. Спасибо ! Fos 8.2.x
Добрый день, как сбросить сей девайс к заводским настройкам, если не возможно зайти админовской учеткой.
Никак, да и не нужно это. Сбрасывайте все пароли на дефолтные по инструкции выше и ко всем настройкам получите доступ. Успехов!
Спасибо автору за отличную статью! Удалось победить Lenovo DB620S по описанной схеме.
Купли 2 коммутатора Brocade G610. Один оказался новый с FOS 9.2.0a и ни каких проблем. Второй оказался подержанным с FOS 9.0.1 с установленным каким-то паролем. С помощью этой статьи удалось сбросить пароль по умолчанию. Спасибо автору.
А если установлен boot prom pswd, то шансов нет?