Pull to refresh

Консольный доступ к сетевым устройствам с помощью iPhone/iPad

IT Infrastructure *
Sandbox
Будучи тестировщиками сетевого оборудования и любителями техники Apple мы никак не могли остаться равнодушными к появлению консольного кабеля для устройств iPhone/iPad/iPod Touch. Вот ссылка для тех, кто пропустил новость.

Введение


Вкратце, что это за кабель и для чего он необходим. Данный кабель позволяет использовать устройства Apple для получения доступа к консоли различных сетевых устройств, например, таких как, маршрутизаторы, коммутаторы, мультиплексоры и модемы. Тут стоит оговорить, что речь идёт не о “домашних” устройствах, а о профессиональном сетевом оборудовании, которое используется в операторах связи, корпоративных сетях, дата-центрах. Производителями таких устройств являются как международные вендоры (Juniper, Cisco, Zyxel), так и отечественные (Натекс).

Для чего необходим доступ к устройству через консоль? Основное — это первоначальная настройка устройства (настройка IP-параметров, логинов и паролей) и восстановление доступа к устройству в случае какой-либо аварии (утерян/забыт пароль, устройство не доступно по IP, восстановление ПО).


Обзор начнём с описание процесса покупки данного кабеля. Купить кабель можно либо через сайт производителя — компании Redpark, либо через сайт разработчика приложения для работы с кабелем — компании Get-Console. Стоимость кабеля $59. Мы заказывали через Redpark из-за меньшей стоимости доставки. К сожалению, Redpark не занимается доставкой в Россию, поэтому пришлось воспользоваться услугами shipito.com. Общая стоимость доставки вышла $47. Для сравнения доставка через Get Console стоит $72. Итого получилось $106, доставка заняла 2 недели.

Комплект поставки выглядит следующим образом:



Краткая инструкция:



Перейдём ближе к делу, точнее к тестированию самого кабеля. С одной стороны кабель оконечен стандартным RJ-45 коннектором, с другой фирменным 30-пиновым dock-коннектором Apple. Длина кабеля 182 см.





Внутри корпуса с dock-разъёмом скрывается плата с микроконтроллером (STM32F101C8) и драйвером RS-232 (MAX3243ECPWR):



Для работы с кабелем необходимо установить терминальную программу Get Console. Программа доступна через AppStore за $9.99. Программа имеет большое количество настроек и функций. Из основного стоит отметить:
  • возможность установления соединения через консоль, Telnet и SSH
  • поддержка скоростей от 9600 до 57600 кбит/с
  • логирование консольного вывода в файл
  • возможность задания часто используемых команд и паролей
  • виртуальные клавиши TAB, CTRL, BRAKE, ?, ↑, ↓, CTRL+SHIFT+6
  • предоставление общего доступа к текущей сессии
Заметим, что в рамках тестирования намеренно не были рассмотрены возможности программы Get Console по установлению соединения с помощью протоколов Telnet и SSH.

Обзор возможностей программы Get Console


Внешний вид программы простой и лаконичный. Из-за размера экрана внешний вид программы в iPad и iPhone/iPod немного отличается.



Рассмотрим вид интерфейса на iPad. В верхней части слева-направо размещены иконки:
  1. Статус консольного соединения
  2. Настройки программы
  3. Меню управления сессией
  4. Скрыть/отобразить клавиатуру
  5. Скрыть/отобразить панель специальных клавиш
  6. Список часто используемых команд
  7. Посылка комбинации клавиш CTRL+SHIFT+6
  8. Менеджер файлов
  9. Список паролей
  10. Хранилище файлов с логами консольного вывода
Справа расположена панель менеджера буфера обмена. Внизу панель специальных клавиш. Ниже рассмотрим функции подробнее.

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



Настройки программы
В настройках программы доступны следующие разделы:
  • параметры консольного соединения
  • параметры терминала
  • параметры клавиатуры
  • параметры общего доступа к сессии
  • информация о программе
Параметры консольного соединения
Доступные скорости: 1200, 2400, 4800, 9600, 19200, 38400 и 57600 бод. Скорости выше не поддерживаются текущей реализацией программно/аппаратной платформы. По словам разработчика приложения, на скорости 115200 бод фиксируется большое количество ошибок, что приводит с сильному искажению передаваемой и принимаемой информации.
Остальные параметры стандартны для любой терминальной программы.

Параметры терминала
Максимальное количество строк, которые программа может запомнить при выводе информации, составляет 2000. Возможен выбор нескольких цветовых схем и изменения размера шрифта.
В этом же разделе настраиваются списки часто используемых команд и паролей. Крайне удобная функция, особенно при использовании программы iPhone/iPod, где набор на экранной клавиатуре не очень удобный.

Параметры общего доступа к сессии
Данный раздел позволяет настроить параметры общего доступа к сессии. Есть два варианта предоставления общего доступа, используя специальные сервера, расположенные в Интернет и поддерживаемые разработчиком программы Get Console или с помощью собственного сервера. Первый вариант бесплатный и доступен всем пользователям, купившим приложение. Для развёртывания собственного сервера требуется покупка ПО. Цена отличается в зависимости от количества количества встроенных лицензий.

