Я думаю, что каждый цисколюб рано или поздно встречается с железкой, к которой он не знает пароля или сам установил и каким-то образом забыл 🙂
Если вы дошли хотя бы до уровня CCENT, вам должно быть известно такое понятие, как configuration register. Это 16-битный регистр, находящийся в NVRAM-е, ответственный за последовательность загрузки маршрутизатора. А именно — откуда и в каком порядке маршрутизатор будет загружать свою операционную системы и файл настроек. Его дефолтное значение — 2102. Третья его цифра отвечает за файл настроек, четвёртая — за ОС. Наша цель — заставить маршрутизатор проигнорировать файл настроек при загрузке (именно в нём и находятся пароли) и открыть нам доступ к privileged mode. Этого мы добиваемся путём изменения третьего числа регистра на «4».
Для этого подключаемся через консольный кабель к устройству, включаем его и смотрим на экран. Как только появляется надпись Self decompressing the image, а за ней побежали “решеточки” быстро жмем Ctrl+C (иногда Ctrl+Break).
System Bootstrap, Version 15.1(4)M4, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 2010 by cisco Systems, Inc. Total memory size = 512 MB - On-board = 512 MB, DIMM0 = 0 MB CISCO2911/K9 platform with 524288 Kbytes of main memory Main memory is configured to 72/-1(On-board/DIMM0) bit mode with ECC disabled Readonly ROMMON initialized program load complete, entry point: 0x80803000, size: 0x1b340 program load complete, entry point: 0x80803000, size: 0x1b340 IOS Image Load Test ___________________ Digitally Signed Release Software program load complete, entry point: 0x81000000, size: 0x3bcd3d8 Self decompressing the image : #################### monitor: command "boot" aborted due to user interrupt rommon 1 >
Если у нас появилась строка rommon 1 > значит мы все сделали правильно. Теперь мы в режиме ROM Monitor (rommon). Меняем значение регистра на 2142 командой confreg 0x2142 (не забываем, что число это — шестнадцатиричное) и перезагружаемся ещё раз командой reset.
Cisco CISCO2911/K9 (revision 1.0) with 491520K/32768K bytes of memory. Processor board ID FTX152400KS 3 Gigabit Ethernet interfaces DRAM configuration is 64 bits wide with parity disabled. 255K bytes of non-volatile configuration memory. 249856K bytes of ATA System CompactFlash 0 (Read/Write) --- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]:
После перезагрузки мы попадаем в режим setup mode (что означает, что маршрутизатор не подгрузил файл настроек, чего мы и добивались). Выходим из этого режима no и переходим в privileged mode – en.
Router>en
Router#
Теперь у нас есть полный доступ к настройкам маршрутизатора. Если вам дороги ваши настройки (которые всё ещё хранятся в startup-config), самое время их восстановить командой copy start run. Все пароли теперь в силе, но так как мы уже «внутри», тоесть имеем права на конфигурацию, нас этот пароль больше не спросят. Меняем все интересующие нас пароли на новые и сохраняем наши настройки в NVRAM.
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#line vty 0
Router(config-line)#password cisco
Router(config-line)#login
Router(config-line)#exit
Router(config)#li
Router(config)#li
Router(config)#lin
Router(config)#line con
Router(config)#line console 0
Router(config-line)#password cisco
Router(config-line)#login
Router(config-line)#exit
Router(config)#enable secret cisco
Router(config)#service password-encryption
Router(config)#end
%SYS-5-CONFIG_I: Configured from console by console
Router(config)#do wr
Building configuration...
[OK]
Меняем регистр на его прежнее значение командой config-register 0x2102 и перезагружаемся
Router(config)#config-register 0x2102
Router(config)#end
%SYS-5-CONFIG_I: Configured from console by console
Router#reload
System configuration has been modified. Save? [yes/no]:yes
Building configuration...
[OK]
Proceed with reload? [confirm]
Вот и все. Теперь мы можем зайти на роутер и делать, что нам нужно было 🙂