Прошивка коммутатора через putty

Обновлено: 05.07.2024

При размещении или аренде нескольких серверов или стоек мы предоставляем клиентам возможность арендовать или разместить в наших дата-центрах свои собственные коммутаторы, маршрутизаторы или другое сетевое оборудование. Для первоначальной настройки или обновления прошивки часто требуется доступ к консоли устройства, который можно получить, подключив специальный кабель к COM-порту (или USB-порту) сервера с одной стороны и к консольному порту коммутатора или маршрутизатора — с другой.

Для успешного подключения к устройству необходимо знать параметры настройки консольного порта. Эту информацию можно получить в официальной документации либо на сайте производителя: Cisco Catalyst, Cisco Nexus, Dell, D-Link, Extreme Networks, Huawei, HPE, MikroTik и др.

Самые распространённые варианты указаны в таблице ниже. Как правило, они подходят к большинству устройств.

Параметр Значение
Baud rate 9600/115200
Data bits 8
Parity none
Stop bits 1
Flow control none / (Xon/Xoff)

Ниже рассмотрены варианты подключения с помощью утилит в разных операционных системах.

Windows

Для подключения к оборудованию по консольному порту можно воспользоваться популярной утилитой Putty.

Putty — простой в установке и использовании, свободно распространяемый клиент для различных протоколов удалённого доступа, включая подключение через последовательный (COM) порт.

На скриншотах ниже показаны настройки программы для подключения по консольному порту — в нашем примере приведены параметры для оборудования Cisco.

Перед подключением необходимо определить номер порта в ОС, номер определяется в диспетчере устройств в разделе Ports (COM & LPT).

blank

Шаг 1: Выбрать тип подключения (Connection type): Serial и ввести номер порта (Serial line), в примере: COM1. Перейти в категорию (Category) Serial для установки параметров подключения.

blank

Шаг 2: Настройка параметров подключения:

После настройки параметров подключения — нажать Open и можно приступать к настройке оборудования.

Linux

В Linux можно воспользоваться утилитой Minicom.

Minicom — текстовая утилита управления модемным подключением в UNIX-подобных ОС, эмулятор терминала.

Программа обычно входит в стандартные репозитории популярных дистрибутивов, устанавливается просто:

В Debian / Ubuntu:

В Red Hat / Centos:

Перед запуском необходимо определить название последовательного порта в системе:

Как правило, последовательный порт называется /dev/ttyS6 , в случае использования USB — /dev/ttyUSB3

Шаг 1: Первый запуск, настройка:

Утилита интерактивная, для навигации по меню необходимо использовать стрелки.

Шаг 2: Перейти в раздел настройки параметров последовательного порта:

blank

Шаг 3: Нажать A и ввести название последовательного порта:

blank

Шаг 4: Нажать E для входа в меню установки параметров скорости и чётности. Нажать C для выбора скорости 9600 либо кнопками A и B выбрать требуемую скорость.

Подтвердить скорость и нажать Enter :

blank

Шаг 5: После настройки параметры должны выглядеть, как показано на скриншоте ниже. Дополнительно клавишей F можно отключить аппаратное управление потоком.

blank

Шаг 6: Сохранить настройки в dfl-файл, нажать Exit и приступить к настройке оборудования. Для выхода из minicom использовать сочетание клавиш Ctrl+A Q или Ctrl+A X .

Справка: Ctrl+A Z .

Для последующих запусков программы с преднастроенными параметрами можно использовать:

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Обновление/восстановление прошивки

Если мы снесли все что было на флешке, то мы попадём в меню загрузчика, так же мы туда попадём в случае сбоя загрузки образа системы. В противном случае в самом начале загрузки коммутатора нам надо нажимать сочетания клавиш Ctrl+P

Из данного меню мы можем закачать прошивку только с TFTP сервера.

Устанавливаем TFTP и кладем в корень скаченную прошивку.

Подключаемся к коммутатору через COM переходник. Кабель для подключения идет в комплекте, сам COM переходник необходимо приобретать отдельно. Консольных вход на коммутаторе находиться на передней панели и обозначается как CONSOLE.

Настройки COM порта по умолчанию:

Образ системы/прошивку мы сможем загружать с TFTP сервера если только он находиться в той же сети, что и коммутатор т.к. в загрузчике отсутствует возможность указать шлюз.

Посмотрим, что у нас есть на флешке

  • os.bin – это образ системы
  • startup-config – наш файл конфигурации