Как работает общий доступ. Первое, для работы данной функции на устройстве должен быть доступ в Интернет. В настройках программы необходимо указать через какой сервер будет работать данная функция (общий или собственный). Далее, после установления с устройством сессии через консоль, Telnet или SSH в меню управления сессией становится доступна кнопка “Share session” (Общий доступ к сессии). При нажатии кнопки, программа устанавливает HTTP или HTTPS соединение с сервером (способ соединения выбирается в параметрах) и предоставляет уникальный PIN-код доступа к данной сессии. Сервер, через который программа установила соединение, имеет Web-интерфейс. Используя браузер пользователь, которому предоставляют общий доступ, заходит на сервер, вводит PIN-код сессии, выданный программой и в окне браузера получает доступ к консоли устройства. Для общего доступа к сессии регистрация на сервере не требуется, достаточно только PIN-кода сессии. При общем доступе пользователи могут выполнять команды в консоли, информация выдаваемая устройством дублируется как в браузер, так и в программу Get Console, т.е. пользователи видят одинаковую картинку.



Диалоговое окно с PIN кодом после установления соединения с сервером:



Вид меню “Настройки программы” на iPad:



Меню управления сессией
Меню позволяет установить новую сессию через консоль или с помощью протоколов Telnet/SSH, завершить текущую сессию, предоставить общий доступ к текущей сессии.



Скрыть/отобразить клавиатуру
Возможность скрыть/отобразить виртуальную клавиатуру. Полезная функция при просмотре длинных листингов выводимых устройством.



Скрыть/отобразить панель виртуальных клавиш
В панели приведены клавиши TAB, CTRL, BRAKE, ?, ↑, ↓, ↵ необходимые для удобной работы с системой команд многих сетевых устройств, например:
  • TAB — автодополнение команды
  • CTRL+… — выполнение различных операций, вызываемых комбинацией клавиш с CTRL, например, переход между различными режимами управления, перехода в начало или конец строки
  • ? — вывод списка доступных команд
  • ↑, ↓ — переход между последними выполненными командами
Список часто используемых команд
Название говорит само за себя. В список вносятся самые часто используемые команды, например, для устройств Cisco это могут быть, sh run, sh ver, conf t, sh ip route.



Посылка комбинации клавиш CTRL+SHIFT+6
Функция специально предназначена для работа с оборудованием Cisco. Данная комбинация клавиш позволяет прервать текущую выполняемую операцию.

Менеджер файлов
Менеджер файлов предназначен для загрузки в iPad/iPhone/iPod готовых конфигурационных скриптов, которые затем могут быть использованы во время настройки устройства. Для загрузки файлов необходимо войти под своей учетной записью на сайт Get Console, загрузить на сервер необходимые файлы и затем, используя менеджер файлов, скачать файлы на устройство.



Менеджер паролей
Функция аналогичная списку часто используемых команд. Представляет из себя преднастраиваемый список слов. Текст хранится в открытом виде.



Хранилище файлов с логами консольного вывода
Если включена опция логирования, то в данном разделе сохраняются логи завершённых сессий. Файлы могут быть выгружены на сайт Get Console для последующего анализа. Для локального просмотра можно использовать встроенный в программу Get Console просмотрщик, либо любой другой текстовый редактор.



Менеджер буфера обмена
Менеджер позволяет выполнять редактирование текста и вставку в консоль текста из буфера обмена или редактора. С помощью редактора также можно просматривать логи предыдущих сессий.
Менеджер может быть использован для оперативной корректировки файла конфигурации с последующем его применением.



Вид интерфейса программы на iPhone:



Тестирование консольного доступа к сетевым устройствам


Для тестирования консольного доступа в нашей лаборатории использовалось следующее оборудование:
Производитель и модель Тип разъёма консольного порта
Маршрутизаторы Cisco 1841 и 2811 RJ-45
Коммутаторы Cisco 2950 и 2960 RJ-45
Модем Zyxel P-791Rv2 RJ-45
Для проверки iPhone/iPad подключался кабелем к консольному порту устройства и после входа в систему управления (командная строка, меню) выполнялись различные команды. Подключение к оборудованию Cisco не вызвало никаких проблем, командная строка доступна сразу после подключения. Это не удивительно, т.к. кабель разработан специально для этого оборудования. Для подключения к модему P-791Rv2 потребовалось изготовление дополнительных переходников, т. к. консольный порт на P-791Rv2 имеет отличное от Cisco назначение контактов. Для устранения этой проблемы был изготовлен переходник RJ-45<->RJ-45. Подобный переходник может быть изготовлен для любого оборудования, например, для устройств с консольным портом в виде разъема DB-9, детали для таких переходников можно приобрести на любом радиорынке или в магазине электронных комплектующих. Ниже приведены фото подключения с помощью iPad:

Маршрутизатор Cisco 1841, коммутатор Cisco 2950



Модем Zyxel P-791Rv2



Во время тестирования были проверены параметры подключения доступные в программе: скорость, количество бит данных, контроль по чётности, количество стоповых бит. Также, в качестве эксперимента было проверено насколько можно увеличить длину консольного кабеля. С помощью бухты кабеля длина была увеличена до 30 метров. При такой длине консольный доступ успешно работал на всех скоростях. Остальные тесты также прошли успешно.

Обзор возможностей функции общего доступа к сессии


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





Выводы


Навряд ли iPad/iPhone/iPod Touch с консольным кабелем смогут заменить сетевому инженеру полноценный ноутбук, но в определённых ситуациях наличие с собой кабеля может значительно облегчить жизнь.

Областями применения консольного кабеля могут быть:
  • Первоначальная настройка устройства, пока на устройстве не заданы IP-параметры.
  • Восстановление работоспособности устройства после аварии, например, сбоя в работе ПО или в случае если с устройством потеряна связь по IP.
  • Оперативная консультация с другими инженерами. Получив консольный доступ к оборудованию инженер предоставляет в режиме реального времени общий доступ к сессии более опытным инженерам.
  • Удаленная настройка оборудования, доступ к которому по IP извне запрещён политикой безопасности.
Tags:
Hubs:
Total votes 71: ↑64 and ↓7 +57
Views 19K
Comments Comments 84