Обновлено 24.03.2021
Добрый день! Уважаемые читатели и гости крупного IT блога Pyatilistnik.org. В прошлый раз мы разобрали, по какой причине в нашем домене у принтера были статус отключен (Offline). Не так давно один из моих подписчиков задал мне по почте письмо, где он спрашивал, каким образом можно найти все серверы лицензирования RDS ферм и терминальных столов в Active Directory. Я поступаю в свойственной своей манере и отвечу на вопрос данной заметкой. Уверен, что данная статья будет полезна для администраторов, которые изучают свою инфраструктуру или сменили работу, а теперь проводят аудит своей новой инфраструктуре.
Методы поиска серверов лицензирования терминалов в Active Directory
Ранее я вам подробно рассказывал, как устанавливается и настраивается сервер лицензирования. Представим ситуацию, что я его развернул и не рассказал своим коллегам, где. Ушел в отпуск, и тут нужно либо добавить лицензий, или же сконфигурировать RDS на получение с него лицензий. Что делать, так как я могу быть не доступен. Существует несколько способов, которые вам помогут отыскать в вашем домене сервера лицензирования RDS и TS. Я могу выделить метода:
- Через оснастку “Active Directory – Пользователи и компьютеры”.
- С использованием PowerShell
- Через утилиту dsquery
- Через настройки коллекции RDS фермы
Использование ADUC
Откройте оснастку ADUC. Перейдите в контейнер “Builtin”. Данный контейнер включает в себя группы, которые устанавливаются при инсталляции Active Directory. Найдите тут группу безопасности “Серверы лицензий сервера терминалов”. Откройте ее и перейдите на вкладку “Члены группы”, в данном списки будут все зарегистрированные серверы лицензирования RDS и терминальных столов.
Когда сервер зарегистрирован так в Active Directory, то это означает, что есть специальная запись SCP (Service Connection Point) CN= TermServLicensing. Зная эту информацию. можно сделать запрос, чтобы получить список серверов.
Поиск сервера лицензирования через PowerShell и dsquery
Поможет нам в этом утилита dsquery и командлет Get-ADObject. Откройте оснастку PowerShell. и введите команду:
dsquery * -filter “(&(CN=TermServLicensing)(objectClass=serviceConnectionPoint))”
В результате я получил список, он состоит из одного сервера “”CN=TermServLicensing,CN=SVT2019S01,CN=Computers,DC=root,DC=pyatilistnik,DC=org””
То же самое можно получить и из командлета Get-ADObject
Get-ADObject -LDAPFilter “(&(CN=TermServLicensing)(objectClass=serviceConnectionPoint))” | ft -autosize
или вот так
Get-ADObject -Filter {objectClass -eq ‘serviceConnectionPoint’ -and Name -eq ‘TermServLicensing’}| ft -autosize
На выходе вы получите три столбца, которые будут содержать DistinguishedName, имя записи и класс объекта (ObjectClass).
Если посмотреть на эту запись в редакторе атрибутов ADSIEdit, то вы увидите. что объект CN=Имя вашего сервера содержит дополнительные контейнеры, где один из них называется CN=TermServLicensing.
Ипользование диспетчера серверов
Логично, что не все но некоторые адреса серверов отвечающих за выдачу лицензий для удаленного подключения вы можете посмотреть и через настройки вашей RDS и терминальной фермы. Я не так давно рассказывал, как собрать консоль управления RDS фермой, выполните это действие. Далее откройте оснастку диспетчер сервером и перейдите в общие сведения коллекции. Там в списке серверов развертывания найдите “Лицензирование удаленных рабочих столов”
Еще один из методов получения DNS имен серверов лицензирования, это поиск в реестре. Предположим, что вы точно знаете, что у вас на определенном сервере есть настройка добавляющая туда клиентские лицензии. Найти ее можно в локальных политиках по адресу:
Как указать сервер лицензирования терминалов через реестр
Так же можно найти и в реестре Windows в ветке:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices TermServiceParametersLicenseServers
Тут будут NetBIOS -имена текущих серверов
Отголоски прошлого для Windows Server 2003
Я считаю, что Windows Server 2003 очень хорошая и качественная система, но нужно быть реалистом, она морально и безнадежно устарела. Если же у вас еще по каким-то причинам сервера лицензирования терминалов на 2003, то у вас в AD должны быть записи CN=TS-Enterprise-License-Server. Найти их можно так же через powershell скрипт:
$sConfiguration = ([adsi]”LDAP://rootdse”).ConfigurationNamingContext
$oDSE = [adsi]”LDAP://$sConfiguration”
$oSearcher=New-Object DirectoryServices.DirectorySearcher ($oDSE,”CN=TS-Enterprise-License-Server”)
$aLicenseServer=$oSearcher.FindAll()
$aLicenseServer|%{$_.Properties.siteserver}
Возникла задача найти в достаточно большом домене (более 50000 ПК) все сервера с установленной ролью сервера терминальных (RDS) лицензий
Во времена Windows Server 2003 при установке сервера лицензий терминалов (Terminal Licensing Server) в домене Active Directory автоматически регистрировались в специальной записи CN=TS-Enterprise-License-Server, уникальной для каждого сайта AD. Благодаря этим записям, терминальные сервера могли обнаруживать сервера лицензий.
Список всех серверов терминальных лицензий с Windows Server 2003 в лесу Active Directory можно получить с помощью следующего скрипта PowerShell:
$sConfiguration = ([adsi]"LDAP://rootdse").ConfigurationNamingContext
$oDSE = [adsi]"LDAP://$sConfiguration"
$oSearcher=New-Object DirectoryServices.DirectorySearcher ($oDSE,"CN=TS-Enterprise-License-Server")
$aLicenseServer=$oSearcher.FindAll()
$aLicenseServer|%{$_.Properties.siteserver}
В Windows Server 2008 RDS и выше, при установке роли RDS Licensing в домене регистрируется запись SCP (Service Connection Point), CN которой начинается с TermServLicensing. Таким образом, чтобы найти все SCP с CN= TermServLicensing, нужно воспользоваться утилитой dsquery
dsquery * -filter "(&(CN=TermServLicensing)(objectClass=serviceConnectionPoint))"
Или одной из следующих команд PowerShell:
Get-ADObject -LDAPFilter "(&(CN=TermServLicensing)(objectClass=serviceConnectionPoint))"
Get-ADObject -Filter {objectClass -eq 'serviceConnectionPoint' -and Name -eq 'TermServLicensing'}|ft -autosize
Перед вами должен появился список всех серверов терминальных лицензий в домене.
- Remove From My Forums
Как обнаружить сервер терминальных лицензий?
-
Общие обсуждения
-
Добрый день, не подскажете как можно обнаружить сервера терминальных лицензий доступных в организации?
-
Изменен тип
ILYA [ sie ] Sazonov
26 ноября 2010 г. 11:47
-
Изменен тип
Все ответы
-
Взять lsview.exe из Resource Kit и с особым цинизмом их все поймать
-
Забавная штукенция, но я не совсем понял как она работает. Запускаю ее… Она ловит только один сервер лицензий, но у меня их больше одного – это точно.
-
Вы дали ей “отвисеться” минут шесть-семь?
Вот есть такое:
http://articles.techrepublic.com.com/5100-1035_11-5030463.htmlРодной документации не особо много, предполагается, что программулька сильно простенькая, что там документировать?
-
G14 написано: Вы дали ей “отвисеться” минут шесть-семь?
До сих пор висит. Кажется я понял. Эта программа, видимо, использует тот же механизм обнаружения серверов лицензий какой используется сам сервер лицензий, но мне нужно немного другое. У меня есть сервера, которые не могут быть обнаружены путем встроенных механизмов поиска, но где то в сети точно есть сервера лицензий, один я даже нашел руками. Вопрос в том, как устроить такую инвентаризацию в сети, что бы обнаружить все такие сервера?
-
Ну наверно не самый просто способ, но: Посмотреть каким-нибудь снифером что происходит при обращении такой программы по сети, что и как она спрашивает. Затем попробовать то же самое, но вручную и по всем айпи внутри сети?
То есть – если известно какой запрос и на какой порт совершается – то просто опросить всю сеть
-
В lsview filecreate log поставьте обе галки и минут через 10 почитайте лог.
-
tcpdump ничего не дал Обращения идут на 445 порт, а в логах – опрос по пайпам, аля: \…….pipeTermServLicensing
А как запрос туда сделать непонятно.. Хотя можно поковырять попробовать с другой стороны. Сервер лицензий, по идее, обязан ставить свою метку в винде. Тогда вполне возможно что запрос по сети, например через Get-WmiObject win32_*** Если с павершелла…
Время на прочтение
4 мин
Количество просмотров 52K
Предисловие
Во время поиска решения “как лучше настроить терминальный сервер” для нужд компании, в основном сталкивался с разрозненной информацией по каждой из проблем в отдельности, но единой статьи как настроить от и до так и не нашел. Данный материал является компиляцией различной информации.
Вводные
Настроенный и работающий AD
Наличие файлового сервера (Желательно на основе Windows server)
Установка системы
Во время установки системы важно учесть только один нюанс — дисковую систему необходимо разбить на два логических раздела. Первый (малый, 70 – 120 Гб) выделить для системных файлов, второй — под пользовательские данные.
На это есть две основные причины:
-
Системный диск малого размера быстрее работает и обслуживается (проверка, дефрагментация, антивирусное сканирование и так далее)
-
Пользователи не должны иметь возможность хранить свою информацию на системном разделе. В противно случае, возможно переполнение диска и, как результат, медленная и нестабильная работа сервера.
Установка служб удаленных рабочих столов
После перезагрузки открываем Диспетчер серверов и нажимаем Управление – Добавить роли и компоненты:
В окне «Выбор типа установки» выбираем Установка служб удаленных рабочих столов и нажимаем Далее:
В окне «Выбор типа развертывания» выбираем Быстрый запуск и нажимаем Далее:
В «Выбор сценария развертывания» — Развертывание рабочих столов на основе сеансов — Далее:
Еще раз Далее — при необходимости, ставим галочку «Автоматически перезапускать конечный сервер, если это потребуется» и кликаем по Развернуть.
Настройка лицензирования удаленных рабочих столов
Для корректной работы сервера, необходимо настроить службу лицензирования. Для этого открываем диспетчер серверов и кликаем по Средства – Terminal Services – Диспетчер лицензирования удаленных рабочих столов:
В открывшемся окне кликаем правой кнопкой мыши по нашему серверу и выбираем Активировать сервер:
В открывшемся окне дважды кликаем Далее – заполняем форму – Далее – Далее – Снимаем галочку «Запустить мастер установки лицензий» – Готово.
Снова открываем диспетчер серверов и переходим в «Службы удаленных рабочих столов»:
В «Обзоре развертывания» кликаем по Задачи – Изменить свойства развертывания:
В открывшемся окне переходим в Лицензирование – Выбираем тип лицензий – прописываем имя сервера лицензирования (в данном случае локальный сервер) и наживаем Добавить:
Применяем настройки, нажав OK.
Добавление лицензий
Открываем диспетчер серверов и кликаем по Средства – Terminal Services – Диспетчер лицензирования удаленных рабочих столов:
В открывшемся окне кликаем правой кнопкой мыши по нашему серверу и выбираем Установить лицензии:
В открывшемся окне нажимаем Далее – выбираем программу, по которой куплены лицензии, например, Enterprise Agreement – Далее – вводим номер соглашения и данные лицензии – выбираем версию продукта, тип лицензии и их количество – Далее – Готово.
Проверить статус лицензирования можно в диспетчере серверов: Средства – Terminal Services – Средство диагностики лицензирования удаленных рабочих столов.
Тюнинг терминального сервера
Ограничение сессий
По умолчанию, пользователи удаленных рабочих столов могут находиться в системе в активном состоянии без ограничения. Это может привести к зависаниям или проблемам при повторном подключении. Для решения возможных проблем установите ограничения на терминальные сессии.
Открываем диспетчер серверов и кликаем по Службы удаленных рабочих столов
Выбираем ранее созданную коллекцию сеансов, далее в разделе Свойства открываем меню Задачи > изменить свойства
В открывшемся окне в разделе Сеанс устанавливаем ограничения, их следует выбирать опираясь на особенности работы сотрудников для которых выполняется настройка сервера
Диски профилей пользователей + миграция профилей
Одной из задач при настройке терминального сервера является организация хранения данных пользователей работающих на нем.
1-й способ
Во многих компаниях используется миграция профилей пользователей. Это дает возможность перенести место хранения данных на специально выделенное место для данных задач. данный способ позволяет перемещать все персональные каталоги пользователя (Документы, Загрузки, Рабочий стол и др.)
Но не позволяет перемещать
-
Данные о профиле
-
Реестр пользователя
В результате чего, в процессе работы терминального сервера происходит “захламление” реестра сервера, и крайне осложняет перенос конфигурации пользователя.
2-й способ
Использовать Диски профилей пользователя
Данная технология является крайне полезной для обеспечения более высокого уровня безопасности , так же позволяет легко, бесследно удалять старые профили пользователей, и переносить в случае необходимости настройки на другой терминальный сервер, так как все данные пользователя хранятся на отдельном VHDX Диске для каждого пользователя.
Проблемой данного метода является сложность изменения размера дискового пространства выделенного пользователю, и вносит изменение в конфигурацию оборудования сервера, что вызывает проблемы с лицензиями 1С, но об это будет дальше.
3-й способ
Скомбинировать лучшее из первых 2х методов. а именно.
Активируем Диски профилей пользователя, но данные каталогов пользователя перемещаем на файловый сервер.
Для активации дисков профилей пользователя необходимо перейти в Службы удаленных рабочих столов > в разделе Свойства открываем меню Задачи > изменить свойства > Диски профилей пользователя.
Упc) у меня закончились буквы, так что продолжение во 2-й части.
С развитием технологий у пользователей появилась возможность подключать несколько устройств к более мощному компьютеру и проводить все операции на нем. Для этого используют терминальный сервер. Такая особенность наиболее удобна для предприятий, если нужно хранить всю информацию в одном месте. Для подключения понадобится сам сервер с установленным программным обеспечением, соответствующая лицензия, а также компьютеры, которые будут подключаться удаленно с нужным программным обеспечением (ПО).
Что такое терминальный сервер?
Терминальный сервер (RDP) или сервер удаленных рабочих столов представляет собой мощный компьютер, который предназначен для подключения нескольких устройств. На нем установлена серверная операционная система и приложения, с которыми должен работать пользователь. Подключиться к такому компьютеру можно через другое устройство, которое называют клиентом.
Чтобы подключиться к серверу, пользователю необходимо зарегистрироваться и получить определенные права доступа. После этого все операции будут выполняться именно на терминале. Пользователь будет получать только результат работы на своем компьютере.
Такая особенность имеет большое количество преимуществ. В первую очередь, организации не нужно закупать дорогостоящее оборудование для каждого сотрудника. Так как все операции выполняет один мощный ПК, на рабочие устройства можно даже не устанавливать жесткие диски.
Кроме того, использование сервера обеспечивает сохранность корпоративной информации. Так, у каждого сотрудника есть свой уровень доступа. Пользователь не может получить данные с сервера, если у него нет на это определенных прав.
Доступ к терминальному серверу можно получить как локально, так и через интернет, если он располагается в облаке. Первый вариант имеет свои преимущества. Так как, все данные хранятся на компьютере, а доступ к ним осуществляется не через интернет, злоумышленнику будет непросто получить нужную информацию. Ему понадобится подключаться непосредственно с одного из клиентов в сети.
Сервер терминала предоставляет еще одно удобство для предприятия. Так, не обязательно чтобы все терминалы находились в офисе. Если подключение осуществляется через интернет, то локальный компьютер может располагаться на любом расстоянии от главного офиса. Такая особенность будет удобной, например, для супермаркетов. Все данные будут хранится на сервере, а доступ к нему будут иметь магазины, не только с одного города, но и, при необходимости, с разных регионов.
Настройки терминального сервера
Перед началом настройки терминального сервера следует убедиться в наличии необходимого оборудования. Компьютер должен быть достаточно мощным, чтобы все пользователи могли свободно работать. Так, есть некоторые системные требования к серверу:
- Оперативную память необходимо рассчитывать, как 1 ГБ для каждого подключенного компьютера. Также, 4 ГБ понадобится самому серверу и еще такой же размер необходимо оставить в запасе.
- Лучше приобрести SAS диски. Размер будет зависеть от назначения сервера. Если компании необходимо хранить большой объем информации, то и дисковое пространство должно быть соответствующим.
- Понадобится достаточно мощный процессор, чтобы он смог обрабатывать большое количество запросов. Рекомендуется выбрать комплектующее с 8-16 ядрами.
- Обязательно должен быть установлен источник бесперебойного питания. Он необходим, если возникнут проблемы с электричеством.
После того, как все оборудование будет установлено, можно переходить к подключению сервера.
Однако, если мощных задач на сервере выполнять не планируется и он нужен только для домашних офисных задач, то достаточно обычного среднего по характеристикам компьютера.
Стандартно нельзя настроить терминальный сервер на Windows 7, 8, 10, с возможностью подключения нескольких пользователей одновременно. Но есть обходные пути.
Windows 7
Настроить терминальный сервер можно и на Windows 7, несмотря на то, что данная операционная система полностью не предназначена для этих целей. Существует две программы, способные произвести подобные настройки:
- RDP Wrapper Library;
- Universal Termsrv Patch.
С их помощью можно подключить несколько устройств к одному, более мощному компьютеру.
RDP Wrapper Library
RDP Wrapper Library представляет собой протокол, который создан для удаленного управления рабочими столами. Чтобы настроить локальную связь между компьютером и серверами, необходимо следовать инструкции:
- На устройстве-сервере нужно создать учетные записи пользователей. Их количество должно соответствовать количеству подключаемых компьютеры. Делается это стандартным способом, через управление учетными записями.
- Скачать утилиту RDP Wrapper Library. Убедится, что архив приложения распакован.
- Открыть командную строку от имени администратора. Она находится в меню пуск, вкладке стандартные. Запуск от имени администратора осуществляется нажатием правой клавишей мыши и выбором соответствующей команды.
- Открыть приложение через командную строку. Необходимо ввести полный адрес, по которому располагается утилита.
- На экране появится перечень команд, из которых следует выбрать установку в Program Files. Для этого вводят атрибут «-i».
- Закрыть командную строку и перейти в свойства компьютера через меню Пуск.
- Открыть вкладку, которая отвечает за настройку удаленного доступа.
- В открытом окне следует перейти во вкладку удаленного доступа, разрешить подключение и выбрать пользователей.
- В следующем окне нужно выбрать пункт «Добавить». Имена следует вводить через точку с запятой, так, как они были указаны при создании учетных записей.
- Следует нажать на «ОК», чтобы закрыть все открытые окна.
- После настроек нужно перейти в редактор локальной групповой политики. Для этого следует нажать на Win+R или нажать на «Выполнить» в Пуске. В строке ввести «gpedit.msc».
- Открыть «Компоненты Windows» в административных шаблонах.
- В службе удаленных рабочих столов следует найти узел сеансов и открыть каталог.
- В этом разделе необходимо огранить подключение. Для этого нужно перейти в соответствующий каталог.
- В открытом окне следует включить ограничения количества подключений и ввести значение «999999». После этого нажать на «Применить» и «ОК», чтобы сохранить изменения.
Последним шагом настройки RDP будет перезагрузка компьютера. После нее все настройки вступят в силу.
UniversalTermsrvPatch
Данный патч используют только в том случае, если предыдущий способ не сработал. Он имеет свои недостатки. При каждом обновлении операционной системы, патч необходимо переустанавливать. Процедура настройки терминального доступа в Windows 7 следующая:
- Создать учетные записи на сервере, так же, как и в первом методе.
- Распаковать архив с патчем в любом месте компьютера.
- Открыть нужный файл в зависимости от разрядности ОС.
- Открыть файл, который внесет изменения в реестр.
- Перейти в свойства компьютера и следовать предыдущей инструкции, начиная с 6-го пункта.
Windows 8
В данной ОС также нет стандартной возможности создания терминала, работа ограничена только одним подключением. Для увеличения количества подключений используют специальную библиотеку termsrv.dll. Но стоит знать, что таким образом нарушаются лицензионные права Microsoft, так как изменяются системные файлы. Поэтому все манипуляции следует проводить только после создания резервной копии стандартного документа.
Следует перейти в свойства скачанного файла termsrv.dll (для Windows 8 и Windows 8.1).
Во вкладке «Безопасность» необходимо ввести изменения, предоставить полный доступ, установив флажок на «Full Control».
Скопировать измененный файл в системный диск, по адресу C:WindowsSystem32. Предварительно нужно остановить его работу. После всех настроек можно переходить в RDP и создавать удаленный доступ с нужным количеством подключений.
Windows 10
Установка терминального сервера в Windows 10 будет схожа с предыдущими версиями. Различия составляет интерфейс самой системы и некоторые разделы, которые находятся по другому адресу.
RDP Wrapper Library
Стандартные средства ОС могут не позволить запустить неизвестный файл. Тогда необходимо сделать это вручную, нажав на соответствующую команду.
Запустив файл «RDPConf», который находится в извлеченных файлах, следует проверить, чтобы все пункты были зелеными.
Для добавления пользователей, необходимо перейти в настройки компьютера и выбрать учетные записи. В разделе «Семья и другие пользователи», нужно добавить новые записи для компьютера.
Запись создается без учетного профиля Майкрософт.
В открытом окне вводятся данные нового пользователя, имя и пароль.
Чтобы перейти в настройки удаленного доступа следует открыть свойства компьютера. В левой части окна будет находится нужная вкладка.
После завершения всех действий рекомендуется перезагрузить компьютер.
Модификации termsrv.dll
Также, можно воспользоваться изменением системной библиотеки termsrv.dll. Как и в случае с Windows 8, следует сделать резервную копию файла, чтобы в случае проблем, можно было вернуть изменения.
Настройка данной библиотеки выполняется в той же последовательности, что и в предыдущей версии ОС. Перед перемещением файла, следует остановить работу RDP через командную строку или консоль,а после проведения манипуляций снова запустить.