Сегодня мы поговорим о восстановлении паролей роутеров и свитчей, обновлении, переустановке и восстановлении IOS и о системе лицензирования Cisco для операционной системы IOSv15. Это очень важные темы, касающиеся управления сетевыми устройствами.
Как можно восстановить пароль? Вы можете спросить, зачем это может понадобиться. Предположим, вы настроили устройство и установили все нужные пароли: на VTY, на консоль, на привилегированный режим, на подключение Telnet и SSH, а затем забыли эти пароли. Возможно, что сотрудник компании, который их установил, уволился и не передал вам записи, или вы купили роутер на eBay и не знаете пароли, который установил бывший хозяин, поэтому не можете получить доступ к устройству.
В таких ситуациях следует применить «хакерские» приемы. Вы взламываете устройство Cisco и переустанавливаете пароли, но это не настоящее хакерство, если устройство принадлежит вам. Для этого нужны три вещи: прерывающая последовательность Break Sequence, регистр конфигурации и перезагрузка системы.
Вы пользуетесь выключателем, отключаете питание роутера и тут же включаете его, чтобы роутер начал перезагрузку, «цисководы» называют это словом «bouncing». В момент распаковки образа IOS нужно применить прерывание загрузки, то есть подключиться к устройству через консольный порт и запустить Break Sequence. Комбинация клавиш, которой запускается Break Sequence, зависит от программы эмуляции терминала, которую вы используете, то есть для Hyperterminal прерывание загрузки осуществляется одним сочетанием, для SequreSRT – другим. Под данным видео я привожу ссылку www.cisco.com/c/en/us/support/docs/routers/10000-series-routers/12818-61.html, где можно ознакомиться со всеми сочетаниями клавиш для разных эмуляторов терминалов, разной совместимости и разных операционных систем.
При использовании прерывания загрузки роутер запустится в режиме ROMmon. ROMmon аналогична BIOS компьютера, это элементарная базовая ОС, которая позволяет выполнять основные сервисные команды. В этом режиме можно воспользоваться регистром конфигурации. Как известно, в процессе загрузки система проверяет наличие загрузочных настроек, и если их нет, загружается с настройками по умолчанию.
В норме значение регистра конфигурации роутера равно 0х2102, что означает запуск загрузочной конфигурации. Если изменить это значение на 0х2142, то во время Break Sequence загрузочная конфигурация будет проигнорирована, так как система не обратит внимания на содержимое энергонезависимой памяти NVRAM, и загрузится конфигурация по умолчанию, соответствующая настройкам роутера «из коробки».
Таким образом, для загрузки с настройками по умолчанию нужно изменить значение регистра конфигурации на 0х2142, что буквально говорит устройству: «пожалуйста, при любой загрузке игнорируйте загрузочную конфигурацию!». Так как эта конфигурация содержит все пароли, то загружаясь с настройками по умолчанию, вы получаете свободный доступ к привилегированному режиму. В этом режиме вы можете переустановить пароли, сохранить внесенные изменения, перезагрузить систему и получить полный контроль над устройством.
Сейчас я запущу Packet Tracer и покажу то, о чем только что рассказал. Вы видите топологию сети, состоящую из роутера, в котором нужно переустановить пароли, свитча и ноутбука. Во всех видеоуроках я кликал по иконке устройства в Packet Tracer, заходил на вкладку консоли CLI и настраивал устройство. Сейчас я хочу поступить по-другому и показать, как это делается на реальном устройстве.
Я соединю серийный порт ноутбука RS-232 консольным кабелем с консольным портом роутера, в программе это кабель голубого цвета. Мне не нужно настраивать никаких IP-адресов, потому что для связи с консольным портом роутера они не нужны.
В ноутбуке я захожу на вкладку Terminal и проверяю параметры: скорость передачи 9600 б/с, информационных битов – 8, без четности, стоповых битов – 1, контроль потока – нет, а затем нажимаю кнопку ОК, что дает мне доступ к консоли роутера. Если сравнить информацию в обоих окнах – CLI роутера R0 и на экране ноутбука Laptop0, она будет совершенно одинаковой.
Packet Tracer позволяет проделывать подобные вещи, но на практике мы не станем использовать окно консоли роутера CLI, а будем работать только через терминал компьютера.
Итак, у нас есть роутер, на котором необходимо сбросить пароль. Вы заходите в терминал ноутбука, проверяете параметры, заходите в панель настройки роутера и видите, что доступ заблокирован паролем! Как же туда попасть?
Я перехожу к роутеру, на вкладку, где он показан как физическое устройство, щелкаю по выключателю питания и сразу же включаю его снова. Вы видите, что в окне терминала появилось сообщение о самораспаковке образа ОС. В этот момент вы должны использовать комбинацию клавиш Ctrl+C, она применяется для перехода в режим rommon в программе Packet Tracer. Если вы вошли через Hyperterminal, то нужно нажать Ctrl+Break.
Вы видите, что на экране появилась строка с заголовком rommon 1, и если ввести знак вопроса, то дальше система выдаст ряд подсказок, какие команды можно использовать в данном режиме.
Параметр boot запускает внутренний процесс загрузки, confreg запускает утилиту настройки регистра, и нас интересует именно эта команда. Я набираю в строке терминала confreg 0х2142. Это означает, что при перезагрузке информация, хранящаяся во флеш-памяти NVRAM, будет проигнорирована и роутер загрузится с настройками по умолчанию, как совершенно новое устройство. Если бы я набрал команду confreg 0х2102, то роутер использовал бы последние сохраненные параметры загрузки.
Далее командой reset я перезагружаю систему. Как видите, после её загрузки вместо предложения ввести пароль, как в прошлый раз, система просто спрашивает, намерен ли я продолжить настроечный диалог. Сейчас перед нами роутер с настройками по умолчанию, без всякой пользовательской конфигурации.
Я ввожу no, затем команду enter и перехожу из пользовательского режима в привилегированный режим. Так как я хочу просмотреть конфигурацию загрузки, то использую команду show startup-config. Вы видите имя хоста NwKing router, приветственный баннер и пароль на консоль «console». Сейчас я знаю этот пароль и могу его скопировать, чтобы не забыть, или же могу его поменять на другой.
Что мне нужно в первую очередь – это загрузить конфигурацию запуска в текущую конфигурацию роутера. Для этого я использую команду copy startup-config running-config. Теперь нашей текущей конфигурацией стала предыдущая конфигурация роутера. Вы видите, что после этого имя роутера в командной строке поменялось с Router на NwKingRouter. С помощью команды show run можно просмотреть текущую конфигурацию устройства, где видно, что пароль на консоль – это слово «console», мы не использовали enable password, это правильно. Вам нужно помнить, что восстановление «убивает» привилегированный режим и вы снова оказываетесь в пользовательском режиме командной строки.
Мы все еще можем внести изменения в реестр, и если бы пароль был секретным, то есть была бы использована функция enable secret, очевидно, вы не смогли бы его расшифровать, так что можно вернуться в режим глобальной конфигурации командой config t и установить новый пароль. Для этого я набираю команду enable secret enable или могу использовать любое другое слово в качестве пароля. Если набрать show run, вы увидите, что функция enable secret включена, пароль теперь выглядит не как слово «enable», а как строка из зашифрованных символов и вы можете не беспокоится о безопасности, потому что только что сами установили и зашифровали новый пароль.
Вот каким образом можно произвести восстановление пароля роутера. Обратите внимание на одну важную вещь: если ввести команду «показать версию» show version, вы увидите, что значение регистра конфигурации равно 0х2142. Это означает, что даже если я использую команду copy running to startup и перегружу роутер, то система снова загрузит настройки по умолчанию, то есть роутер вернется к заводским настройкам. Нам это совершенно не нужно, потому что мы переустановили пароль, получили контроль над устройством и хотим использовать его в рабочем режиме.
Поэтому нужно войти в режим глобальной конфигурации Router(config)# и ввести команду config-register 0x2102 и только после этого использовать команду для копирования текущей конфигурации в загрузку copy run start. Скопировать текущие настройки в загрузочную конфигурацию также можно с помощью команды write. Если теперь набрать show version, вы увидите, что значение регистра конфигурации сенйчас равно 0х2102, причем система сообщает, что изменения вступят в силу при следующей перезагрузке роутера.
Поэтому мы инициируем перезагрузку командой reload, система перегружается, и сейчас мы имеем все файлы конфигурации, все настройки и знаем все пароли. Вот таким образом осуществляется восстановление паролей роутера.
Давайте рассмотрим, как осуществить эту же процедуру для свитча. У роутера есть выключатель, позволяющий отключить и снова включить питание, а у свитча Cisco такого выключателя нет. Мы должны подсоединиться к консольному порту консольным кабелем, затем отсоединить кабель питания сзади свитча, через 10-15 с вставить его обратно и сразу нажать и удерживать кнопку MODE в течение 3-х с. Это автоматически переведет свитч в режим ROMmon. В этом режиме вы должны инициализировать файловую систему на флэше и переименовать файл config.text, например, на config.text.old. Если его просто удалить, то свитч «забудет» не только пароли, но и все предыдущие настройки. После этого вы перегружаете систему.
Что при этом происходит со свитчем? В момент перезагрузки он обращается к файлу конфигурации config.text. Если он не находит этот файл во флэш-памяти устройства, то загружает IOS с настройками по умолчанию. В этом заключается разница: в роутере вы должны изменить настройку регистра, а в свитче достаточно просто поменять имя загрузочного файла настроек. Рассмотрим, как это происходит в программе Packet Tracer. На этот раз я присоединяю ноутбук консольным кабелем к консольному порту свитча.
Мы не пользуемся консолью CLI свитча, а моделируем ситуацию, когда к настройкам свитча можно добраться только с помощью ноутбука. Я использую те же настройки терминала ноутбука, что и в случае с роутером, и нажав «Ввод», подключаюсь к консольному порту свитча.
В Packet Tracer я не могу отключить и включить кабель питания, как это делается с физическим устройством. Если бы у меня был пароль на консоль, я смог бы перегрузить свитч, поэтому я ввожу команду enable password enable для назначения локального пароля доступа в привилегированный режим консоли.
Теперь если я зайду в настройки, то увижу, что система запрашивает пароль, которого я не знаю. Значит, необходимо инициировать перезагрузку системы. Как видите, система не воспринимает команду reload, которая поступила с устройства пользователя в пользовательском режиме, поэтому я должен использовать привилегированный режим. Как я сказал, в реальной жизни я просто бы отключил на несколько секунд кабель электропитания свитча, чтобы вызвать перезагрузку, но поскольку в программе это сделать невозможно, я должен удалить пароль и перезагрузиться прямо отсюда. Вы понимаете, зачем я это делаю, правильно?
Итак, я перехожу с вкладки CLI на вкладку «Физическое устройство», и когда устройство начинает перезагрузку, я удерживаю виртуальную кнопку MODE в течение 3-х секунд и захожу в режим ROMmon. Вы видите, что информация в окне CLI свитча такая же как, и в окне на экране ноутбука. Я перехожу к ноутбуку, в окне которого отображается режим ROMmon свитча, и ввожу команду flash_init. Эта команда инициализирует файловую систему на флэше, после чего я ввожу команду dir_flash, чтобы просмотреть содержимое флэш-памяти.
Здесь расположены два файла – файл операционной системы IOS с расширением .bin и файл config.text, который мы должны переименовать. Для этого я использую команду rename flash:config.text flash:config.old. Если теперь использовать команду dir_flash, можно увидеть, что файл config.text был переименован в config.old.
Теперь я ввожу команду reset, свитч перезагружается и после загрузки системы переходит к настройкам по умолчанию. Об этом свидетельствует изменение имени устройства в командной строке с NwKingSwitch на просто Switch. В реальном устройстве существует команда rename, но в Packet Tracer ей нельзя воспользоваться. Поэтому я применяю show running conf, как видите, свитч использует все настройки по умолчанию, и ввожу команду more flash:config.old. Вот в чем заключается взлом: вы должны просто скопировать текущую конфигурацию устройства, отображаемую на экране, перейти в режим глобальной конфигурации и вставить скопированную информацию. В идеале у нас копируются абсолютно все настройки, и вы видите, что имя устройства поменялось и свитч перешел к обычному режиму работы.
Теперь остается скопировать текущую конфигурацию в загрузочную конфигурацию, то есть создать новый файл config.text. Самый простой способ – просто переименовать старый файл обратно в config.text, то есть скопировать содержимое config.old в текущую конфигурацию и затем сохранить её как config.text. Вот так производится восстановление пароля свитча.
Теперь мы рассмотрим, как выполнять резервное копирование и восстановление операционной системы Cisco IOS. Резервное копирование заключается в копировании образа IOS на TFTP-сервер. Далее я расскажу, как перенести файл образа системы с этого сервера на ваше устройство. Третья тема – это восстановление системы в режиме ROMmon. Это может понадобиться, если ваш коллега случайно удалил IOS и система перестала загружаться.
Мы рассмотрим, как получить файл системы с TFTP-сервера в режиме ROMmod. Для этого существует 2 способа, одним из них является xmodem. Packet Tracer не поддерживает xmodem, поэтому я коротко расскажу, что это такое, а затем покажу с помощью Packet Tracer, как используется второй способ – восстановление системы через TFTP.
На схеме изображено устройство Router0, которому присвоен IP-адрес 10.1.1.1. Этот роутер соединен с сервером с IP-адресом 10.1.1.10. Я забыл присвоить адрес роутеру, так что сейчас быстро это сделаю. Наш роутер не подсоединен к ноутбуку, поэтому программа не дает возможность использовать консоль CLI, и мне придется это исправить.
Я соединяю ноутбук с роутером консольным кабелем, система запрашивает пароль на консоль, и я использую слово console. В режиме глобальной конфигурации я присваиваю интерфейсу f0/0 нужный IP-адрес и маску подсети 255.255.255.0 и добавляю команду no shutdown.
Далее я набираю команду show flash и вижу, что в памяти расположены 3 файла. Файл под номером 3 самый важный, это файл IOS роутера. Сейчас нужно настроить TFTP-сервер, поэтому я кликаю по иконке устройства Server0 и открываю вкладку SERVICES. Мы видим, что TFTP–сервер включен и на нем содержаться файлы множества операционных систем Cisco, в том числе IOS для нашего роутера с1841 – это третий по порядку файл в перечне. Мне нужно удалить его с сервера, потому что я собираюсь скопировать сюда другой файл IOS с нашего роутера Router0. Для этого я выделяю файл и нажимаю Remove file, а затем перехожу на вкладку консоли ноутбука.
Находясь в консоли роутера, я ввожу команду copy flash tftp <имя файла источника> <адрес/имя хоста назначения>, затем копирую и вставляю имя файла операционной системы.
Далее в команде нужно указать адрес или имя удаленного хоста, на который следует скопировать данный файл. Так же, как и при сохранении загрузочной конфигурации роутера, здесь нужно проявить внимательность. Если вы по ошибке скопируете не текущую конфигурацию в загрузочную, а наоборот, загрузочную в текущую, то после перезагрузки устройства утратите все сделанные настройки. Точно также в данном случае нельзя путать источник и назначение. Итак, сначала мы указываем имя файла, который нужно скопировать на сервер, а затем IP-адрес этого сервера 10.1.1.10.
Вы видите, что начался перенос файла, и если посмотреть на список файлов TFTP видно, что вместо удаленного файла здесь появился новый файл IOS нашего роутера. Вот таким образом осуществляется копирование IOS на сервер.
Теперь мы возвращаемся к окну настроек роутера на экране ноутбука и вводим команду copy tftp flash, указываем адрес удаленного хоста 10.1.1.10 и имя файла источника Source filename, то есть ту IOS, которую нужно скопировать во флэш роутера: с1841-ipbase-mz.123-14.T7.bin. Далее указывается имя файла назначения Destination filename, которое в нашем случае будет точно таким же, как имя источника. После этого я нажимаю «Ввод», и новый файл IOS копируется во флэш-память роутера. Вы видите, что теперь у нас есть два файла операционной системы: новый под номером 3 и предыдущий оригинальный под номером 4.
В обозначении IOS для нас важна версия – в первом файле под номером 3 это 124, а во втором под номером 4 – это 123, то есть более старая версия. Кроме того, advipservicesk9 указывает на то, что данная версия системы более функциональна, чем ipbase, так как позволяет использовать MPLS и тому подобное.
Еще один вариант развития событий состоит в том, что вы по ошибке удалили флэш – я набираю команду delete flash и указываю имя файла IOS, который подлежит удалению.
Но перед этим хочу сказать, что сейчас по умолчанию во время загрузки будет использоваться файл системы под номером 3, то есть с1841- advipservicesk9-mz.124-15.T1.bin. Предположим, что по какой-то причине я хочу, чтобы при следующей загрузке системы использовался файл номер 4 — с1841-ipbase-mz.123-14.T7.bin. Для этого я захожу в режим глобальной конфигурации и набираю команду boot system flash: с1841-ipbase-mz.123-14.T7.bin.
Теперь при следующей загрузке данный файл будет использоваться как ОС по умолчанию, даже если у нас во флэш будет храниться две операционных системы.
Вернемся к удалению ОС и наберем команду delete flash: с1841-ipbase-mz.123-14.T7.bin. После этого удалим и вторую ОС командой delete flash: с1841- advipservicesk9-mz.124-15.T1.bin, так что роутер лишится обеих операционных систем.
Если теперь набрать show flash, можно увидеть, что теперь у нас вообще нет никакой ОС. Что же случится, если я дам команду на перезагрузку? Вы видите, что после ввода команды reload устройство сразу же переходит в режим ROMmon. Как я сказал, при загрузке устройство ищет файл ОС и при его отсутствии переходит к базовой ОС rommon.
В программе Packet Tracer нет команд xmodem, которые можно использовать в реальном физическом устройстве. Там вы вводите xmodem и добавляете необходимые опции относительно загрузки ОС. Если вы используете терминал SecureCRT, то можете кликнуть по файлу, выбрать опцию, которая осуществляет перенос, и затем выбрать xmodem. После того, как вы выбрали xmodem, вы выбираете файл операционной системы. Предположим, что этот файл находится на вашем ноутбуке, тогда вы набираете xmodem, указываете этот файл и отсылаете его. Однако xmodem очень и очень медленная вещь, и процесс переноса в зависимости от размера файла может занять 1-2 часа.
TFTP-сервер работает намного быстрее. Как я уже сказал, в Packet Tracer нет команд xmodem, поэтому мы загрузим tftp командой tftpdnld, после чего система выдаст подсказки, как можно восстановить образ системы через TFTP-сервер. Вы видите различные параметры, которые потребуется указать для загрузки файла ОС. Зачем нужны эти параметры? Их необходимо использовать, потому что в режиме rommon этот роутер не обладает функциональностью устройства с полноценной IOS. Поэтому мы сначала вручную должны указать IP-адрес нашего роутера, использовав параметр IP_ADDRESS=10.1.1.1, затем маску подсети IP_SUBNET_MASK=255.255.255.0, шлюз по умолчанию DEFAULT_GATEWAY=10.1.1.10, сервер TFTP_SERVER=10.1.1.10 и файл TFTP_FILE= с1841- advipservicesk9-mz.124-15.T1.bin.
После того, как я это сделал, я запускаю команду tftpdnld, и система просит подтвердить данное действие, потому что все существующие во флэш данные будут потеряны. Если я отвечу «Да», вы увидите, что цвет портов соединения роутер-сервер поменялся на зеленый, то есть происходит процесс копирования операционной системы с сервера.
После того, как загрузка файла завершилась, я использую команду boot, после чего начинается распаковка образа системы. Вы видите, что после этого роутер переходит в работоспособное состояние, так как устройству возвращена операционная система. Вот так происходит восстановление работоспособности устройства, которое лишилось своей операционной системы.
Теперь давайте немного поговорим о лицензировании Cisco IOS.
Перед версией 15 существовали предыдущие версии лицензий, например 12, после которой сразу была выпущена 15 версия, не спрашивайте, куда делись номера 13 и 14. Так вот, когда вы покупали устройство Cisco, то с базовой функциональностью IOS IP Base оно стоило, скажем, 1000$. Это была минимальная цена «железа» с установленной операционной системой базовой конфигурации.
Предположим, ваш друг захотел, чтобы его устройство обладало расширенной функциональностью Advance IP Services, тогда цена составляла, скажем, 10 тысяч долларов. Я привожу случайные цифры, просто чтобы вы поняли принцип. При у вас у вас обоих имеется одно и то же аппаратное обеспечение, разница состоит только в установленном ПО. Ничто не могло помешать вам попросить у друга копию его ПО, установить её на своё «железо» и тем самым сэкономить 9 тысяч долларов. Даже если у вас нет такого друга, при современном развитии интернета можно скачать и установить пиратскую копию ПО. Это незаконно, и я не рекомендую вам так поступать, но люди часто это делают. Именно поэтому Cisco решила внедрить механизм, который предотвращает подобные махинации, и разработала версию IOS 15, в которой предусмотрено лицензирование.
В предыдущих версиях IOS, например, 12.4, само название системы указывало на её функциональные возможности, поэтому зайдя в настройки устройства, вы могли определить их по названию файла ОС. Фактически существовало несколько операционных систем одной версии по типу того, как существует Windows Home, Windows Professional, Windows Enterprise и т.д.
В версии 15 существует всего одна универсальная операционная система – Cisco IOSv15, которая имеет несколько уровней лицензирования. Образ системы содержит в себе все функции, но они заблокированы и поделены на пакеты.
Базовый пакет IP Base активен по умолчанию, имеет пожизненный срок действия и доступен каждому, кто приобрел устройство производства компании Cisco. Три остальных пакета, Data, Unified Communication и Seсurity, можно активировать только с помощью лицензии. Если вам нужен пакет Data, вы можете зайти на сайт компании, заплатить некую сумму, и Cisco вышлет лицензионный файл на вашу электронную почту. Вы копируете этот файл во флэш-память своего устройства с помощью TFTP или другим способом, после чего все функции пакета Data автоматически становятся доступными. Если вам нужны расширенные функции безопасности, такие как шифрование, IPSec, VPN, файрвол и т.д, вы приобретаете лицензию на пакет Security.
Сейчас с помощью Packet Tracer я покажу, как это выглядит. Я захожу на вкладку CLI настроек роутера и ввожу команду show version. Вы видите, что у нас запущена ОС версии 15.1, это универсальная ОС, которая содержит в себе все функциональные возможности. Если прокрутить окно ниже, можно увидеть информацию о лицензии.
Здесь значится, что пакет ipbase действует постоянно и доступен при каждой загрузке устройства, а пакеты security и data недоступны, поскольку в данный момент система не имеет соответствующих лицензий.
Для просмотра подробной лицензионной информации можно использовать команду show license all. Кроме этого, можно просмотреть детали действующей лицензии с помощью команды show license detail. Функции лицензии можно просмотреть с помощью команды show license features. Такова краткая информация о системе лицензирования Cisco. Вы заходите на сайт компании, покупаете нужную лицензию, и вставляете лицензионный файл в систему. Это можно сделать в режиме глобальной конфигурации настроек с помощью команды license install.
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?
Как можно восстановить пароль? Вы можете спросить, зачем это может понадобиться. Предположим, вы настроили устройство и установили все нужные пароли: на VTY, на консоль, на привилегированный режим, на подключение Telnet и SSH, а затем забыли эти пароли. Возможно, что сотрудник компании, который их установил, уволился и не передал вам записи, или вы купили роутер на eBay и не знаете пароли, который установил бывший хозяин, поэтому не можете получить доступ к устройству.
В таких ситуациях следует применить «хакерские» приемы. Вы взламываете устройство Cisco и переустанавливаете пароли, но это не настоящее хакерство, если устройство принадлежит вам. Для этого нужны три вещи: прерывающая последовательность Break Sequence, регистр конфигурации и перезагрузка системы.
Вы пользуетесь выключателем, отключаете питание роутера и тут же включаете его, чтобы роутер начал перезагрузку, «цисководы» называют это словом «bouncing». В момент распаковки образа IOS нужно применить прерывание загрузки, то есть подключиться к устройству через консольный порт и запустить Break Sequence. Комбинация клавиш, которой запускается Break Sequence, зависит от программы эмуляции терминала, которую вы используете, то есть для Hyperterminal прерывание загрузки осуществляется одним сочетанием, для SequreSRT – другим. Под данным видео я привожу ссылку www.cisco.com/c/en/us/support/docs/routers/10000-series-routers/12818-61.html, где можно ознакомиться со всеми сочетаниями клавиш для разных эмуляторов терминалов, разной совместимости и разных операционных систем.
При использовании прерывания загрузки роутер запустится в режиме ROMmon. ROMmon аналогична BIOS компьютера, это элементарная базовая ОС, которая позволяет выполнять основные сервисные команды. В этом режиме можно воспользоваться регистром конфигурации. Как известно, в процессе загрузки система проверяет наличие загрузочных настроек, и если их нет, загружается с настройками по умолчанию.
В норме значение регистра конфигурации роутера равно 0х2102, что означает запуск загрузочной конфигурации. Если изменить это значение на 0х2142, то во время Break Sequence загрузочная конфигурация будет проигнорирована, так как система не обратит внимания на содержимое энергонезависимой памяти NVRAM, и загрузится конфигурация по умолчанию, соответствующая настройкам роутера «из коробки».
Таким образом, для загрузки с настройками по умолчанию нужно изменить значение регистра конфигурации на 0х2142, что буквально говорит устройству: «пожалуйста, при любой загрузке игнорируйте загрузочную конфигурацию!». Так как эта конфигурация содержит все пароли, то загружаясь с настройками по умолчанию, вы получаете свободный доступ к привилегированному режиму. В этом режиме вы можете переустановить пароли, сохранить внесенные изменения, перезагрузить систему и получить полный контроль над устройством.
Сейчас я запущу Packet Tracer и покажу то, о чем только что рассказал. Вы видите топологию сети, состоящую из роутера, в котором нужно переустановить пароли, свитча и ноутбука. Во всех видеоуроках я кликал по иконке устройства в Packet Tracer, заходил на вкладку консоли CLI и настраивал устройство. Сейчас я хочу поступить по-другому и показать, как это делается на реальном устройстве.
Я соединю серийный порт ноутбука RS-232 консольным кабелем с консольным портом роутера, в программе это кабель голубого цвета. Мне не нужно настраивать никаких IP-адресов, потому что для связи с консольным портом роутера они не нужны.
В ноутбуке я захожу на вкладку Terminal и проверяю параметры: скорость передачи 9600 б/с, информационных битов – 8, без четности, стоповых битов – 1, контроль потока – нет, а затем нажимаю кнопку ОК, что дает мне доступ к консоли роутера. Если сравнить информацию в обоих окнах – CLI роутера R0 и на экране ноутбука Laptop0, она будет совершенно одинаковой.
Packet Tracer позволяет проделывать подобные вещи, но на практике мы не станем использовать окно консоли роутера CLI, а будем работать только через терминал компьютера.
Итак, у нас есть роутер, на котором необходимо сбросить пароль. Вы заходите в терминал ноутбука, проверяете параметры, заходите в панель настройки роутера и видите, что доступ заблокирован паролем! Как же туда попасть?
Я перехожу к роутеру, на вкладку, где он показан как физическое устройство, щелкаю по выключателю питания и сразу же включаю его снова. Вы видите, что в окне терминала появилось сообщение о самораспаковке образа ОС. В этот момент вы должны использовать комбинацию клавиш Ctrl+C, она применяется для перехода в режим rommon в программе Packet Tracer. Если вы вошли через Hyperterminal, то нужно нажать Ctrl+Break.
Вы видите, что на экране появилась строка с заголовком rommon 1, и если ввести знак вопроса, то дальше система выдаст ряд подсказок, какие команды можно использовать в данном режиме.
Параметр boot запускает внутренний процесс загрузки, confreg запускает утилиту настройки регистра, и нас интересует именно эта команда. Я набираю в строке терминала confreg 0х2142. Это означает, что при перезагрузке информация, хранящаяся во флеш-памяти NVRAM, будет проигнорирована и роутер загрузится с настройками по умолчанию, как совершенно новое устройство. Если бы я набрал команду confreg 0х2102, то роутер использовал бы последние сохраненные параметры загрузки.
Далее командой reset я перезагружаю систему. Как видите, после её загрузки вместо предложения ввести пароль, как в прошлый раз, система просто спрашивает, намерен ли я продолжить настроечный диалог. Сейчас перед нами роутер с настройками по умолчанию, без всякой пользовательской конфигурации.
Я ввожу no, затем команду enter и перехожу из пользовательского режима в привилегированный режим. Так как я хочу просмотреть конфигурацию загрузки, то использую команду show startup-config. Вы видите имя хоста NwKing router, приветственный баннер и пароль на консоль «console». Сейчас я знаю этот пароль и могу его скопировать, чтобы не забыть, или же могу его поменять на другой.
Что мне нужно в первую очередь – это загрузить конфигурацию запуска в текущую конфигурацию роутера. Для этого я использую команду copy startup-config running-config. Теперь нашей текущей конфигурацией стала предыдущая конфигурация роутера. Вы видите, что после этого имя роутера в командной строке поменялось с Router на NwKingRouter. С помощью команды show run можно просмотреть текущую конфигурацию устройства, где видно, что пароль на консоль – это слово «console», мы не использовали enable password, это правильно. Вам нужно помнить, что восстановление «убивает» привилегированный режим и вы снова оказываетесь в пользовательском режиме командной строки.
Мы все еще можем внести изменения в реестр, и если бы пароль был секретным, то есть была бы использована функция enable secret, очевидно, вы не смогли бы его расшифровать, так что можно вернуться в режим глобальной конфигурации командой config t и установить новый пароль. Для этого я набираю команду enable secret enable или могу использовать любое другое слово в качестве пароля. Если набрать show run, вы увидите, что функция enable secret включена, пароль теперь выглядит не как слово «enable», а как строка из зашифрованных символов и вы можете не беспокоится о безопасности, потому что только что сами установили и зашифровали новый пароль.
Вот каким образом можно произвести восстановление пароля роутера. Обратите внимание на одну важную вещь: если ввести команду «показать версию» show version, вы увидите, что значение регистра конфигурации равно 0х2142. Это означает, что даже если я использую команду copy running to startup и перегружу роутер, то система снова загрузит настройки по умолчанию, то есть роутер вернется к заводским настройкам. Нам это совершенно не нужно, потому что мы переустановили пароль, получили контроль над устройством и хотим использовать его в рабочем режиме.
Поэтому нужно войти в режим глобальной конфигурации Router(config)# и ввести команду config-register 0x2102 и только после этого использовать команду для копирования текущей конфигурации в загрузку copy run start. Скопировать текущие настройки в загрузочную конфигурацию также можно с помощью команды write. Если теперь набрать show version, вы увидите, что значение регистра конфигурации сенйчас равно 0х2102, причем система сообщает, что изменения вступят в силу при следующей перезагрузке роутера.
Поэтому мы инициируем перезагрузку командой reload, система перегружается, и сейчас мы имеем все файлы конфигурации, все настройки и знаем все пароли. Вот таким образом осуществляется восстановление паролей роутера.
Давайте рассмотрим, как осуществить эту же процедуру для свитча. У роутера есть выключатель, позволяющий отключить и снова включить питание, а у свитча Cisco такого выключателя нет. Мы должны подсоединиться к консольному порту консольным кабелем, затем отсоединить кабель питания сзади свитча, через 10-15 с вставить его обратно и сразу нажать и удерживать кнопку MODE в течение 3-х с. Это автоматически переведет свитч в режим ROMmon. В этом режиме вы должны инициализировать файловую систему на флэше и переименовать файл config.text, например, на config.text.old. Если его просто удалить, то свитч «забудет» не только пароли, но и все предыдущие настройки. После этого вы перегружаете систему.
Что при этом происходит со свитчем? В момент перезагрузки он обращается к файлу конфигурации config.text. Если он не находит этот файл во флэш-памяти устройства, то загружает IOS с настройками по умолчанию. В этом заключается разница: в роутере вы должны изменить настройку регистра, а в свитче достаточно просто поменять имя загрузочного файла настроек. Рассмотрим, как это происходит в программе Packet Tracer. На этот раз я присоединяю ноутбук консольным кабелем к консольному порту свитча.
Мы не пользуемся консолью CLI свитча, а моделируем ситуацию, когда к настройкам свитча можно добраться только с помощью ноутбука. Я использую те же настройки терминала ноутбука, что и в случае с роутером, и нажав «Ввод», подключаюсь к консольному порту свитча.
В Packet Tracer я не могу отключить и включить кабель питания, как это делается с физическим устройством. Если бы у меня был пароль на консоль, я смог бы перегрузить свитч, поэтому я ввожу команду enable password enable для назначения локального пароля доступа в привилегированный режим консоли.
Теперь если я зайду в настройки, то увижу, что система запрашивает пароль, которого я не знаю. Значит, необходимо инициировать перезагрузку системы. Как видите, система не воспринимает команду reload, которая поступила с устройства пользователя в пользовательском режиме, поэтому я должен использовать привилегированный режим. Как я сказал, в реальной жизни я просто бы отключил на несколько секунд кабель электропитания свитча, чтобы вызвать перезагрузку, но поскольку в программе это сделать невозможно, я должен удалить пароль и перезагрузиться прямо отсюда. Вы понимаете, зачем я это делаю, правильно?
Итак, я перехожу с вкладки CLI на вкладку «Физическое устройство», и когда устройство начинает перезагрузку, я удерживаю виртуальную кнопку MODE в течение 3-х секунд и захожу в режим ROMmon. Вы видите, что информация в окне CLI свитча такая же как, и в окне на экране ноутбука. Я перехожу к ноутбуку, в окне которого отображается режим ROMmon свитча, и ввожу команду flash_init. Эта команда инициализирует файловую систему на флэше, после чего я ввожу команду dir_flash, чтобы просмотреть содержимое флэш-памяти.
Здесь расположены два файла – файл операционной системы IOS с расширением .bin и файл config.text, который мы должны переименовать. Для этого я использую команду rename flash:config.text flash:config.old. Если теперь использовать команду dir_flash, можно увидеть, что файл config.text был переименован в config.old.
Теперь я ввожу команду reset, свитч перезагружается и после загрузки системы переходит к настройкам по умолчанию. Об этом свидетельствует изменение имени устройства в командной строке с NwKingSwitch на просто Switch. В реальном устройстве существует команда rename, но в Packet Tracer ей нельзя воспользоваться. Поэтому я применяю show running conf, как видите, свитч использует все настройки по умолчанию, и ввожу команду more flash:config.old. Вот в чем заключается взлом: вы должны просто скопировать текущую конфигурацию устройства, отображаемую на экране, перейти в режим глобальной конфигурации и вставить скопированную информацию. В идеале у нас копируются абсолютно все настройки, и вы видите, что имя устройства поменялось и свитч перешел к обычному режиму работы.
Теперь остается скопировать текущую конфигурацию в загрузочную конфигурацию, то есть создать новый файл config.text. Самый простой способ – просто переименовать старый файл обратно в config.text, то есть скопировать содержимое config.old в текущую конфигурацию и затем сохранить её как config.text. Вот так производится восстановление пароля свитча.
Теперь мы рассмотрим, как выполнять резервное копирование и восстановление операционной системы Cisco IOS. Резервное копирование заключается в копировании образа IOS на TFTP-сервер. Далее я расскажу, как перенести файл образа системы с этого сервера на ваше устройство. Третья тема – это восстановление системы в режиме ROMmon. Это может понадобиться, если ваш коллега случайно удалил IOS и система перестала загружаться.
Мы рассмотрим, как получить файл системы с TFTP-сервера в режиме ROMmod. Для этого существует 2 способа, одним из них является xmodem. Packet Tracer не поддерживает xmodem, поэтому я коротко расскажу, что это такое, а затем покажу с помощью Packet Tracer, как используется второй способ – восстановление системы через TFTP.
На схеме изображено устройство Router0, которому присвоен IP-адрес 10.1.1.1. Этот роутер соединен с сервером с IP-адресом 10.1.1.10. Я забыл присвоить адрес роутеру, так что сейчас быстро это сделаю. Наш роутер не подсоединен к ноутбуку, поэтому программа не дает возможность использовать консоль CLI, и мне придется это исправить.
Я соединяю ноутбук с роутером консольным кабелем, система запрашивает пароль на консоль, и я использую слово console. В режиме глобальной конфигурации я присваиваю интерфейсу f0/0 нужный IP-адрес и маску подсети 255.255.255.0 и добавляю команду no shutdown.
Далее я набираю команду show flash и вижу, что в памяти расположены 3 файла. Файл под номером 3 самый важный, это файл IOS роутера. Сейчас нужно настроить TFTP-сервер, поэтому я кликаю по иконке устройства Server0 и открываю вкладку SERVICES. Мы видим, что TFTP–сервер включен и на нем содержаться файлы множества операционных систем Cisco, в том числе IOS для нашего роутера с1841 – это третий по порядку файл в перечне. Мне нужно удалить его с сервера, потому что я собираюсь скопировать сюда другой файл IOS с нашего роутера Router0. Для этого я выделяю файл и нажимаю Remove file, а затем перехожу на вкладку консоли ноутбука.
Находясь в консоли роутера, я ввожу команду copy flash tftp <имя файла источника> <адрес/имя хоста назначения>, затем копирую и вставляю имя файла операционной системы.
Далее в команде нужно указать адрес или имя удаленного хоста, на который следует скопировать данный файл. Так же, как и при сохранении загрузочной конфигурации роутера, здесь нужно проявить внимательность. Если вы по ошибке скопируете не текущую конфигурацию в загрузочную, а наоборот, загрузочную в текущую, то после перезагрузки устройства утратите все сделанные настройки. Точно также в данном случае нельзя путать источник и назначение. Итак, сначала мы указываем имя файла, который нужно скопировать на сервер, а затем IP-адрес этого сервера 10.1.1.10.
Вы видите, что начался перенос файла, и если посмотреть на список файлов TFTP видно, что вместо удаленного файла здесь появился новый файл IOS нашего роутера. Вот таким образом осуществляется копирование IOS на сервер.
Теперь мы возвращаемся к окну настроек роутера на экране ноутбука и вводим команду copy tftp flash, указываем адрес удаленного хоста 10.1.1.10 и имя файла источника Source filename, то есть ту IOS, которую нужно скопировать во флэш роутера: с1841-ipbase-mz.123-14.T7.bin. Далее указывается имя файла назначения Destination filename, которое в нашем случае будет точно таким же, как имя источника. После этого я нажимаю «Ввод», и новый файл IOS копируется во флэш-память роутера. Вы видите, что теперь у нас есть два файла операционной системы: новый под номером 3 и предыдущий оригинальный под номером 4.
В обозначении IOS для нас важна версия – в первом файле под номером 3 это 124, а во втором под номером 4 – это 123, то есть более старая версия. Кроме того, advipservicesk9 указывает на то, что данная версия системы более функциональна, чем ipbase, так как позволяет использовать MPLS и тому подобное.
Еще один вариант развития событий состоит в том, что вы по ошибке удалили флэш – я набираю команду delete flash и указываю имя файла IOS, который подлежит удалению.
Но перед этим хочу сказать, что сейчас по умолчанию во время загрузки будет использоваться файл системы под номером 3, то есть с1841- advipservicesk9-mz.124-15.T1.bin. Предположим, что по какой-то причине я хочу, чтобы при следующей загрузке системы использовался файл номер 4 — с1841-ipbase-mz.123-14.T7.bin. Для этого я захожу в режим глобальной конфигурации и набираю команду boot system flash: с1841-ipbase-mz.123-14.T7.bin.
Теперь при следующей загрузке данный файл будет использоваться как ОС по умолчанию, даже если у нас во флэш будет храниться две операционных системы.
Вернемся к удалению ОС и наберем команду delete flash: с1841-ipbase-mz.123-14.T7.bin. После этого удалим и вторую ОС командой delete flash: с1841- advipservicesk9-mz.124-15.T1.bin, так что роутер лишится обеих операционных систем.
Если теперь набрать show flash, можно увидеть, что теперь у нас вообще нет никакой ОС. Что же случится, если я дам команду на перезагрузку? Вы видите, что после ввода команды reload устройство сразу же переходит в режим ROMmon. Как я сказал, при загрузке устройство ищет файл ОС и при его отсутствии переходит к базовой ОС rommon.
В программе Packet Tracer нет команд xmodem, которые можно использовать в реальном физическом устройстве. Там вы вводите xmodem и добавляете необходимые опции относительно загрузки ОС. Если вы используете терминал SecureCRT, то можете кликнуть по файлу, выбрать опцию, которая осуществляет перенос, и затем выбрать xmodem. После того, как вы выбрали xmodem, вы выбираете файл операционной системы. Предположим, что этот файл находится на вашем ноутбуке, тогда вы набираете xmodem, указываете этот файл и отсылаете его. Однако xmodem очень и очень медленная вещь, и процесс переноса в зависимости от размера файла может занять 1-2 часа.
TFTP-сервер работает намного быстрее. Как я уже сказал, в Packet Tracer нет команд xmodem, поэтому мы загрузим tftp командой tftpdnld, после чего система выдаст подсказки, как можно восстановить образ системы через TFTP-сервер. Вы видите различные параметры, которые потребуется указать для загрузки файла ОС. Зачем нужны эти параметры? Их необходимо использовать, потому что в режиме rommon этот роутер не обладает функциональностью устройства с полноценной IOS. Поэтому мы сначала вручную должны указать IP-адрес нашего роутера, использовав параметр IP_ADDRESS=10.1.1.1, затем маску подсети IP_SUBNET_MASK=255.255.255.0, шлюз по умолчанию DEFAULT_GATEWAY=10.1.1.10, сервер TFTP_SERVER=10.1.1.10 и файл TFTP_FILE= с1841- advipservicesk9-mz.124-15.T1.bin.
После того, как я это сделал, я запускаю команду tftpdnld, и система просит подтвердить данное действие, потому что все существующие во флэш данные будут потеряны. Если я отвечу «Да», вы увидите, что цвет портов соединения роутер-сервер поменялся на зеленый, то есть происходит процесс копирования операционной системы с сервера.
После того, как загрузка файла завершилась, я использую команду boot, после чего начинается распаковка образа системы. Вы видите, что после этого роутер переходит в работоспособное состояние, так как устройству возвращена операционная система. Вот так происходит восстановление работоспособности устройства, которое лишилось своей операционной системы.
Теперь давайте немного поговорим о лицензировании Cisco IOS.
Перед версией 15 существовали предыдущие версии лицензий, например 12, после которой сразу была выпущена 15 версия, не спрашивайте, куда делись номера 13 и 14. Так вот, когда вы покупали устройство Cisco, то с базовой функциональностью IOS IP Base оно стоило, скажем, 1000$. Это была минимальная цена «железа» с установленной операционной системой базовой конфигурации.
Предположим, ваш друг захотел, чтобы его устройство обладало расширенной функциональностью Advance IP Services, тогда цена составляла, скажем, 10 тысяч долларов. Я привожу случайные цифры, просто чтобы вы поняли принцип. При у вас у вас обоих имеется одно и то же аппаратное обеспечение, разница состоит только в установленном ПО. Ничто не могло помешать вам попросить у друга копию его ПО, установить её на своё «железо» и тем самым сэкономить 9 тысяч долларов. Даже если у вас нет такого друга, при современном развитии интернета можно скачать и установить пиратскую копию ПО. Это незаконно, и я не рекомендую вам так поступать, но люди часто это делают. Именно поэтому Cisco решила внедрить механизм, который предотвращает подобные махинации, и разработала версию IOS 15, в которой предусмотрено лицензирование.
В предыдущих версиях IOS, например, 12.4, само название системы указывало на её функциональные возможности, поэтому зайдя в настройки устройства, вы могли определить их по названию файла ОС. Фактически существовало несколько операционных систем одной версии по типу того, как существует Windows Home, Windows Professional, Windows Enterprise и т.д.
В версии 15 существует всего одна универсальная операционная система – Cisco IOSv15, которая имеет несколько уровней лицензирования. Образ системы содержит в себе все функции, но они заблокированы и поделены на пакеты.
Базовый пакет IP Base активен по умолчанию, имеет пожизненный срок действия и доступен каждому, кто приобрел устройство производства компании Cisco. Три остальных пакета, Data, Unified Communication и Seсurity, можно активировать только с помощью лицензии. Если вам нужен пакет Data, вы можете зайти на сайт компании, заплатить некую сумму, и Cisco вышлет лицензионный файл на вашу электронную почту. Вы копируете этот файл во флэш-память своего устройства с помощью TFTP или другим способом, после чего все функции пакета Data автоматически становятся доступными. Если вам нужны расширенные функции безопасности, такие как шифрование, IPSec, VPN, файрвол и т.д, вы приобретаете лицензию на пакет Security.
Сейчас с помощью Packet Tracer я покажу, как это выглядит. Я захожу на вкладку CLI настроек роутера и ввожу команду show version. Вы видите, что у нас запущена ОС версии 15.1, это универсальная ОС, которая содержит в себе все функциональные возможности. Если прокрутить окно ниже, можно увидеть информацию о лицензии.
Здесь значится, что пакет ipbase действует постоянно и доступен при каждой загрузке устройства, а пакеты security и data недоступны, поскольку в данный момент система не имеет соответствующих лицензий.
Для просмотра подробной лицензионной информации можно использовать команду show license all. Кроме этого, можно просмотреть детали действующей лицензии с помощью команды show license detail. Функции лицензии можно просмотреть с помощью команды show license features. Такова краткая информация о системе лицензирования Cisco. Вы заходите на сайт компании, покупаете нужную лицензию, и вставляете лицензионный файл в систему. Это можно сделать в режиме глобальной конфигурации настроек с помощью команды license install.
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?