Чтобы терминальный сервер продолжал принимать соединения по истечении 120 дней, вы должны сконфигурировать Terminal Services Licensing. WS2K3 добавляет новые опции и новые уровни сложности к лицензированию Terminal Services. Для подключения к WS2K3 клиентам понадобятся новые маркеры лицензий WS2K3. Эти маркеры (tokens) выдаются только сервером WS2K3 Terminal Services License - серверы лицензий Win2K не могут выдавать новые маркеры WS2K3. Поэтому если в вашей среде уже есть сервер лицензий Win2K, вам нужно как можно быстрее обновить его до WS2K3 или активировать отдельный сервер лицензий WS2K3.
Компоненты лицензирования Terminal Server
Лицензирование Terminal Services включает в себя Microsoft Clearinghouse, один или несколько серверов WS2K3 Terminal Services Licensing и один или несколько терминальных серверов. Вы используете Microsoft Clearinghouse (через интернет, Web или по телефону) для активирования серверов лицензий и для получения пакетов лицензий, которые инсталлируются на серверах лицензирования.
Сервер Terminal Services Licensing может быть сервером WS2K3 любой редакции с инсталлированной службой Terminal Services Licensing. Terminal Services Licensing хранит все маркеры CAL и следит за маркерами, которые были выданы компьютерам или пользователям. Все терминальные серверы должны иметь возможность связаться с сервером Terminal Services Licensing для выдачи постоянных маркеров. Если сервер лицензирования не активирован, он будет выдавать только временные лицензии.
Терминальный сервер - это сервер WS2K3 любой редакции с инсталлированной ролью Terminal Server. При подключении клиента к терминальному серверу, сервер определяет, требуется ли выдать клиенту маркер лицензии. Если да, то он обращается к серверу лицензий и запрашивает у того маркер от лица клиента, а затем передает маркер клиенту. При первом подключении клиента, если используется модель лицензирования "на устройство" (per-device), клиент получает временный маркер. Временные лицензии хранятся на сервере Terminal Services Licensing в течении 90 дней. Только при втором подключении (в течении 90 дней) для устройства выдается постоянная лицензия.
Термин "постоянный" не совсем правильный, поскольку лицензия на устройство истекает через случайное число дней (от 52 до 89). Это сделано затем, что если устройство больше не используется для доступа к терминальному серверу (или переинсталлирована ОС), лицензия возвращается назад. Впервые это реализовано в Win2K Service Pack 3 (SP3).
Типы лицензий
WS2K3 Terminal Services Licensing может поддерживать семь типов маркеров лицензий. Помимо CAL, необходимых для подключения к терминальным серверам Win2K, есть четыре новых типа CAL, специфичных для WS2K3 Terminal Services
Встроенных лицензий для WS2K3 Terminal Services больше не существует. Вам необходимо покупать CAL для всех устройств или пользователей, подключающихся к таким серверам, независимо от используемой операционной системы клиента.
- WS2K3 Terminal Server Device CAL - Эти лицензии запрашиваются у сервера лицензий терминальными серверам WS2K3, лицензируемыми в режиме "Per Device"
- WS2K3 Terminal Server User CAL - Для терминальных серверов WS2K3, лицензируемых в режиме "Per User"
- Лицензии WS2K3 Terminal Server External Connector - Эти лицензии разрешают неограниченное число соединений внешних пользователей к терминальному серверу. Эти лицензии еще не доступны.
- Win2K Terminal Services CAL - Терминальные серверы Win2K запрашивают эти лицензии у сервера лицензий для клиентов, выполняющих ОС, отличную от Win2K Professional или Windows XP. Эти лицензии нужны только если у вас есть серверы Win2K.
- Лицензии Win2K Terminal Services Internet Connector - Эти лицензии разрешают до 200 одновременных соединений к терминальному серверу Win2K через интернет для не-сотрудников вашей организации.
- Встроенные лицензии Win2K - Клиенты, выполняющие Win2K Pro или Windows XP получают маркер лицензии из встроенного пула маркеров лицензий при подключении к терминальному серверу Win2K.
На следующем рисунке показаны лицензии, доступные в Terminal Server Licensing. Обратите внимание, что лицензии для пользователей обрабатываются отдельно от лицензий для устройств. Пользовательские лицензии - новые в WS2K3. Теперь терминальные серверы можно перевести в режим лицензирования Per Device или Per User. Один сервер Terminal Services Licensing может обслуживать разные маркеры в любой комбинации, если установлены соответствующие лицензии.
Инсталляция Terminal Server Licensing
Если у вас несколько серверов, то Terminal Server Licensing следует установить на сервере, отличном от терминального. Если вы используете домены, то должны установить службу лицензирования на контроллере домена.
Для установки Terminal Server Licensing, откройте в панели управления апплет Add/Remove Programs, выберите Add/Remove Windows Components. В мастере установки компонентов выберите Terminal Server Licensing .
Если вы устанавливаете Terminal Server Licensing на сервер в AD, вы можете выбрать один из вариантов установки: Domain/Workgroup и Enterprise. Эти режимы определяют, как служба лицензирования будет оповещать о себе для терминальных серверов. Если вы находитесь в рабочей группе или домене, отличном от AD, опция Enterprise будет недоступна.
Я объясню процесс обнаружения в следующем разделе, а пока вы должны понять, что сервер лицензирования Enterprise будет обнаруживаться терминальными серверами из любого доверительного домена, но только в пределах того же сайта AD, что и сервер лицензирования.
После установки Terminal Server Licensing, сервер лицензирования необходимо активировать, обратившись в Microsoft Clearinghouse. Запустите утилиту администрирования Terminal Server Licensing из меню Start, щелкните правкой кнопкой мыши на сервере и выберите Activate Server. Появится мастер активации сервера лицензирования:
- Automatic connection - Это самый простой метод активации. Он требует, чтобы сервер Terminal Server Licensing имел подключение к интернет через порт 443 (SSL). Заполните информацию о компании и щелкните Activate.
- Web Browser - Если сервер Terminal Server Licensing не подключен к интернет, вы все равно можете активировать сервер через веб с другого компьютера. Для этого откройте в веб-обозревателе сайт https://activate.microsoft.com/, заполните информацию о компании, а также укажите уникальный идентификатор Terminal Server Licensing ID, который формирует мастер активации. Веб-сервер даст код активации, который вы должны ввести в службу лицензирования.
- Telephone - Если у вас вообще нет интернета, то позвоните в Microsoft Clearinghouse по телефону. Выберите вашу страну в мастере активации, и вы получите номер телефона. Сообщите службе поддержки имя компании, контактную информацию, идентификатор сервера, и вам сообщат код активации. Активируйте сервер во время разговора по телефону или очень внимательно запишите код на бумаге.
После активации сервера лицензирования он немедленно начинает выдавать временные лицензии для серверов Win2K и WS2K3, которые дают администратору 90-дневный период, в течении которого необходимо установить постоянные CAL на сервер лицензирования.
Если вы обновляете сервер Win2K с установленной службой Terminal Server Licensing до WS2K3, вам необходимо повторно активировать службу лицензирования. Для этого выберите Re-Activate Server в Advanced в меню Actions в утилите администрирования Terminal Server Licensing
Для добавления пакета лицензий, щелкните правой кнопкой в утилите администрирования Terminal Server Licensing и выберите Install Licenses. Вам будет представлен тот же выбор, как при активации сервера. Если вы устанавливаете розничные лицензии, этот тип лицензий будет выбран автоматически. Однако, если вы устанавливаете лицензии через Select, Open или другие соглашения Microsoft, то вам следует выбрать тип добавляемой лицензии:
Обнаружение сервера лицензирования
При запуске терминального сервера, он пытается найти сервер лицензирования. Метод поиска зависит от среды сервера и режима работы сервера лицензирования. Вы можете переопределить процесс обнаружения, явно указав в реестре серверы лицензирования. В Win2K вы могли указать только один сервер лицензирования, а WS2K3 позволяет указать несколько. Добавьте подключи в ключ
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTermServiceParametersLicenseServers.
Каждый подключ должен быть назван по имени сервера лицензирования.
Если вы не укажите явно серверы лицензирования в реестре, то процесс их нахождения работает следующим образом: терминальные серверы в рабочей группе или в домене, отличном от AD, посылают широковещательные запросы mailslot. Соответственно, таким образом могут быть обнаружены только серверы, находящиеся в той же подсети.
Терминальные серверы AD сначала ищут серверы лицензирования в режиме лицензирования Enterprise. Для этого они делают запрос LDAP в поиске записи CN TS-Enterprise-License-Server, указывая свой сайт. Затем терминальный сервер обращается к каждому контроллеру домена в сайте в поиске доменного сервера лицензирования. Наконец, терминальный сервер будет обращаться ко всем контроллерам в своем домене.
После обнаружения терминальный сервер кэширует все найденные серверы лицензирования в реестре в ключах:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSLicensingParametersEnterpriseServerMulti и
HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSLicensingParametersDomainLicenseServerMulti.
Важно заметить, что если найдены корпоративный (Enterprise) и доменный серверы лицензирования, то терминальный сервер всегда предпочтет использовать доменный сервер, даже если для этого необходимо перейти границы сайта. Если ни одного сервера лицензирования не найдено, терминальный сервер будет продолжать процесс поиска каждый час. Как только обнаружен один или несколько серверов лицензирования, процесс обнаружения не повторяется до тех пор, пока в реестре доступны данные о кэшированных серверах.
Назначение лицензий
Всякий раз при подключении клиента к терминальному серверу, последний обращается к серверу лицензирования для подтверждения существующей лицензии или выдачи новой лицензии. Тип лицензии, который выдает терминальный сервер, зависит от режима лицензирования - Per Device или Per User. Вы можете установить режим в утилите Terminal Services Configuration или групповыми политиками. По умолчанию используется режим Per Device, но если вы обновили терминальный сервер Win2K, который был в режиме Internet Connector, то режим лицензирования будет Per User.
Чтобы поддерживать маркеры лицензий как Per User, так и Per Device, терминальный сервер должен быть в режиме Per User.
Для каждого соединения клиента сервер выполняет следующие действия:
1. Независимо от режима лицензирования, терминальный сервер сначала запрашивает устройство клиента чтобы определить, есть ли в реестре маркер устройства. Если маркер найден, терминальный сервер обращается к серверу лицензирования, который указан в маркере, для подтверждения лицензии. Если это временная лицензия, сервер лицензирования назначит постоянную лицензию, которая будет сохранена в реестре клиента.
2. Если устройство клиента не имеет маркера, то следующий шаг зависит от режима лицензирования терминального сервера:
- a. Режим лицензирования Per-User - Терминальный сервер запрашивает учетные данные пользователя и осуществляет аутентификацию. Затем он запрашивает сервер лицензирования либо проверить, либо выдать лицензию для пользователя. Маркер лицензии сохраняется на сервере лицензирования.
- b. Режим лицензирования Per-Device - Терминальный сервер запрашивает временный маркер у сервера лицензирования и записывает его в реестр клиента. После аутентификации пользователя терминальный сервер указывает серверу лицензирования пометить временный маркер как проверенный. Если пользователь не аутентифицировался, маркер немедленно возвращается в пул доступных лицензий.
3. В любом случае, если сервер лицензирования не имеет свободных маркеров, производится обращение к другому серверу лицензирования. Если первый сервер лицензирования знает, что другой сервер лицензирования имеет доступные лицензии, он запросит маркер от лица терминального сервера. Если сервер лицензирования не знает об остальных серверах лицензирования, то терминальный сервер запрашивает следующий сервер лицензирования, кэшированный в его реестре.
В большинстве случаев серверы лицензирования информируют друг друга о том, какие лицензии добавлены или удалены из их пулов. Этот процесс называется "уведомлением о лицензиях" (License Token Announcement) и происходит в следующих случаях:
- Между доменными серверами лицензирования в пределах одного домена
- Между корпоративными серверами лицензирования внутри одного сайта и домена
- От корпоративных серверов лицензирования к доменным серверам лицензирования
- От серверов лицензирования Win2K к серверами лицензирования WS2K3
License Server Administration
После того, как вы активировали ваши серверы лицензирования и инсталлировали лицензии, дальнейшее администрирование почти не требуется. Однако, вам следует ознакомиться с несколькими утилитами, чтобы выявлять и устранять возможные проблемы с лицензированием.
Утилита Terminal Sever Licensing является основной утилитой управления лицензиями. Она используется для активирования сервера лицензирования, установки лицензий и просмотра доступных маркеров лицензий. С ее помощью вы можете видеть, какие пользователи и устройства получили маркеры лицензий и когда истекает срок их действия.
WS2K3 Resource Kit содержит утилиту командной строки LSREPORT.EXE. С ее помощью вы можете получить список маркеров, назначенных сервером лицензирования.
Есть еще одна утилита, Client License Test Tool, TSCTST.EXE. Она используется для запроса подробной информации относительно маркеров устройств, инсталлированных на указанном устройстве. В выводе утилиты содержится имя сервера лицензирования, выдавшего маркер, диапазон, пользователь, который аутентифицировался при выдаче маркера, идентификатор лицензии, срок действия. Если указать опцию /A, утилита также покажет версию сертификата сервера, версию лицензированного продукта, идентификатор аппаратуры, идентификатор платформы клиента, имя компании.
Утилита License Server Viewer - LSVIEW.EXE - также содержится в Resource Kit. Она осуществляет поиск серверов лицензирования и выводит все серверы лицензирования терминальных служб. Она также определяет тип сервера лицензирования - Domain or или Enterprise - и создает журнал с диагностической информацией.
Групповые политики для сервера лицензирования
WS2K3 включает несколько политик для управления лицензированием. С их помощью можно легко централизованно настроить серверы лицензирования и поддерживать их целостность.
- License Server Security Group - По умолчанию, сервер лицензирования выдает маркеры клиентам, подключающимся к любым терминальным серверам. Если вы включите эту настройку, то сервер лицензирования будет отвечать на запросы только тех терминальных серверов, которые находятся в локальной группе Terminal Services Computers. Если сервер лицензирования является контроллером домена, это локальная доменная группа. Включение этой настройки предотвращает нежелательным терминальным серверам запрашивать лицензии и заставляет использовать отдельный пул лицензий для групп серверов. Если у вас есть несколько серверов лицензирования для некоторой группы терминальных серверов, добавьте серверы лицензирования в эту группу.
- Prevent License Upgrade - Как вы знаете, сервер лицензирования WS2K3 может раздавать терминальные лицензии как Win2K, так и WS2K3. Если терминальный сервер Win2K запрашивает маркер, а сервер лицензирования не имеет доступных Win2K TS CAL, он будет автоматически выдавать маркер лицензии WS2K3 Per-Device (если они доступны). Это поведение можно запретить политикой. Если настройка разрешена, то сервер лицензирования будет выдавать только временные маркеры клиентам, подключающимся к терминальным сервам Win2K. Если срок действия лицензии истек, в подключении отказывается.
Группа Terminal Services Computers по умолчанию пустая; добавьте в нее серверы перед тем, как включить политику, чтобы предотвратить отказы в соединении.