О системе

Общее описание

Система предназначена для организации защищенного доступа пользователей к сервисам через SSH-туннель. Сервисы предоставляются в пределах сегмента локальной сети, к которой организован доступ посредством SSH-туннеля. Сервисами могут быть RDP, VNC , почтовый сервер, FTP, сервер БД и т.д. Сервисы могут иметь статус: «доступен» или «недоступен» (например, по техническим причинам или по заданным в конфигурации временным ограничениям). Безопасность и простота конфигурирования обеспечены открытием единственного внешнего порта для SSH соединения.

Возможные варианты использования с точки зрения пользователя:

  • подключение к удаленному рабочему месту. В этом случае требуется подключение к одному или одновременно нескольким сервисам удаленного сайта с использованием различных протоколов, например Remote Desktop (MS RDP), корпоративный интранет-портал (HTTP(S)), VOIP Client (SIP).
  • техническая поддержка нескольких клиентов. Клиентское приложение может хранить конфигурации разных систем и возможность устанавливать соединение с удаленными компьютерами в разных системах.
  • подключенный пользователь может получить удаленную помощь специалиста технической поддержки путем разрешения активации VNC или MS RDP сервиса на своем компьютере. Пользователь должен выбрать список логинов которым разрешен удаленный доступ к его компьютеру.
  • установка защищенного соединения для доступа к удаленной корпоративной БД.

Система состоит из следующих компонентов:

  1. SSHM-сервер, обеспечивающий получение клиентскими приложениями параметров доступа к сервисам. Посредством SSHM-сервера администратор системы производит настройку доступных в системе сервисов и конечных точек, а также прав доступа групп и/или отдельных пользователей к сервисам
  2. RSSSHClient – приложение-клиент, устанавливаемое на удаленном компьютере и обеспечивающее открытие SSH-туннеля для доступа к конечным точкам. Пользователь вводит единственный пароль к своему профайлу. Происходит открытие SSH-туннеля и отправка запросов по нему для получения списка доступных для пользователя сервисов и конечных точек, к которым пользователь может подключиться.
  3. RSSSHAgent – опционально устанавливается на компьютере, являющимся конечной точкой. Предназначен для автоматизации регистрации конечных точек и автоматического обновления IP-адресов конечных точек на SSHM-сервере.

Для использования системы SSH Master системный администратор должен установить сервер с ОС Linux, скачать и запустить инсталляционный пакет. В процессе инсталляции администратору будут заданы базовые вопросы, ответы на которые будут использоваться при начальной конфигурации SSHM-сервера. После окончания процесса инсталляции администратор может открыть конфигурационную веб-страницу SSHM-сервера и произвести дополнительную настройку (создать новых пользователей, добавить сервисы, конечные точки, а также задать их параметры).

Используя веб-интерфейс SSHM-сервера администратор системы может:

  • Управлять учетными записями пользователей;
  • Управлять списком доступных сервисов и конечных точек;
  • Управлять таблицей доступных временных интервалов для удаленного подключения к конечным точкам;
  • Разрешать доступ только с авторизированных компьютеров. После самого первого успешного подключения компьютер может быть добавлен в авторизированные. В случае утери компьютера (ноутбука, смартфона) он может быть исключен администратором из списка авторизированных;
  • Просматривать лог пользовательского доступа;
  • Производить блокировку пользователей по IP-адресам.

Права доступа

Система прав доступа – накопительная, с учетом всего множества настроек прав, доступных для пользователя. Наивысший приоритет имеет запретительное право (deny) над разрешительным (allow) и уровень отдельного пользователя (user) над уровнем группы (group). Система прав доступа предусматривает эффективный диапазон, в течение которого действует данное право доступа.

Структура данных

Для хранения информации о сервисах, конечных точках и их доступности для групп пользователей и/или отдельных пользователей используется следующая структура данных в БД:

db_svc

 

Таблицы app_group, app_user и app_user_group являются таблицами ядра SSHM-сервера для хранения информации о пользователях, их группах, а также о вхождении пользователей в группы (выделены цветом).

Таблица svc_service содержит общую информацию о типах сервисов. В общем случае это наименование (name) и набор параметров и настроек (params) в формате xml.

Таблица scv_endpoint содержит информацию о «конечных точках» сервиса. Это могут быть удаленные рабочие столы, ftp или smtp-аккаунты и т.п. Каждый сервис может иметь одну или более конечных точек, если они применимы в контексте данного сервиса. Поле name –наименование конечной точки, params – параметры в формате XML.

Таблицы svc_service_group и svc_service_user содержат информацию о правах доступа пользователя или группы к сервисам и отдельным конечным точкам сервисов.

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

Таблица svc_endpoint_access_time содержит набор разрешенных временных интервалов подключений к конечной точке для пользователя по дням недели (понедельник-воскресенье)

Таблица svc_endpoint_connection содержит список текущих подключений приложений-клиентов к конечным точкам, с указанием сессии клиента и моментом установления подключения.

Таблица svc_endpoint_heartbeat содержит таймштампы активности конечных точек. Используется для индикации статуса конечной точки в RS SSH Client

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

Таблица svc_blocked_ip содержит список заблокированных ip-адресов с временем начала блокировки.

Таблица svc_log содержит лог событий в системе