Свободного места на флешки у нас достаточно мало, где-то 6.7Мб, а прошивка весит в районе 9.5Мб так, что хранить копию старой прошивки на месте мы не можем. В данном случае нам надо скопировать старый образ системы на TFTP сервер, так на всякий случай.

Запустим копирования файла образа системы с TFTP сервера на коммутатор. Файлы с одинаковыми именами перезаписываются, так что конечное имя указывайте такое же как оно выглядит на флешке, либо прежде чем копировать удалите (delete имя_файла) старую версию прошивки.

  • QSW-8330_2.2.0C_67469.bin – скаченная ранее прошивка на TFTP сервере
  • os.bin – имя с которым будет записана качаемая прошивка на флешку. Данное имя может быть любым, главное, чтоб расширение было *.bin. Так же при наличии несколько файлов с расширением *.bin на флешки коммутатора это не мешает ему выбрать верную и начать ее загружать.

Таким образом мы можем как обновить ОС коммутатора, так и восстановить поврежденный образ или утерянный.

Все ниже сказанное будет проводиться на коммутаторе QSW-8330-40T с версией:

Официальная документация и прошивки на коммутатор QSW-8330-40T: FTP ресурс с документацией и прошивками на QSW-8330-40T

В данной статье я будет производить настройку исключительно с командной строки, но все ниже описанное с легкостью можно сделать через WEB интерфейс.

Информация о настройках по умолчанию

Коммутатор по умолчанию имеет IP 192.168.0.1 с маской 255.255.0.0. Данный IP привязан к VLAN1, все порты являются членами VLAN1.

Так же коммутатор имеет консольный вход со следующими настройками:

Подключиться к коммутатору мы можем как по IP по умолчанию, так и консольным кабелем. Консольный порт для подключения находиться на передней панели.

По умолчанию подключиться мы можем на следующие службы:

На коммутаторе по умолчанию существует только одна учетная запись admin c паролем admin обладающая полными правами.

Общие правила

Если вы подключились по IP и поменяли IP на другой, то вам надо будет переподключиться и продолжить настройку. Настройки применяются сразу, как только вы отправили команду на исполнение.

При вводе команд система автоматически дополняет команду при нажатии TAB , если такая команда есть и ее однозначно можно интерпретировать по введённому началу.

Команды можно сокращать при наборе. Прервать выполнение команды можно нажав CTRL+Q

Так же набрав начало команды и добавив символ ? (без пробела) вы получите список команд начинающихся на введенные символы. Получить список доступных команд можно введя символ ? (с пробелом) .

Если вы используете Putty с настройками по умолчанию, то при работе в консоли вы столкнётесь с проблемой удаления введённых символов. Удалять можно используя следующие сочетания:

либо настроить Putty на вкладке Keyboard

Небольшой список основных команд:

show running-config – выведет текущую конфигурацию оборудования
enable – переход в привилегированный режим
configure – переход в режим конфигурирования
exit – выход из текущего режима
write – записать сделанные изменения
reboot – перезагрузка
default-config – очистка файла конфигурации

Отображение режимов:

Информация о подключение

Подключиться к коммутатору можно как по IP адресу по умолчанию на службу Telnet или на WEB, так и консольным кабелем.

Я использую подключение консольным кабелем.

Настройка/смена IP адреса, установка шлюза

Подключаемся консольным кабелем, либо Telnet. Вводим логин: admin пароль: admin и попадаем в пользовательский режим

Смена пароля учетной записи, включение шифрования пароля

Создание новой учетной записи

При создании пользователя ему по умолчанию назначаются привилегии админа, уровень 15.

Закрываем доступ к привилегированному режиму паролем

Хоть мы закрыли доступ пользователю к привилегированному режиму в консоле, к WEB он по прежнему может подключаться, если только это мы не задали ему уровень доступа 1 из предыдущего пункта.

Настройка синхронизации времени SNTP и длительность сессии виртуального терминала (ssh)

Настройка коммутатора на работу с Radius сервером

Доступ к коммутатору производиться в той последовательности, которая указана в методе авторизации.


CISCO 2950 и 3550 прошивка — CISCO Catalyst WS-C2950 как и WS-C3550 сейчас можно купить за относительно небольшие деньги. Несмотря на почтенный возраст устройств, это полностью боевые аппараты с поддержкой всех нужных функций: для 2950 - VLAN, транки, STP, EtherChannel, безопасность портов и многое другое, для 3550 - маршрутизация, ACLs.

Прошивка 2950

