- •Управление сетевым оборудованием средствами клиентов мгновенных сообщений
- •Тюмень, 2012 содержание
- •Введение
- •Обзор протоколов
- •Классические протоколы управления сетевым оборудованием
- •Протоколы передачи мгновенных сообщений
- •Выбор протоколов взаимодействия с сетевым оборудованием
- •Архитектура взаимодействия управляющих протоколов.
- •Анализ рисков информационной безопасности
- •Заключение
- •Список литературы
Архитектура взаимодействия управляющих протоколов.
Данная глава посвящена обзору компонентов приложения. Естественно, что кроме базовых компонентов, реализующих функционал управляющих протоколов, необходимы компоненты, отвечающие за конфигурацию приложения и управление потоком ввода\вывода (включая безопасность).
|
Рис. 1 Логическая схема приложения |
ICQ Client — данный компонент содержит набор методов, используемых для передачи мгновенных сообщений по протоколу OSCAR. При вызове подключения, компонент устанавливает соединение с сервером login.icq.com по протоколу HTTPS.
Server App — промежуточный графический компонент между ICQ Client и сервером трансляции. Отображает весь ввод\вывод на форму логгирования. В дальнейшем этот компонент планируется упразднить и сделать запуск приложения автоматическим в виде службы Windows при загрузке операционной системы.
|
Рис. 2 Графический компонент Server App |
Так же этот компонент содержит набор управляющих команд, список которых приведен ниже:
Команда |
Описание |
!list |
Возвращает список подключений, доступных для текущего пользователя. |
!open <name> |
Открывает соединение <name>. |
!close |
Закрывает текущее активное соединение. |
!async |
Активирует асинхронный режим чтения (активирован по умолчанию). |
!sync |
Активирует синхронный (блочный) режим чтения. |
Таблица 1. Управляющие команды компонента Server App
Terminal Formatter — данный компонент предназначен для форматирования ввода\вывода. При получении команд от пользователя, в случае, если команда является служебной – компонент посылает оборудованию необходимые escape-символы\последовательности. Далее приведен список служебных команд:
Команда |
ASCII-код (dec) |
!c |
\03 (CTRL + C) |
!t |
\09 (TAB) |
!rn |
\13\10 (ENTER) |
!e |
\30 (CTRL + SHIFT + 6) |
!ret |
\30\120 (CTRL + SHIFT + 6 + x) |
Таблица 2. Служебные команды сервера трансляции
При получении ответных данных от оборудования, компонент проверяет вывод на наличие любой учетной информации. В случае нахождения таких данных, они удаляются из вывода, точнее заменяются на строку !<output omitted>, что свидетельствует о том, что информация присутствует в конфигурации, но не отображается в целях безопасности. В дальнейшем планируется расширить список служебных команд (в зависимости от оборудования) и дать пользователю возможность самому назначать служебные команды.
XML Config Parser — данный компонент служит для создания и редактирования файла конфигурации учетной информации оборудования. Сам файл конфигурации представляет собой обычный XML файл. При запуске приложения данный компонент проверяет наличие файла конфигурации, если он существует, данные из него загружаются в приложение и используются при создании нового подключения. Также данный компонент содержит методы для получения информации о списке подключений доступных клиенту, который в данный момент делает запрос и может ли текущий клиент вообще обращаться к серверу (зарегистрирован ли UIN в файле конфигурации).
AES — используется компонентом XML Config Parser для шифрования и расшифрования файла конфигурации на 256-битнном ключе.
GHOST Hash, Cipher — используется компонентом XML Config Parser для хэширования пароля пользователя. Результат хэш-функции используется как ключ для шифрования и расшифрования файла конфигурации компонентом AES. Хэш-функция реализована по стандарту ГОСТ Р 34.11-94.
Configuration Assistant — графическое приложение для создания и редактирования файла конфигурации. Использует компонент XML Config Parser.
|
Рис. 3 Интерфейс компонента Configuration Assistant |
Tamir.SharpSSH, Minimalistic Telnet и Serial Connector реализуют подключения по протоколам SSH, Telnet и RS-232 соответственно.
IConnection — единый интерфейс для компонентов Tamir.SharpSSH, Minimalistic Telnet и Serial Connector.
Coordinator — центральный компонент, управляющий терминированием подключений и вводом\выводом.
На рис. 4 приведен пример структуры системы: практически для каждой операционной системы существует OSCAR-совместимый клиент, который должен взаимодействовать с сервером ICQ по протоколу HTTPS. В управляемой системе есть сервер, на котором установлено данное приложение, которое так же взаимодействует с сервером ICQ по HTTPS. К серверу, сетевое оборудование может быть подключено как по консоли (RS-232) так и по сети (через управляющую подсеть). Заметим также, что кроме сетевого оборудования, через ICQ клиент можно управлять и серверами на базе операционных систем Unix или Linux, т.к. обычно в них встроен сервер Telnet и\или SSH.
|
Рис. 4. Пример структуры системы |