поиск по сайту
Особенности реализации терминального клиента с поддержкой аппаратной идентификации на базе ОС GNU/Linux
Бажитов И.А., ОКБ САПР

Особенности реализации терминального клиента с поддержкой аппаратной идентификации на базе ОС GNU/Linux

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

В связи с этим, на передний план выходят вопросы, которым ранее уделялось недостаточно внимания, в частности - проблема идентификации пользователя на терминальном сервере(ТС). На смену обычному вводу имени пользователя с клавиатуры приходят механизмы аппаратной идентификации. В этом случае пользователь представляется серверу посредством физического устройства, с которого считывается определенный параметр. Примером успешного решения в данной области является использование ПАК СЗИ НСД "Аккорд-NT/2000" совместно с ПСКЗИ ШИПКА. На ТС устанавливается собственно сам ПАК, состоящий из контроллера "Аккорд", монитора разграничения доступа к объектам ОС, а также утилит администрирования. ТК, в свою очередь, используют ПСКЗИ ШИПКА для аппаратной идентификации пользователя на ТС.

В типичной реализации модели "ТК-ТС" сервером являются одна или несколько мощных машин, а в роли ТК выступает множество относительно низко производительных рабочих станций. При этом ТК могут быть как специализированными устройствами, так и вычислительными машинами общего назначения. Во втором случае, как правило, оборудование для ТК - это отслужившие свой век ПК с небольшим объемом памяти и малыми вычислительными мощностями. Для использования функционала ПСКЗИ ШИПКА в ОС клиента устанавливаются необходимые драйвера и библиотеки, либо, в случае отсутствия ОС на ТК, по сети загружается специально подготовленный образ Windows CE. Однако в ряде случаев данный вариант реализации программной части ТК может быть неприемлем для организации:

l        высокая совокупная стоимость владения вкупе с нерациональным использованием функционала ОС, установленной на ТК

l        необходимость обеспечения различных вариантов загрузки ОС, как то: с жесткого диска, с CD-ROM, с flash-носителя, по протоколу TFTP и так далее

l        необходимость использования единой конфигурации системы для разного оборудования и способов загрузки в целях облегчения задачи администрирования ТК

Таким образом, возникает необходимость поиска альтернативы использованию ОС Windows на ТК, причем выбор нужно производить из систем нетребовательных к ресурсам и предоставляющих возможность тонкой настройки компонентов своего ядра. Данным требованиям вполне соответствует GNU/Linux - свободно распространяемая система с открытыми исходными кодами.

Среди множества дистрибутивов GNU/Linux существуют решения, предназначенные специально для работы с ТК. Одно из них называется Thinstation. В основе данного дистрибутива лежит среда для настройки и сборки образа ОС, предоставляющая набор конфигурационных файлов и скриптов, с помощью которых можно легко и быстро добавить стороннее ПО, настроить необходимые параметры системы, а также создать образ для различных способов запуска ОС, в том числе и перечисленных выше. При этом нет необходимости производить настройку системы для каждого конкретного способа загрузки и аппаратного обеспечения, так как в процессе загрузки происходит автоматическое определение используемого оборудования. Также стоит отметить, что наряду с традиционными способами загрузки ОС, описанными выше, появляется еще один вариант: образ ОС  можно прошить непосредственно в память ПСКЗИ ШИПКА и, таким образом,  использовать ее в связке с разным оборудованием в качестве ТК с поддержкой аппаратной идентификации пользователя.

Обмен данными между ТС и ТК происходит, в общем случае, с использованием как различных технологий связи, так и нескольких протоколов транспортного уровня. Исходя из этого, логично использовать для передачи данных протокол прикладного уровня, не зависящий от нижележащих транспортных протоколов. Для терминальных решений, с серверной частью, работающей под управлением ОС Windows, самыми распространенными  протоколами, обладающими данным свойством, являются Remote Desktop Protocol (RDP) и Citrix Independent Computing Architecture (ICA). Передача данных в обоих случаях реализована с помощью технологии "виртуальных каналов". Каждая функциональность представляет собой отдельный поток данных в "виртуальном канале" между клиентом и сервером, не зависящий от используемого  протокола транспортного уровня, будь то TCP, SPX или какой-либо другой. Таким образом, естественным выглядит решение о добавлении нового канала для обмена данными, необходимыми в процессе авторизации пользователя.

Таким образом, для обеспечения надежной защиты от НСД, при использовании технологии терминального доступа, необходимо опираться на механизмы аппаратной идентификации. В то же время, из-за специфики аппаратного обеспечения ТК, а также наличия возможных ограничений на ПО, приходится выбирать ОС, обладающую относительно низкими системными требованиями, но, в то же время, поддерживающую современное оборудование, имеющую в своем составе прикладное ПО для работы с протоколами RDP и ICA и предоставляющую возможность загрузки различными способами. ОС GNU/Linux, и в частности дистрибутив Thinstation, удовлетворяют этим требованиям и на их основе возможно построение ТК с поддержкой аппаратной идентификации, что и было осуществлено на практике.


ФорумФорум
Форум ОКБ САПР
Вопросы специалистовВопросы специалистов
Вопросы, которые нам присылают, и наши ответы на них