25.11.2019

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

Из-за бессистемного развития ИТ-инфраструктуры мы получили разношерстный парк "железа" и огромное количество слабо связанных между собой программных продуктов. Процесс упорядочения был долгим и довольно болезненным, но в итоге удалось создать виртуальную частную сеть и пересадить пользователей на тонкие клиенты. Нам даже не пришлось отказываться от устаревших персоналок — они позволяют работать с размещенными в дата-центрах провайдеров (попутно мы сократили до минимума собственный "железный" парк) серверами терминалов. Были решены вопросы бесперебойной работы ИТ-систем и информационной безопасности, настроено резервное копирование данных и т.д. и т.п. Беда пришла, откуда не ждали: офисы фирмы разнесены по городу территориально и в каждом есть хотя бы несколько ключей для защиты лицензионного ПО, доступа к банковским сервисам, юридически значимому ЭДО или к торговым площадкам. 1С (HASP), Рутокен, ESMART Token USB 64K — таков далеко не полный список используемых моделей. Нам потребовалось организационное или техническое решение, способное рулить этим зоопарком централизованно и найти его оказалось непросто.


Проблемы…

Реформы в ИТ-инфраструктуре не повлияли на организацию доступа к ключам и токенам. Их хранение на стороне пользователей создавало очевидные проблемы с безопасностью и ряд технических сложностей. К тонкому клиенту не подключишь USB-свисток для лицензионного ПО на сервере — после переезда большей части сохранившегося "железного" серверного парка в коммерческий дата-центр и перехода на VPS вставлять USB-устройства стало особо некуда, к тому же держать их вне помещений фирмы неудобно.

Мы также не хотели доверять пользователям защищенные носители информации с квалифицированными ЭЦП — раньше они выдавались под роспись в специальных журналах и сдавались в конце рабочего дня, но этот вариант хорош только для самоуспокоения. Безопасный доступ к токенам таким способом не обеспечишь: даже сейф на рабочем месте не дает гарантии от безалаберного сотрудника, бросившего самое дорогое и нужное рядом с монитором, прямо под налепленным на него стикером с паролями и кодами. К тому же без запроса к службе безопасности нельзя было понять, кто из сотрудников использует тот или иной токен в определенный момент времени. Не то, чтобы защищенные носители часто терялись или передавались кому попало, но определенный организационный бардак имел место. Такие случаи бывали, тем более, что один и тот же ключ иногда нужен сотрудникам разных офисов — это превращало учет и контроль в головную боль отдела безопасности. В процессе реформ от бардака стоило избавиться, не затратив на это слишком много денег.

…и решения

Долго искать единое решение для централизованного хранения ключей не пришлось — других относительно бюджетных вариантов кроме USB over IP на рынке нет. Для реализации подхода доступна целая куча софта (включая бесплатный), с помощью которого все USB-устройства защиты можно собрать в одном месте и обеспечить авторизованный доступ к ним через сеть с использованием надежного шифрования. Изначальная идея сделать сервер ключей своими силами в серию не пошла: слишком много мороки с настройкой, в процессе которой могут вылезти проблемы совместимости. К тому же довольно непросто собрать сервер общего назначения и вставить в него более четырех десятков устройств USB. Сервер при этом должен обеспечивать не только безопасный доступ к ключам, но и защищать их от физического повреждения, а также иметь возможность удаленной перезагрузки "залипшего" USB-устройства по питанию. В итоге мы пришли к необходимости покупки специализированного решения со встраиваемым ПО, в котором проблемы безопасности и совместимости решены производителем из коробки.

Выбор сервера/концентратора

Если не считать китайских устройств неизвестных производителей (доверять им квалифицированные ЭЦП не хотелось), подходящих под наши запросы аппаратных концентраторов USB over IP на рынке не так много. Рассматривались модели западных вендоров (Digi Anywhereusb, SEH myUTN и т. д.), но они не позволяют подключить все наши устройства USB и стоят слишком дорого: скажем цена Anywhereusb на 14 портов превышает $1800. К тому же непонятно, как эти концентраторы будут работать с отечественными защищенными токенами — вопрос совместимости и наличия локальной поддержки тут, пожалуй, самый важный. В итоге мы остановились на российской разработке DistKontrolUSB-64 на 64 порта с возможностью установки в стойку. Производитель не заявляет стопроцентной совместимости со всеми ключами, но если верить специалистам техподдержки, пока найти несовместимый вариант на просторах нашей необъятной родины им не удалось. Цена устройства оказалась ниже, чем у импортных аналогов с меньшим количеством портов —106 500 рублей.


Возможности DistKontrolUSB-64

Если коротко, концентратор дает доступ к своим портам и/или подключенным к ним устройствам USB через сеть, как если бы они были локальными. Для этого на удаленном хосте нужно установить специальное клиентское ПО, которое доступно для актуальных версий Windows (настольных и серверных), GNU/Linux и OSX. Доступ к портам и устройствам можно ограничивать по логинам/паролям и IP-адресам, весь трафик между концентратором и клиентом шифруется с использованием сертификатов SSL/SSH (включая самоподписанные), которые можно импортировать или создать прямо на устройстве, а действия пользователей протоколируются.


Проблем с зоопарком ключей не возникло — все имеющиеся прекрасно заработали на Windows в физических и виртуальных средах в двух использующихся у нас платформах виртуализации — VMWare и Hyper-V. Отметим, что установленные в системе криптопровайдеры работали с удаленными портами как с родными, поэтому все токены ЭЦП под Windows тоже завелись. Работу в Linux и OSX мы не тестировали, поскольку не используем эти ОС.


Напоследок стоит отметить пару интересных моментов: как и большинство сетевых устройств, DistKontrolUSB-64 управляется через веб-интерфейс, при этом можно работать через защищенный протокол HTTPS, а в режиме командной строки соединение осуществляется через SSH — это намного лучше открытых всем ветрам HTTP и Telnet. Также концентратор поддерживает IPv6, ограничивает питание портов USB по току и отключает их при перегреве. К тому же в этой модели предусмотрен плавный запуск портов, чтобы уменьшить вызванные высокой емкостью нагрузки пусковые броски.

Итоги

Сейчас концентратор стоит в отдельном помещении центрального офиса и физический доступ к нему невозможен без контроля сотрудников службы безопасности. Даже у сисадминов не получится бесконтрольно извлечь или установить очередное устройство в порт DistKontrolUSB-64 — для этого им придется обращаться к безопасникам и расписываться в журналах. Количества портов с запасом хватает для всех ключей, а особых проблем с их подключением к физическим и виртуальных серверам у нас пока не возникало (мелкие трудности помогла решить техподдержка "ДистКонтрол"). Самое главное, больше нет головной боли с передачей токенов между филиалами — все настраивается удаленно. Есть и недостатки. При централизованной схеме хранения ключей у нас появилась единая точка отказа. Сам концентратор пока не подводил, но случались кратковременные проблемы с каналами передачи данных: если в удаленном офисе ложится интернет, доступ к ключам у него пропадет. С другой стороны, поскольку мы перевели свой серверный парк в коммерческий дата-центр и купили VPS у облачного провайдера, работать без доступа к интернету офис не сможет в принципе. В центральной конторе есть резервные каналы связи, поэтому там сбоев еще не было. В целом за удобство и безопасность нужно платить — даже при наличии единой точки отказа централизованная схема все равно лучше.