Лазил тут по нету и наткнулся на каталог. Рано или поздно ссылка прокиснет, но пока работает. Не проверял качество выложенной там инфы.

Подготовка

Итак, мне достался довольно свежий экземпляр, выпущенный в 2006 году. Модель WS-C2950-24 самая простая модель из линейки 2950. А линейка эта (как и линейка 2960) насчитывает довольно таки большое число разных моделей коммутаторов с разным функционалом (будет далее).

Самое смешное что на Яндекс Маркете еще до сих пор висит какой-то космический ценник.

CISCO 2950 и 3550 прошивка

Потребуется также консольный кабель и программа Putty. У меня консольник вот такой:

Что делать, если нет COM-порта? Обычно в таких случаях используют переходник USB-to-COM. Он имеет массу недостатков: нужно ставить драйвера, номер COM-порта будет меняться при подключении к разным портам USB, чтобы посмотреть этот номер нужно открыть Диспетчер устройств, сам переходник достаточно капризный в работе (на одном ноутбуке работает хорошо, на другом вышибает в синий экран).

Хороший вариант готового шнура с USB можно найти на Ali по запросу "FTDI RJ45", стоит он 4-6USD и выглядит вот так:


Если компьютер стационар, то скорее всего на материнской плате распаян разъём COM, даже на самых современных он есть. Нужно лишь купить COM шнурок, стоит копейки, подключить к плате, привинтить к задней панели компьютера, включить COM в BIOS:

CISCO 2950 и 3550 прошивка

Подсоединяем, включаем коммутатор, запускаем Putty, выбираем там Connection type: Serial. Хорошее обзорное видео по подключению к устройствам CISCO.

Что делать если устройство запаролено?
Удаление пароля

Ничего страшного. Мне именно такое и досталось. Заходим в режим ROMMON. Для этого зажимаем на коммутаторе кнопку Mode, выключаем-включаем, окно Putty не закрываем. Другой вариант по комбинации клавиш CTRL + Break из Putty. Как удобно.

Устройство высвечивает приглашение switch: - далее такая последовательность команд:

Для сброса пароля достаточно удалить только config.text, другие же файлы при необходимости можно удалить из полнофункционального режима. Для успешной загрузки на флеш должен присутствовать только образ IOS, остальные файлы можно смело удалять.

CISCO 2950 и 3550 прошивка

Вот и всё, пароль сброшен.

Другой вариант, удаляем ещё файл vlan.dat. Без удаления этого файла VLANs стандартного диапазона 2-1001 останутся в коммутаторе, так как информация о них хранится не в конфигурации, а как раз в этом файле. После чего не перезагружаем коммутатор, наоборот стартуем IOS:

Смена пароля

Если же необходимо только сбросить пароль, а конфигурацию сохранить, то вместо удаления нужно переименовать файл config.text:

После того как коммутатор загрузился в обычный режим с дефолтной конфигурацией и без пароля, что можно сделать?

Во-первых, просмотреть старую конфигурацию из файла config.old:

Во-вторых, подгрузить конфигурацию из файла в текущую конфигурацию:

То что текущая конфигурация изменилась, можно видеть по смене hostname со Switch на Switch1.

Ну а дальше надо просматривать конфигурацию, интересует пароль на enable, пароли на консоль и VTY, а также пользователи:

Затем заменить пароли на требуемые и сохранить конфигурацию:

  • Войти в режим глобальной конфигурации config t;
  • Ввести no enable secret, чтобы удалить пароль на enable либо enable secretсвой_пароль, чтобы заменить;
  • Ввести no user admin чтобы удалить, user admin privelege 15secretсвой_пароль, чтобы заменить;
  • Войти в режим конфигурирования консоли line cons 0 или в режим конфигурирования линий VTY - line vty 0 15 и ввести no password (при сконфигурированном локальном пользователе и пароле на enable, отдельный пароль тут не нужен);
  • Вернуться в привилегированный режим end;
  • сохранить конфигурацию wr.

После загрузки чужой конфигурации возможны всякие сюрпризы в самой этой конфигурации - по крайней мере нужно проверить не отключены ли (administrative down) вланы и порты, затем проверить успешность удалённого подключения через Telnet/SSH до отключения консольного кабеля.

Подготовка к прошивке

Как видно у устройства не самая свежая прошивка c2950-i6q4l2-mz.121-22.EA8.bin. И прошивка эта не знает про криптографию, а значит нет SSH.

CISCO 2950 и 3550 прошивка

На сайте CISCO прошивку к 2950 вы не найдёте - её там нет:

