Возвращаем Tsconfig.msc и Tsadmin.msc в Windows Server 2019
- Для чего нужны оснастки Tsconfig.msc и Tsadmin.msc
- Алгоритм запуска TSADMIN.msc и TSCONFIG.msc в Windows Server 2019
- Регистрация оснасток Tsconfig.msc и Tsadmin.msc в Windows Server 2019
- Проверяем работу диспетчера служб удаленных рабочих столов
- Проверяем работу конфигурации узла сеансов удаленных рабочих столов
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов по системному администрированию Pyatilistnik.org. В прошлый раз мы с вами разобрались, что такое SSL сертификат, где и как их применяют и какие они бывают. Движемся дальше, в сегодняшней публикации я бы хотел вам рассказать, как вы можете вернуть и запускать в Windows Server 2019 оснастки Tsconfig.msc "Конфигурация узла сеансов удаленных рабочих столов (Remote Desctop Session Host Configuration)" и Tsadmin.msc "Диспетчер служб удаленных рабочих столов" (Remote Desktop Services Manager). Напомню их варианты использования, так как не все застали времена терминальных серверов на Windows Server 2008 R2.
Для чего нужны оснастки Tsconfig.msc и Tsadmin.msc
Бытует мнение, что все что новое оно априори должно быть лучше, в каких-то областях возможно это так, но не в компьютерном мире. Примеров этому очень много, например:
- Windows XP и Windows Vista
- Windows 7 и Windows 10
В случае с терминальными службами ситуация двоякая, с одной стороны Microsot сделала удобную общую оснастку в диспетчере серверов, а с другой лишила пользователей ряда оснасток и графических функция, которые они предоставляли. Microsoft по известной только им причине убрали оснастки из состава инструментов RDS фермы:
- Tsconfig.msc "Конфигурация узла сеансов удаленных рабочих столов (Remote Desctop Session Host Configuration)" - это оснастка позволяющая вам задавать список серверов лицензирования RDSH хоста, производить настройку уровней безопасности RDP, управлять настройками сеансов, параметрами схода на RDP, параметрами клиента, запрещая или разрешая перенаправление устройств и многое другое. Напоминаю, что благодаря это оснастки я смог настроить права входа на изолированный терминальный стол созданный для подрядчиков. Вот так выглядела эта оснастка, уверен, что начинающие системные администраторы ее даже и не видели.
- Tsadmin.msc "Диспетчер служб удаленных рабочих столов" (Remote Desktop Services Manager) - это оснастка для взаимодействия и управления сессиями пользователей удаленного рабочего стола. Например вы можете удаленно завершить любой процесс пользователя, его разлогинить с терминального сервера, так же можете массово отправить сообщение пользователям RDP, в версиях Windows Server 2012 R2 и выше для этого мы использовали PowerShell, чтобы их оповестить. Сама оснастка выглядит вот так. Так же я бы советовал обратить внимание на утилиту Terminal Services Manager, она бесплатна и может выполнить все, что делает оснастка Tsadmin.msc. Эту утилиту как и делали энтузиасты для боле старших версий операционной системы Windows Server.
Алгоритм запуска TSADMIN.msc и TSCONFIG.msc в Windows Server 2019
Хорошо, что Microsoft не закрыла возможность регистрации и запуска оснасток TSADMIN.msc и TSCONFIG.msc в Windows Server 2012 R2 и выше. Хочу отметить, что данный метод не является официальным, но использовать его все же можно на свой страх и риск.
Суть метода заключается в том, что вам необходимо скопировать определенные библиотеки и сами оснастки Tsconfig.msc и Tsadmin.msc из Windows Server 2008 R2 или скачать их у меня если у вас нет уже в инфраструктуре таких серверов. так же необходимо для них прописать ключи реестра и права на них, это делается через выгрузку веток с 2008 R2 системы или скриптом, оба метода я покажу.
Если вы все скачали у меня, то состав архивов будет такой:
Если у вас есть своя Windows Server 2008 R2 (даже если ее нет вы можете быстро развернуть виртуальную машину), то вам необходимо скопировать вот такой список файлов из каталога C:\Windows\System32
- c:\windows\system32\tsconfig.msc
- c:\windows\system32\tsadmin.msc
- c:\windows\system32\tsadmin.dll
- c:\windows\system32\tsconfig.dll
- c:\windows\system32\wts.dll
А так же языковые файлы они располагаются по пути C:\Windows\System32\ru или C:\Windows\System32\en в зависимости от языка в системе. В моем примере русская версия поэтому я буду копировать файлы для русской версии. Из каталога мне необходимо скопировать
- c:\windows\system32\ru\tsconfig.resources.dll
- c:\windows\system32\ru\tsadmin.resources.dll
Следующим действием вам необходимо выгрузить две ветки реестра, если не хотите это делать, то их можно создать самому из кода, который я представлю ниже. Запустите редактор реестра Windows из окна выполнить, введя regedit.
Вам нужно найти вот такие ветки реестра и произвести их экспорт:
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{3FCE72B6-A31B-43ac-ADDA-120E1E56EB0F}
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}
Выбираем место сохранения ваших reg файлов. На выходе у вас будет два файла вот с таким содержимым, для оснастки tsconfig (80aaa290-abd9-9239-7a2d-cf4f67e42128)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}]
"ApplicationBase"=hex (2):43,00,3a,00,5c,00, 57,00,69,00,6e,00,64,00,6f,00,77,00,\
73,00,5c,00,53,00,79,00,73,00,74,00,65,00, 6d,00,33,00,32,00,00,00
"About"="{00000000-0000-0000-0000-000000000000}"
"VersionStringIndirect"="@C:\\Windows\\System32\\umcRes.dll,-107"
"ProviderStringIndirect"=hex (2) :40,00,43,00,3a, 00,5c,00,57,00,69,00,6e,00,64,\
00,6f,00,77,00,73,00,5c,00,53,00,79,00, 73,00,74,00, 65,00,6d,00,33,00,32,00,\
5c,00,75,00,6d,00,63,00,52,00,65,00,73,00, 2e,00,64,00,6c,00,6c,00,2c,00,2d,\
00,31,00,30,00,32,00,00,00
"SmallFolderBitmapIndirect"=hex(2) :40,00,43,00, 3a,00,5c,00,57,00,69,00,6e,00,\
64,00,6f,00,77,00,73,00,5c,00,53,00,79, 00,73,00,74,00, 65,00,6d,00,33,00,32,\
00,5c,00,75,00,6d,00,63,00,52,00,65,00,73,00, 2e,00,64,00,6c,00,6c,00,2c,00,\
2d,00,31,00,32,00,30,00,00,00
"NameString"="Remote Desktop Session Host Configuration"
"HelpTopic"=hex(2):25,00,73,00,79,00,73,00,74,00,65, 00,6d,00,72,00,6f,00,6f,00,\
74,00,25,00,5c,00,68,00,65,00,6c,00,70, 00,5c,00,74,00,73,00,63,00,63,00,2e,\
00,63,00,68,00,6d,00,00,00
"AssemblyName"="tsconfig"
"RuntimeVersion"="v2.0.50215"
"Description"="Configure Remote Desktop Session Host settings"
"DescriptionStringIndirect"=hex (2) :40,00,43,00,3a, 00,5c,00,57,00,69,00,6e,00,\
64,00,6f,00,77,00,73,00,5c,00,53,00,79, 00,73,00,74, 00,65,00,6d,00,33,00,32,\
00,5c,00,75,00,6d,00,63,00,52,00,65,00,73,00,2e, 00,64,00,6c,00,6c,00,2c,00,\
2d,00,31,00,30,00,31,00,00,00
"LinkedHelpTopics"="%systemroot%\\help\\tscc.chm"
"NameStringIndirect"=hex (2) :40,00,43,00,3a,00, 5c,00,57,00,69,00,6e,00,64,00,6f,\
00,77,00,73,00,5c,00,53,00,79,00,73,00, 74,00,65, 00,6d,00,33,00,32,00,5c,00,\
75,00,6d,00,63,00,52,00,65,00,73,00,2e,00,64, 00,6c,00,6c,00,2c,00,2d,00,31,\
00,30,00,30,00,00,00
"IconIndirect"=hex(2):40,00,43,00,3a,00, 5c,00,57,00,69,00,6e,00,64,00,6f,00,77,\
00,73,00,5c,00,53,00,79,00,73,00,74,00, 65,00,6d,00,33,00,32,00,5c,00,75,00,\
6d,00,63,00,52,00,65,00,73,00,2e,00,64, 00,6c,00,6c,00,2c,00,2d,00,31,00,31,\
00,30,00,00,00
"FxVersion"="2.0.1.7"
"Type"="Microsoft.TerminalServices.Configuration. SnapIn.TSConfigSnapIn, tsconfig, Version=6.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
"FolderBitmapsColorMask"=dword:00000000
"ModuleName"="tsconfig.dll"
"Provider"="Microsoft Corporation"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\NodeTypes]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\NodeTypes\{f86e6446-aaff-11d0-b944-00c04fd8d5b9}]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\Standalone]
для оснастки Tsadmin.msc (80aaa290-abd9-9239-7a2d-cf4f67e42128)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}]
"ApplicationBase"=hex(2):43,00,3a,00,5c,00,57, 00,69,00,6e,00,64,00,6f,00,77,00,\
73,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,00,00
"About"="{00000000-0000-0000-0000-000000000000}"
"VersionStringIndirect"="@C:\\Windows\\System32\\umcRes.dll,-107"
"ProviderStringIndirect"=hex (2):40,00,43,00, 3a,00,5c,00,57,00,69,00,6e,00,64,\
00,6f,00,77,00,73,00,5c,00,53,00,79,00,73, 00,74,00,65,00,6d,00,33,00,32,00,\
5c,00,75,00,6d,00,63,00,52,00,65,00,73,00, 2e,00,64,00,6c,00,6c,00,2c,00,2d,\
00,31,00,30,00,32,00,00,00
"SmallFolderBitmapIndirect"=hex (2):40,00, 43,00,3a,00,5c,00,57,00,69,00,6e,00,\
64,00,6f,00,77,00,73,00,5c,00,53,00,79,00, 73,00,74,00,65,00,6d,00,33,00,32,\
00,5c,00,75,00,6d,00,63,00,52,00,65,00,73, 00,2e,00,64,00,6c,00,6c,00,2c,00,\
2d,00,31,00,32,00,30,00,00,00
"NameString"="Remote Desktop Session Host Configuration"
"HelpTopic"=hex(2) :25,00,73,00,79,00,73, 00,74,00,65,00,6d,00,72,00,6f,00,6f,00,\
74,00,25,00,5c,00,68,00,65,00,6c,00,70,00, 5c,00,74,00,73,00,63,00,63,00,2e,\
00,63,00,68,00,6d,00,00,00
"AssemblyName"="tsconfig"
"RuntimeVersion"="v2.0.50215"
"Description"="Configure Remote Desktop Session Host settings"
"DescriptionStringIndirect"=hex (2):40,00,43,00,3a, 00,5c,00,57,00,69,00,6e,00,\
64,00,6f,00,77,00,73,00,5c,00,53,00,79,00,73,00,74, 00,65,00,6d,00,33,00,32,\
00,5c,00,75,00,6d,00,63,00,52,00,65,00,73,00,2e, 00,64,00,6c,00,6c,00,2c,00,\
2d,00,31,00,30,00,31,00,00,00
"LinkedHelpTopics"="%systemroot%\\help\\tscc.chm"
"NameStringIndirect"=hex (2):40,00,43,00,3a,00, 5c,00,57,00,69,00,6e,00,64,00,6f,\
00,77,00,73,00,5c,00,53,00,79,00,73,00,74,00,65, 00,6d,00,33,00,32,00,5c,00,\
75,00,6d,00,63,00,52,00,65,00,73,00,2e,00,64,00, 6c,00,6c,00,2c,00,2d,00,31,\
00,30,00,30,00,00,00
"IconIndirect"=hex (2):40,00,43,00,3a,00,5c,00,57, 00,69,00,6e,00,64,00,6f,00,77,\
00,73,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00, 33,00,32,00,5c,00,75,00,\
6d,00,63,00,52,00,65,00,73,00,2e,00,64,00,6c,00, 6c,00,2c,00,2d,00,31,00,31,\
00,30,00,00,00
"FxVersion"="2.0.1.7"
"Type"="Microsoft.TerminalServices.Configuration. SnapIn.TSConfigSnapIn, tsconfig, Version=6.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
"FolderBitmapsColorMask"=dword:00000000
"ModuleName"="tsconfig.dll"
"Provider"="Microsoft Corporation"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\NodeTypes]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\NodeTypes\{f86e6446-aaff-11d0-b944-00c04fd8d5b9}]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}\Standalone]
напоминаю, что вы их можете создать вручную в виде обычного txt, вставить содержимое, а потом изменить тип файла на reg.
Регистрация оснасток Tsconfig.msc и Tsadmin.msc в Windows Server 2019
Теперь когда у вас есть все файлы необходимые для запуска и установки оснасток Tsconfig.msc и Tsadmin.msc, вы должны распаковать архив и положить файлы по тем же путям, приведу их сюда еще раз:
- c:\windows\system32\tsadmin.dll
- c:\windows\system32\tsconfig.dll
- c:\windows\system32\wts.dll
- c:\windows\system32\tsconfig.msc
- c:\windows\system32\tsadmin.msc
- c:\windows\system32\ru\tsconfig.resources.dll
- c:\windows\system32\ru\tsadmin.resources.dll
Далее вам необходимо на вашем сервере Windows Server 2019 запустить два ключа реестра, которые мы выгружали. При их запуске будет предупреждение, говорим "Да".
Файлы должны успешно импортироваться в реестр Windows.
Проверяем работу диспетчера служб удаленных рабочих столов
Попробуем запустить наши оснастки. Первой давайте запустим Tsadmin.msc. Для этого откройте окно выполнить и введите Tsadmin.msc. В итоге у нас запуститься "Диспетчер служб удаленных рабочих столов" (Remote Desktop Services Manager).
Работающие функции:
- отключение сеанса
- отправка сообщения
- сброс сессии
- статус сеанса
- регистрация сессии
- завершение процесса на вкладке процессов (одна из самых простых и важных функций инструмента)
Так же хочу порекомендовать бесплатную утилиту Terminal Services Manager, о которой я подробно рассказывал, советую посмотреть, это аналог оснасток Tsadmin.msc для некого управления RDS фермой, делает все то же самое.
Проверяем работу конфигурации узла сеансов удаленных рабочих столов
Запустите через окно выполнить Tsconfig.msc.
У вас откроется оснастка "Конфигурация узла сеансов удаленных рабочих столов (Remote Desctop Session Host Configuration)". Тут вы увидите все привычные вкладки для настройки RDP подключения, кроме вкладки "Безопасность", которая доступна только в Windows Server 2008 R2, что весьма и весьма прискорбно, так как это была хорошая плюшка для тонкой настройки доступа по RDP.
На этом у меня все, с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org. Остались вопросы, пожелания или просто хотите поделиться опытом, то жду вас в комментариях.
дуже дякую, встановив, буду слідкувати
Большое спасибо за статью. Пользуюсь tsadmin.msc на Server2008r2. Добавили Server2019 — там оснастки нет. Теперь проблема решена.
Получилось, но под Windows Server 2019 — не работает опция подключиться к сеансу. Так и должно быть? Или у меня что то не так?
Да там могут быть игры с реестром, я советую вам обратить внимание на Terminal Services Manager
Есть варианты решения? Terminal Services Manager при каждом запуске требует ключ, да и хотелось нативное приложение.
Так вы получите бесплатную лицензию
Большое спасибо. Всё работает
Очень полезная статья
Спасибо! Полезная статья. При использовании SHADOW экран не показывается, пока в сеансе не произойдет обновление экрана
Спасибо! Реально полезная статья.
В куче мусора, которого полно в интернете вот так вот иногда повезет наткнуться на ценную информацию!
Рад, что мой практический опыт вам помог!
Это полезная фишка.
Единственный и важный недостаток: отсутствует вкладка Security.
То есть если нужно гибко настроить права, придется еще помучиться с реестром или спец.командами.
Можно развернуть виртуалку с Windows Server 2008 R2 и удаленно подключиться через оснастку к нужному серверу.
Так тоже делал. Это конечно не очень удобно.
Но ради гибкости иногда приходится потратить время.
Еще вариант сделать такой постоянный комп и подключаться ко всем нужным.
Если всё остальное легко правится через реестр и политики, то как раз с галочками безопасности сложнее всего.
Подскажите, а можно для разных портов настраивать разные настройки безопасности? На 2008 это работало, а на 2012 и выше уже нет
Честно не проверял, если вы попробуете, то опишите потом результат, будет интересно
Друзья, еще, если кто не знает:
Вставлять файлы
c:\windows\system32\tsconfig.msc
c:\windows\system32\tsadmin.msc
c:\windows\system32\tsadmin.dll
c:\windows\system32\tsconfig.dll
c:\windows\system32\wts.dll
в указанные папки нужно исключительно или в проводнике, или в 64битовой версии тотал коммандера. Точно также импортировать файлы реестра — ни в коем случае не делать это в 32-разрядной программе. Ничего не получится — файлы попадут в 32-разрядную подсистему? для регистра это, например,
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}]
вместо
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\FX:{3FCE72B6-A31B-43ac-ADDA-120E1E56EB0F}]
и не будут распознаны.
Огромное спасибо! Очень полезная статья. Все прошло на УРА!