Monthly Archives: Январь 2020

RemoteApp на Windows 2012 без домена

Привет, в Windows Server 2012, Microsoft сделали ограничение на использование терминального сервера, если он не введен в домен Active Directory. В частности, я столкнулся с тем, что из консоли управления сервером нельзя настроить RemoteAPP. Но к счастью, приложения можно добавить в ручную, ниже я покажу как это можно сделать.

Само собой, для работы RemoteApp у вас должен быть установлен терминальный сервер, если кто не в курсе, если сервер не в домене, устанавливается он через добавление ролей, а не через установку служб удаленных рабочих столов. Выбираются службы удаленных рабочих столов, в них выбираются лицензирование удаленных рабочих столов и узел сеансов удаленных рабочих столов.

Я покажу как сделать задуманное, на примере 1С, думаю понятно, что по этой схеме можно добавить любое приложение RemoteApp.
Для упрощения процесса, я создал архив с готовыми файлами rdp и reg, скачать можно отсюда.

Ниже описание этих файлов.

Создадим, или откроем из архива .rdp файл подключения.

Содержимое его, должно иметь такой вид:

redirectclipboard:i:1
redirectposdevices:i:0
redirectprinters:i:1
redirectcomports:i:1
redirectsmartcards:i:1
devicestoredirect:s:*
drivestoredirect:s:*
redirectdrives:i:1
session bpp:i:32
prompt for credentials on client:i:1
span monitors:i:1
use multimon:i:1
remoteapplicationmode:i:1
server port:i:3389
full address:s:192.168.1.112
alternate shell:s:||1cestart
remoteapplicationprogram:s:||1cestart
remoteapplicationname:s:1C Предприятие
allow font smoothing:i:1
promptcredentialonce:i:1
authentication level:i:2
gatewayusagemethod:i:2
gatewayprofileusagemethod:i:0
gatewaycredentialssource:i:0
gatewayhostname:s:
remoteapplicationcmdline:s:
screen mode id:i:2
winposstr:s:0,3,0,0,800,600
compression:i:1
keyboardhook:i:2
audiocapturemode:i:0
videoplaybackmode:i:1
connection type:i:7
networkautodetect:i:1
bandwidthautodetect:i:1
displayconnectionbar:i:1
enableworkspacereconnect:i:0
disable wallpaper:i:0
allow desktop composition:i:0
disable full window drag:i:1
disable menu anims:i:1
disable themes:i:0
disable cursor setting:i:0
bitmapcachepersistenable:i:1
audiomode:i:0
autoreconnection enabled:i:1
prompt for credentials:i:0
negotiate security layer:i:1
remoteapplicationicon:s:
shell working directory:s:
gatewaybrokeringtype:i:0
use redirection server name:i:0
rdgiskdcproxy:i:0
kdcproxyname:s:

Вам нужно изменить строчки, на ваши порт и адрес:

server port:i:3389
full address:s:192.168.1.112

А так же, в случае, если добавляете не 1С, то эти то же:

alternate shell:s:||1cestart
remoteapplicationprogram:s:||1cestart
remoteapplicationname:s:1C Предприятие

Сохраните файл, и попробуйте подключиться, если файл создан правильно, то должна будет выскочить ошибка, что приложение RemoteApp отсутсвует в списке разрешенных программ.

Дальше добавим наше приложение в список разрешенных, для этого нужно будет отредактировать реестр. Я сделал дамп ветки которую нужно добавить для 1С 8.2. В архиве, файл называется 1cestart.reg

Его содержимое:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList\Applications\1cestart]
«RequiredCommandLine»=»»
«Name»=»1C Предприятие»
«SecurityDescriptor»=»»
«CommandLineSettings»=dword:00000000
«IconIndex»=dword:00000000
«Path»=»C:\\\\Program Files (x86)\\\\1cv8\\\\common\\\\1cestart.exe»
«ShortPath»=»C:\\\\PROGRA~2\\\\1cv8\\\\common\\\\1cestart.exe»
«ShowInTSWA»=dword:00000001
«IconPath»=»%SystemRoot%\\Installer\\{D4895455-7B12-4E0B-B5F0-EFF6B9C3F93E}\\ShortCut_EnterprSt_41216A7DC6764F558CBAC68BC28BD550.exe»

Если вы будете заносить эти параметры вручную, то нужно в путях изменить \\\\ на \\.

Как не трудно догадаться, в нем нужно изменить пути до вашего приложения, в следующих строках:

«IconPath»=»%SystemRoot%\\Installer\\{D4895455-7B12-4E0B-B5F0-EFF6B9C3F93E}\\ShortCut_EnterprSt_41216A7DC6764F558CBAC68BC28BD550.exe»
«Path»=»C:\\\\Program Files (x86)\\\\1cv8\\\\common\\\\1cestart.exe»
«ShortPath»=»C:\\\\PROGRA~2\\\\1cv8\\\\common\\\\1cestart.exe»

И его имя в строке:

«Name»=»1C Предприятие»

А также ветку реестра, то есть если вы пробрасываете, например, калькулятор, то и ветка должна быть, не Applications\1cestart, а Applications\calc, и не забудьте, проверить, чтобы параметры названия приложения, в файле .rdp, соответствовали названию этой ветки.

Попробуйте подключиться снова, у меня RemoteApp после вышеописанных действий заработал.

Если же у вас что не заработало, проверьте ветку реестра, создалась ли она вообще, и правильные ли в ней пути прописаны, если в ней все верно на 100%, то попробуйте запустить файл termital.reg из архива.

Его содержимое, если кто захочет добавлять руками:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList]
«LicenseServers»=hex(7):00,00
«CertificateIssuedBy»=»»
«LicensingType»=dword:00000005
«fHasCertificate»=dword:00000000
«CertificateExpiresOn»=»»
«CentralLicensing»=dword:00000000
«fDisabledAllowList»=dword:00000000
«CertificateIssuedTo»=»»
«CustomRDPSettings»=»authentication level:i:2»

Источник: https://www.mytechnote.ru/remoteapp-na-windows-2012-bez-domena

3D визуализация и интерьер