CISCO 2950 и 3550 прошивка

Пришлось прошерстить интернет, а как же..

Зато с сайта CISCO удалось получить интересную информацию:

Другими словами: можно прошивать мой коммутатор любыми подходящими прошивками, прошивка при загрузке определит, что это WS-C2950-24 и врубит стандартный функционал. Получить расширенный функционал на этой железке не получится никак. Подробнее тут. Это не касается криптографии. Поддержку криптографии можно получить практически на любой железке (может за исключением каких-то очень старых), прошивкой соответствующего программного обеспечения (обычно k9 на конце названия прошивки, но для старого 2950, как видим, по другому).

Чтобы компьютер мог взаимодействовать с коммутатором через сеть нужно настроить так называемый SVI (Switch Virtual Interface), грубо говоря одному интерфейсу VLAN нужно присвоить IP из нашей подсети. Проще, но не обязательно, воспользоваться встроенным VLAN 1:

Важное замечание: WS-C2950-24 может иметь только 1 активный SVI. То есть, когда есть вторая (третья, четвертая..) VLAN и если её интерфейсу задать IP, а затем сделать этот интерфейс активным с помощью команды no shutdown, то интерфейс VLAN, который был до этого активен, автоматически выключится. Вот такое ограничение. Его нет в 2960 (возможно в моделях 2950 с расширенным функционалом тоже нет).

Еще потребуется программа Tftpd32. Соединяем коммутатор с сетевой картой компьютера. Запускаем программу, в выпадающем меню Server interfaces выбираем IP адрес карты, которая соединена с коммутатором:

CISCO 2950 и 3550 прошивка

По умолчанию программа Tftpd32 работает с директорией, в которой находится сама. Копируем туда новый образ IOS.

Прошивка

Само обновление производится из привилегированного режима. Смотрим название текущей прошивки, её размер и размер свободного места:

Видно, что новая прошивка, которая обязательно больше старой, не поместится на флеш. Поэтому на всякий пожарный записываем текущий образ IOS на TFTP, заодно этим проверяем связь, затем текущий образ удаляем и загружаем новый:

После удачной прошивки файл IOS неплохо проверить:

После чего перезагружаемся и наслаждаемся новой прошивкой с криптосистемой и SSH:

CISCO 2950 и 3550 прошивка

Прошивка 3550

Тоже довольно старый, но таки ещё боевой, для образовательных целей во всяком случае, а самое главное очень дешёвый - коммутатор CISCO Cisco WS-C3550 выпускается в модификациях с 24 портами и с 48 портами, плюс 2 порта GBIC, которые значительно расширяют функционал (позволяя добавить гигабитные оптические или Ethernet модули в различном сочетании: WS-G5483, WS-G5484, WS-G5485, WS-G5486) .

Есть ещё экзотические 12-портовые модели (10+2), но мне они вживую не попадались. Модели идут или с обозначением SMI в конце названия (WS-3550-24-SMI), или с обозначением EMI (WS-3550-24-EMI). Все модели имеют 64Mb оперативной памяти и 16Mb флеш.

Поиск информации

Форумы это неплохо, лучше поищем официальный файл, читаем:

Это для старых версий 12.1, для более новых версий IOS 12.2 уже появился привычный вид: ipbase, ipbasek9, ipservices, ipservicesk9, хотя есть 12.2 и со старой кодировкой. Для новых версий признаком поддержки маршрутизации и плюшек является:

Это верно, у меня есть и SMI, и EMI - на Model number прошивка любых версий IOS никак не влияет. Основное отличие от WS-C2950-24 это то, что прошивкой "более модной" прошивки добавляем новый функционал. В WS-C2950-24, как уже говорилось, так сделать нельзя.

Прошивка

CISCO любит класть образ IOS в директорию на флеш с таким же названием как и файл прошивки, но только естественно без расширения .bin:

CISCO 2950 и 3550 прошивка

Удалить такую директорию обычной командой delete не получится, нужно использовать рекурсивное удаление delete /force /recursive:

Теперь загружаем новую прошивку:

Загрузки идёт очень долго по сравнению с 2950, это и понятно, файл прошивки размером более 10Mb.

CISCO 2950 и 3550 прошивка

CISCO предлагает использовать команду boot system для указания образа IOS (или даже нескольких образов по порядку: не удалось загрузить первый - загружаем второй и так далее), который нужно загрузить, но если на флеш только 1 образ, то можно этого и не делать, так как:

Флеш-память при этом просматривается в том порядке, как она выводится при команде show flash.

Проблемы при установки нового образа IOS

Первый 3550 был прошит без проблем, при прошивке второго появилась следующая проблема:

CISCO 2950 и 3550 прошивка

Как видно из скриншота, прервал процесс загрузки и стёр флеш, после чего процесс загрузки образа прошёл успешно, но странный вывод при загрузке и вопрос - так и остались:

Обозначение ! - успешная передача, а что такое O? Оказывается Out of order - пакеты приходят на коммутатор не в том порядке, в котором отсылались. Поскольку TFTP это UPD и значит нет гарантированной доставки пакетов, то появляются опасения за порчу образа при доставке. Как видно из описания протокола, механизм контроля реализован в самом TFTP - данные отсылаются порциями по 512 байт с подтверждением о получении и запросом следующего блока:

Возможные причины Out of order (как это рассказано в интернете):

  • Недостаточно места на флеш;
  • Слишком медленный канал передачи.

У меня не подошла ни 1 из этих причин. В дальнейшем, в процессе работы, когда прошивки коммутаторов пошли десятками - постоянно наблюдал Out of order и ни разу файл прошивки при передаче не повредился.

От себя добавлю, что хуже не будет (при наличии такой возможности), если подсоединить коммутатор непосредственно к сетевой карте компьютера, с которого идет передача файла образа и не пользоваться компьютером во время передачи, дождавшись окончания загрузки.

После загрузки с ошибками обязательно нужно проверить хеш md5 файла, сначала на устройстве:

Затем с помощью онлайн-проверки получить хеш файла на компьютере. Таких сайтов сейчас много, их легко найти через поисковик "проверка md5 файла онлайн" - и сравнить два хеша, если они совпадают, то всё нормально, нет - заливать заново.

Восстановление поврежденного IOS

Если прошивка во флеш маршрутизатора CISCO повреждена или отсутствует, то прошивку необходимо восстановить:

Для этого нужно зайти в режим ROMMON по комбинации клавиш CTRL + Break, либо перезагрузить коммутатор зажав кнопку Mode, либо опять же перезагрузить удалив прошивку из флеш.

Теперь коммутатор, если у коммутатора есть разъём USB, версия прошивки 12.4 или выше, то можно форматнуть флешку в FAT, записать туда IOS, вставить в коммутатор и загрузиться прям с флешки:

А потом перекинуть IOS на флеш коммутатора:

Для более древнего коммутатора используем древний HyperTerminal (HT). Наши 2950 и 3550 как раз тот случай. Смысл такой, с компа отправляем файл через HT: Trannsfer/Send, протокол xmodem, указываем файл с IOS. А на коммутаторе принимаем:

Если есть возможность выбрать файл прошивки поменьше (для 3550 точно есть в 2 раза меньше), то лучше взять его. Процедура весьма долгая. А потом, когда работоспособность восстановится, уже через TFTP залить большой образ со всеми плюшками. Так сэкономится время.

Ещё есть возможность пошаманить со скоростью консольного порта на CISCO:

Если получится на 115200, время значительно сократится.

Применение 2950/3550

По факту часто вижу применение данных девайсов в продакшене на предприятиях. Есть некоторые особенности.

У коммутаторов серий 2950 и 3550 нет функции Auto-MDIX, которая присутствует у других коммутаторов CISCO (например 2960 и 3560) и активируется на порте при режиме автосогласования для скорости порта и дуплекса (по умолчанию). Для соединения 2950 и 3550 в любых комбинациях потребуется кросс-кабель.

Данные девайсы не поддерживают LLDP, только проприетарный CDP, в результате могут быть некоторые неудобства при их использовании с сетевыми устройствами других фирм.

Полезное

Тому кто дочитал статью до конца небольшая плюшка. Не всегда затирать конфигурацию и программировать коммутатор с нуля хорошее решение. Возможно в конфигурации есть настройки, которые уместно оставить. Забивать их все заново руками очень долго. Но всегда нужно изменять информацию на портах.

Как сделать настройки портов быстро? Помогут две очень полезные команды. Первая команда range позволяет внести однотипные настройки сразу на группу портов:

Тут надо отметить, что обязателен пробел после номера порта, иначе ошибка команды.

Вторая команда default позволяет скинуть все настройки сразу с группы портов. Это очень удобно. Вместо того чтобы вычищать настройки с каждого порта, что может стать рутинной работой минут на 20, все порты приводятся к дефолтному состоянию за несколько секунд:

Читайте также: