Средства терминального доступа
Как работает терминальный доступ
Средства Microsoft Windows для организации терминального доступа
Терминальные службы Windows 2000 Server и Windows Server 2003
Лицензирование доступа через терминальные службы Windows
Удаленное управление рабочим столом Windows XP
Citrix MetaFrame Presentation Server
Citrix MetaFrame XP Presentation Server for Windows
Citrix MetaFrame Presentation Server for UNIX
Другие средства удаленного доступа к приложениям
В настоящей статье речь пойдет о средствах терминального доступа, с помощью которых осуществляется удаленное выполнение приложений. Эти продукты при грамотном применении позволяют сэкономить немалые средства, затрачиваемые компаниями на создание и поддержку IT-инфраструктуры, а именно на приобретение аппаратного и программного обеспечения, установку и сопровождение бизнес-приложений.
Немного истории
римерно 20-30 лет назад при построении информационных систем наиболее популярной была модель «хост-компьютер плюс пользовательские терминалы», реализованная на базе мэйнфреймов или мини-ЭВМ. Характерной особенностью такой системы была полная неинтеллектуальность терминалов — их работой управлял хост-компьютер. Данный подход имел некоторые несомненные достоинства: пользователи такой системы могли совместно использовать ресурсы, находящиеся в распоряжении компьютера, такие как память, процессор, внешние устройства, а централизация ресурсов упрощала эксплуатацию этой системы. Как правило, терминалы того периода работали исключительно в текстовом режиме.
С появлением персональных компьютеров и локальных сетей о терминальном доступе на какое-то время забыли: персонализация окружения пользователя, не достижимая при терминальном доступе, выглядела долгое время весьма привлекательной и лишь постепенно системные администраторы осознавали проблемы, которые она может создать. Однако в небытие данный способ доступа не ушел. Если на многих практически не автоматизированных в ту пору предприятиях нашей страны начался повальный бум островковой автоматизации с помощью персональных компьютеров, то на Западе до сих пор многие приложения для мэйнфреймов активно эксплуатируются: какой смысл вкладывать средства в замену работающего приложения, если оно все еще устраивает внедрившую его компанию? При этом, естественно, возникла необходимость обеспечения доступа к приложениям, выполняющимся на мэйнфреймах, с персональных компьютеров, а затем появились и средства терминального доступа, предоставляющие пользователю персонального компьютера доступ к таким приложениям с помощью монитора и клавиатуры ПК.
Помимо доступа к приложениям на мэйнфреймах весьма привлекательным выглядит и доступ к приложениям, выполняющимся на других платформах, например на UNIX-серверах или на компьютерах под управлением серверных версий Windows, при этом желательна возможность предоставления удаленному пользователю не только текстового, но и графического пользовательского интерфейса приложения. Естественно, по мере появления потребности в таких средствах они тоже появились на рынке программного обеспечения, равно как и аналогичные средства доступа к подобным приложениям с мобильных устройств и специализированных терминальных рабочих станций (например, под управлением Windows CE — Compaq T1010 и Evo Thin Client T20).
Согласно прогнозам аналитиков, современный рынок вычислений на основе средств терминального доступа будет расти, несмотря на все более широкое распространение Web-технологий, поскольку последние не в состоянии заменить собой большое количество использующихся сегодня 32-разрядных приложений1 , и к 2005 году оборот этого рынка достигнет 3 млрд. долл. Сегодня лидерами данного рынка являются компании Citrix, Microsoft и Tarantella. Продуктам именно этих компаний мы и уделим основное внимание в данном обзоре.
Как работает терминальный доступ
бщий принцип работы средств терминального доступа заключается в следующем. Пользователь запускает на рабочей станции клиентское приложение средства терминального доступа и с его помощью обращается к удаленному компьютеру-серверу, содержащему соответствующую серверную часть данного средства. В случае успешной аутентификации серверная часть средства терминального доступа создает для пользователя собственный сеанс работы, в котором либо вручную самим пользователем, либо автоматически (это зависит от настроек сеанса и прав доступа) в адресном пространстве сервера запускаются нужные пользователю приложения. При этом пользовательский интерфейс запущенных таким образом приложений доступен пользователю рабочей станции в окне клиентской части средства терминального доступа и пользователь с помощью клавиатуры и мыши рабочей станции может управлять данным приложением. По окончании сеанса пользователя все приложения, выполнявшиеся в нем, закрываются.
При подобном подходе пользователю реально передается графическое изображение пользовательского интерфейса (в ряде случаев — только изменения в изображении), а от него передаются на сервер сведения о его манипуляциях с мышью и клавиатурой. Это означает, что ничто не препятствует тому, чтобы клиент и сервер выполнялись под управлением разных платформ, в том числе и несовместимых между собой. Иными словами, таким способом можно предоставить пользователю Windows доступ к UNIX-приложению (или наоборот). Иногда доступ может быть осуществлен и через Web-интерфейс.
Преимущества указанного подхода становятся очевидны при наличии большого количества рабочих станций или в условиях повышенных требований к безопасности и централизации хранения данных. Если доступ к приложениям осуществляется с помощью средства терминального доступа, то на рабочие станции устанавливаются только операционная система и клиентская часть этого средства; сами же приложения, с которыми работают пользователи, устанавливаются на сервер, что существенно сокращает затраты, связанные с сопровождением рабочих станций, а также снижает требования к их аппаратному обеспечению. Отметим, однако, что требования к аппаратной части сервера при этом зависят от того, сколько пользователей одновременно работают с терминальным сервером и какие именно приложения они запускают, и могут быть довольно высокими, поскольку каждый пользователь открывает на сервере собственный сеанс работы и запускает свои копии приложений, потребляющие определенную часть ресурсов сервера. Однако существуют средства организации терминального доступа, способные работать с кластерами серверов и осуществлять баланс загрузки.
Еще одним преимуществом применения терминального доступа является возможность обеспечения безопасности доступа к корпоративным данным. Поскольку приложения выполняются на удаленном сервере, у конечного пользователя нет ни клиентской части используемых в компании серверных СУБД, ни тем более доступа к файлам настольных СУБД, что существенно снижает риск несанкционированного копирования подобных данных.
Ниже мы кратко рассмотрим наиболее распространенные способы реализации средств терминального доступа. Начнем мы с терминальных служб и средств удаленного управления рабочим столом Windows (как с наиболее простых в применении), а затем перейдем к продуктам других лидеров рынка — компаний Citrix и Tarantella.
Средства Microsoft Windows для организации терминального доступа
Терминальные службы Windows 2000 Server и Windows Server 2003
Одним из простейших (и наименее затратных) способов организации удаленного доступа является применение терминальных служб серверных версий Windows, доступных для следующих версий Windows:
• Windows NT Server 4.0, Terminal Server Edition (первая версия средств терминального доступа, созданная совместно с компанией Citrix);
• Windows 2000 Server, Windows 2000 Advanced Server, Windows 2000 Datacenter Server;
• Windows Server 2003 (все редакции).
Ниже на примере терминальных служб Windows мы опишем процесс установки и настройки средств терминального доступа.
Чтобы применять терминальные службы, следует с помощью приложения в панели управления Add/Remove Programs (опция Add/Remove Windows Components) установить терминальные службы на компьютер, содержащий серверную версию Windows (например, Windows 2000 Server — рис. 1); отметим, что в случае Windows 2000 Server установка этих служб по умолчанию отключена.
На этот же компьютер устанавливаются и приложения, к которым предоставляется доступ.
Средства управления параметрами работы терминальных служб Windows 2000 Server достаточно просты (они содержатся в стандартном MMC-приложении, доступном в разделе Administrative Tools панели управления), но набор параметров сеанса, на которые можно повлиять, весьма ограничен (рис. 2).
Имеется и утилита просмотра текущих соединений Terminal Services Manager, также доступная в разделе Administrative Tools панели управления и позволяющая узнать о сеансах подключенных пользователей и при необходимости отправлять им сообщения (рис. 3).
Для осуществления доступа к терминальным службам Windows 2000 Server с рабочих станций на них следует установить клиент терминальных служб. 32-разрядный клиент терминальных служб может быть установлен и с дистрибутива Windows 2000. При необходимости дискеты с соответствующим клиентским программным обеспечением для 16- и 32-разрядных версий Windows можно создать непосредственно на сервере с помощью приложения Terminal Services Client Creator, доступного в разделе Administrative Tools панели управления. Кроме того, на Web-сайте компании Microsoft можно найти и клиент терминальных служб для Mac OS X 10.1 (он носит название Remote Desktop Connection Client 1.0.1 for Mac); существует также клиент терминальных служб для операционных систем Pocket PC 2002 и Windows Mobile 2003.
Для удаленного доступа к приложениям на рабочей станции следует запустить сеанс удаленного доступа, вызвав приложение Remote Desktop Connection (оно находится в программной группе Acсessories=>Communications — рис. 4), ввести имя пользователя и пароль, а затем осуществить установку параметров сеанса.
После соединения с сервером и создания сеанса рабочий стол и приложения сервера будут доступны либо в оконном, либо в полноэкранном режиме (рис. 5).
Для доступа к терминальным службам через Web-интерфейс можно воспользоваться приложением Terminal Service Advanced Client (TSAC), представляющим собой элемент управления ActiveX, выполняющийся в адресном пространстве Microsoft Internet Explorer.
По сравнению с Windows 2000 терминальные службы Windows Server 2003 (и протокол обмена данными между клиентом и сервером Remote Display Protocol) претерпели некоторые изменения. В частности, при применении Windows Server 2003, Enterprise Edition можно осуществлять баланс загрузки серверов с помощью средства Session Directory; возможно динамическое управление параметрами сессии; клиентским сеансам доступны разрешения экрана вплоть до 1600Ѕ1200 и режима True Color (терминальные службы Windows 2000 обладают определенными ограничениями цветового разрешения при выполнении клиентских сеансов). Кроме того, клиенты терминальных служб Windows Server 2003 могут иметь доступ к своим локальным ресурсам (внешним устройствам, дискам и т.д.) изнутри терминального сеанса.
Лицензирование доступа через терминальные службы Windows
Лицензирование доступа через терминальные службы осуществляется следующим образом. Все устройства, использующие доступ к терминальным службам, должны быть снабжены лицензией Windows 2000 Server Client Access license (CAL) или BackOffice family CAL, предоставляющей право доступа к Windows 2000 Server. Кроме того, все устройства, кроме работающих под управлением операционных систем Windows 2000 Professional и Windows XP Professional, должны быть снабжены лицензией Windows 2000 Terminal Services CAL, дающей право доступа собственно к терминальным службам. Помимо этого существует также лицензия Terminal Services Internet Connector license, которая позволяет осуществлять до 200 анонимных одновременных соединений с терминальными службами через Интернет и предназначена для провайдеров приложений. Терминальные службы Windows дают возможность создавать так называемые серверы лицензий, хранящие сведения о клиентских лицензиях.
Кроме того, следует также соблюдать правила лицензирования программного обеспечения, которое будет запускаться с помощью терминальных служб. Обычно при работе в подобном режиме число приобретаемых лицензий равно числу подключаемых рабочих станций, несмотря на то что реально на сервер устанавливается всего одна копия приложения (например, именно таким образом лицензируются приложения Microsoft Office).
Удаленное управление рабочим столом Windows XP
Удаленное управление рабочим столом Windows XP технически реализуется так же, как и доступ к терминальным службам. На компьютер, удаленно управляющий рабочим столом Windows XP, должно быть установлено соответствующее клиентское программное обеспечение, содержащееся в комплекте поставки этой операционной системы и сходное по функциональности с клиентским программным обеспечением терминальных служб.
Отметим, однако, что назначение средств удаленного доступа к рабочему столу совершенно иное, нежели назначение терминальных служб, — эти средства нужны для осуществления удаленной технической поддержки. Именно поэтому данные средства поддерживают только один сеанс удаленного подключения, при этом на управляемом компьютере в этот момент не должно быть запущенных пользовательских сеансов.
Отметим, что удаленный доступ к приложениям с помощью средств Windows не предполагает применения отличных от Windows платформ в качестве серверов, а выбор клиентских платформ в этом случае весьма ограничен. При необходимости использования для терминального доступа платформ, отличных от перечисленных, применяются продукты независимых производителей. Ниже мы рассмотрим наиболее популярный продукт этого класса — Citrix MetaFrame Presentation Server.
Citrix MetaFrame Presentation Server
омпания Citrix Systems одной из первых создала средства терминального доступа и является одним из лидеров рынка подобных средств: сегодня более 24 млн. пользователей работают с приложениями, доступ и обслуживание которых осуществляются с помощью технологий Citrix.
Citrix MetaFrame XP Presentation Server for Windows
Первый продукт подобного класса, реализующий поддержку тонких клиентов на специальных терминалах, был создан в 1995 году. Он носил название WinFrame и предназначался для Windows NT 3.5. В 1997 году компании Microsoft и Citrix подписали соглашение о совместной разработке, согласно которому Microsoft могла использовать технологию Citrix и в соответствии с которым был создан сервер Microsoft Windows NT 4.0 Terminal Server Edition.
В настоящее время Citrix, применяя средства Windows 2000 Server, разработала собственную архитектуру для воспроизведения пользовательского интерфейса на терминале — Independent Computing Architecture (ICA). Основная идея ICA заключается в том, что по сети передаются только клавиатурный ввод, сведения о манипуляциях мышью и обновления изображения на экране, что ограничивает необходимую для ICA полосу пропускания менее чем до 20 Кбит/с. Именно эта архитектура применяется в продукте Citrix MetaFrame XP Presentation Server, предназначенном для работы совместно с терминальными службами Windows 2000 Server и Windows Server 2003.
Для использования данного продукта на серверный компьютер следует установить терминальные службы Windows и серверную часть Citrix MetaFrame XP Presentation Server, а на рабочие станции — клиентскую часть Citrix MetaFrame XP Presentation Server для соответствующей платформы; при этом, как и в случае применения терминальных служб Windows, дистрибутив клиентской части можно создать на серверном компьютере.
В составе различных редакций Citrix MetaFrame XP содержится множество инструментов для управления ресурсами, пользователями и доступом к приложениям. Если терминальные службы Windows позволяют осуществлять весьма ограниченное число настроек, то с помощью утилит, входящих в состав Citrix MetaFrame XP Presentation Server, можно установить весьма широкий спектр параметров сеанса (размер окна, разрешение экрана, количество цветов, правила работы с аудиоданными), вплоть до создания сеансов, запускающих только одно конкретное приложение в оконном режиме и завершающихся по окончании его работы. Кроме того, средства управления Citrix Enterprise Management Tools (Resourse Management Services, Installation Management Services, Secure ICA Services и Load Balancing Services) позволяют осуществлять подробный мониторинг всей распределенной системы, анализ использования ресурсов в пользовательских сеансах, управление ресурсами и безопасностью доступа к приложениям (ICA применяет для защиты информации шифрование с помощью алгоритма RSA), а также реализовывать оптимальное управление так называемыми серверными фермами — кластерами серверов, содержащих однотипные приложения, осуществляя балансировку их нагрузки (рис. 6).
Во время сеанса доступа к приложениям, управляемым Citrix MetaFrame XP, пользователи могут получать доступ к локальным и удаленным ресурсам и периферийным устройствам, включая локальные принтеры, копировать и переносить данные между локальными и удаленными приложениями, обращаться к локальным COM-портам (заметим, что в терминальных службах Windows 2000 подобные возможности существенно ограниченны).
Архитектура ICA поддерживает доступ к терминальным серверам с рабочих станций на платформах DOS, Windows, Mac OS, UNIX, Linux, OS/2 и Java, а также из браузеров, использующих модули расширения Netscape или элементы управления ActiveX для Internet Explorer.
Средство Program Neighborhood, разработанное Citrix, позволяет администраторам конфигурировать рабочие станции пользователей, в том числе устанавливать пиктограммы для доступа к различным типам сеансов (рис. 7).
Отметим, что, несмотря на многочисленные функциональные возможности, и серверная, и клиентская части Citrix MetaFrame XP Presentation Server for Windows, как показывает наш опыт работы с этим продуктом, довольно просты в установке и настройке.
Говоря о вопросах лицензирования, подчеркнем, что помимо серверных и клиентских лицензий Citrix MetaFrame XP для применения Citrix MetaFrame следует приобретать те же лицензии Terminal Services CAL, что и в случае использования терминальных служб, поскольку Citrix MetaFrame XP является дополнительным продуктом по отношению к терминальным службам Windows, который осуществляет доступ к ним с помощью ICA.
Когда же следует применять Citrix MetaFrame XP Presentation Server, не ограничиваясь только средствами терминального доступа Windows? Как правило, это удобно в случае, если компания имеет обширный парк разнородных рабочих станций, в том числе либо морально устаревших, либо управляемых операционными системами, отличными от Windows, — клиенты Citrix MetaFrame существуют для большего количества платформ, нежели клиенты терминальных служб Windows. Однако наиболее перспективным представляется использование данного продукта на очень крупных предприятиях, предъявляющих повышенные требования к надежности приложений и скорости обмена данными между серверами и терминалами, поскольку Citrix MetaFrame XP Presentation Server позволяет эффективно управлять серверными фермами и распределением ресурсов, что подтверждается рядом успешных российских проектов по его внедрению.
Citrix MetaFrame Presentation Server for UNIX
Помимо средств терминального доступа к серверным версиям Windows компания Citrix Systems поставляет программный пакет Citrix MetaFrame Presentation Server for UNIX, предоставляющий доступ к UNIX-приложениям с компьютеров, работающих под управлением других операционных систем. В основу работы этого продукта также положен протокол ICA. Отметим, что для доступа к приложениям и Windows, и UNIX применяется одно и то же клиентское программное обеспечение, что делает данный продукт незаменимым в тех случаях, когда с одних и тех же рабочих станций необходимо иметь терминальный доступ и к Windows, и к UNIX-приложениям, при этом серверы под управлением обеих платформ могут располагаться внутри одной серверной фермы.
Как и Citrix MetaFrame XP Presentation Server for Windows, пакет Citrix MetaFrame Presentation Server for UNIX позволяет осуществлять гибкое управление ресурсами, пользователями и доступом к приложениям, устанавливать параметры сеанса (при этом поддерживаются различные графические режимы, вплоть до True Color и разрешения 32 000Ѕ32 000 пикселов, а также работа с несколькими мониторами), производить управление серверными фермами и балансировку нагрузки серверов. Правда, сейчас управление данным продуктом выполняется с помощью интерфейса командной строки (рис. 8).
Из полезных особенностей данного продукта следует отметить средство передачи управления приложением на экране администратору с отображением его действий на экране пользователя (оно носит название Shadowing), а также возможность доступа к приложениям через Web-интерфейс.
MetaFrame Presentation Server for UNIX поддерживает операционные системы Sun Solaris, HP-UX и IBM AIX.
Tarantella Enterprise 3
оперником Citrix MetaFrame Presentation Server является продукт Tarantella Enterprise 3, ранее принадлежавший компании SCO. Он поддерживает терминальный доступ к приложениям под управлением Linux, UNIX, Windows, AS/400, приложениям, выполняющимся на мэйнфреймах, и к Java-приложениям (рис. 9).
К достоинствам Tarantella Enterprise 3 следует отнести поддержку множества платформ и возможность обойтись без установки на компьютер специального клиентского программного обеспечения — хотя оно и существует для довольно широкого списка платформ, во многих случаях можно ограничиться использованием Java-аплета, реализующего отображение пользовательского интерфейса. Кроме того, данный продукт обладает средствами шифрования и защиты данных, поддерживает различные службы каталогов для аутентификации пользователей и предоставления доступа к приложениям, а также позволяет осуществлять доступ к приложениям с помощью портала Sun ONE Portal Server 6.0.
Для осуществления терминального доступа к приложениям пакет Tarantella Enterprise 3 применяет стандартные протоколы тех платформ, под управлением которых выполняются эти приложения (например, RDP в случае Windows).
Другие средства удаленного доступа к приложениям
писок средств терминального доступа к приложениям, имеющимся на рынке программного обеспечения, не исчерпывается продуктами Microsoft, Citrix и Tarantella. В приведенной выше таблице перечислены некоторые другие продукты подобного класса.
Отметим также, что помимо средств терминального доступа общего назначения существуют и средства, предоставляющие терминальный доступ к конкретному продукту (известны, например, средства предоставления терминального доступа к некоторым CAD- и SCADA-пакетам). Кроме того, на рынке предлагаются услуги, связанные с предоставлением терминального доступа к приложениям заказчика путем размещения их на серверах компании — провайдера подобных услуг.