- Настройка RemoteApp
- Проверка публикации программ RemoteApp
- Изменение параметров приложения RemoteApp
- Отмена публикации приложений RemoteApp
- Как включить RemoteApp в Windows 10
- Использование встроенных инструментов
- Правка реестра
- Правка файла конфигурации
- Настройка через RemoteApp Tool
- Доступ к приложениям в окне через RemoteAPP
- Версия RDP клиента должна быть 6.1 или выше, посмотреть c:\windows\system32\mstsc.exe открыть свойства и посмотреть версию Либо через командную строку C:\Users\aollo>wmic datafile where name=’c:\windows\system32\mstsc.exe’ get version Version 6.1.7601.17514
- Должен быть установлен .NET Framework 3.5 и выше, посмотреть что установлено в системе, так.: Открыть командную строку (c правами Администратора) и набрать следующую команду: wmic product where «name like ‘Microsoft .NET Framework%'» get name,version
Настройка RemoteApp
Приложения RemoteApp представляют собой программы, удалённый доступ к которым предоставляется с помощью служб удалённых рабочих столов, но выглядят они так, будто это локальные приложения. Проще говоря, приложение RemoteApp представляет собой доступ к удалённому рабочему столу, ограниченному одним приложением. Однако, несмотря на формулировку выше, пользователь может запускать несколько приложений или несколько экземпляров одного и того же приложения в одном сеансе.
Для того, чтобы опубликовать какое-либо приложение RemoteApp нужно открыть Диспетчер задач, перейти в Службы удалённых рабочих столов и там перейти по ссылке с именем коллекции сеансов. В окне коллекции сеансов нажимаем на ссылку Публикация удалённых приложений RemoteApp. В том случае, если уже имеются опубликованные приложения, необходимо нажать на кнопку Задачи и в открывшемся меню выбрать Опубликовать удалённые приложения RemoteApp.
Следует помнить, что публикация хотя-бы одного приложения приведет к отмене публикации удалённого рабочего стола. Это означает, что в одной коллекции могут быть либо удалённый рабочий стол полностью либо некий набор отдельных приложений RemoteApp.
Публиковать можно как предустановленные приложения так и свои собственные. Попробуем опубликовать одно предустановленное (Калькулятор) Для этого необходимо отметить его и нажать кнопку Далее.
В следующем окне подтверждаем свой выбор нажав кнопку Опубликовать.
После публикации приложений RemoteApp, будет отображено окно в котором показано состояние приложений и ошибки, возникшие при установке. Если же ошибок не возникло, то нажимаем кнопку Закрыть, для завершения процесса публикации.
Проверка публикации программ RemoteApp
После успешной публикации удалённых приложений RemoteApp, проверим корректность их работы. Для этого осуществим веб-доступ к RDS с одной из рабочих станций домена. Напомню, что для того чтобы получить веб-доступ к службам удалённых рабочих столов необходимо перейти по специальной ссылке вида https:// /rdweb
Как мы видим, приложения успешно опубликовались и можно попробовать получить к ним доступ.
Изменение параметров приложения RemoteApp
Каждое приложение RemoteApp имеет ряд ключевых опций, которые можно изменить в соответствии с требованиями. Для того, чтобы зайти в меню настроек приложения достаточно в окне коллекции сеансов (в данном случае в окне Коллекция сеансов RDS) на панели Удалённые приложения RemoteApp вызвать контекстное меню приложения, параметры которого необходимо изменить, и там выбрать единственный пункт Изменить свойства.
На вкладке Общие окна свойств приложения доступны следующие настройки:
- Имя удалённого приложения RemoteApp. Позволяет задать произвольное имя для опубликованного приложения.
- Показывать удалённое приложение в службе веб-доступа к удалённым рабочим столам. Если выбрать пункт Нет, то приложение не будет отображаться списке приложений на странице веб-доступа и не будет доступно пользователям, хотя будет установлено на серверах узлов сеансов и будет иметь статус опубликованного.
- Папка удалённого приложения RemoteApp. Этот параметр позволяет упорядочивать приложения RemoteApp, раскладывая их по папкам.
Кроме настроек, в данном окне отображается информация о пути размещения приложения, его псевдониме и иконке.
Папку удалённого приложения RemoteApp можно либо задать вручную, написав в соответствующем поле желаемое имя папки, либо выбрав из существующего списка, если папки были созданы ранее.На вкладке Параметры можно задать параметры командной строки для приложения. Именно здесь можно разрешить использовать любые параметры командной строки или вообще запретить их использование. Помимо этого можно задать принудительное использование заранее заданных параметров.
Свойства вкладки Назначение пользователей позволяют настроить видимость приложения в системе веб-доступа для заданных пользователей или групп пользователей. Поскольку по умолчанию все пользователи коллекции сеансов имеют доступ ко всем опубликованным в ней приложениям, данная вкладка позволяет гибко настроить доступ пользователей к приложениям RemoteApp внутри самой коллекции.
На вкладке Сопоставление типов файлов можно задать типы файлов, которые автоматически будут открываться с помощью выбранного приложения RemoteApp.
Следует помнить об одном очень важном ограничении — данная опция не работает в случае веб-доступа к приложениям.
Отмена публикации приложений RemoteApp
В случае, когда удалённое приложение больше не используется, целесообразно отменить его публикацию. Рассмотрим выполнение этой операции на примере приложения Калькулятор.
Для того, чтобы вызвать мастер отмены публикации удалённых приложений RemoteApp нужно выбрать пункт Отменить публикацию удалённых приложений RemoteApp в меню Задачи на панели Удалённые приложения RemoteApp.
На первом шаге мастера выбираем из списка опубликованных приложений RemoteApp приложение, публикацию которого необходимо отменить. Можно выбрать все приложения и в таком случае после отмены их публикации станет возможен доступ к удалённому рабочему столу полностью.
В окне с подтверждением выбора предлагается проверить правильность выбранных приложений и нажать кнопку Отменить публикацию.
После успешного выполнения операции отмены публикации отобразится окно, сообщающее об этом.
Как включить RemoteApp в Windows 10
Технология RemoteApp позволяет настроить удалённый доступ к отдельному приложению. Пользователь не сможет работать с другими элементами операционной системы — при входе в учётную запись он будет сразу видеть окно программы, которую подключил администратор.
Использование встроенных инструментов
Технология RemoteApp доступна на Windows 10 Professional. Настроить подключение можно двумя способами: через прямую правку реестра или с помощью файла конфигурации. Посмотрим, как это сделать, на примере программы 1С.
Правка реестра
Запускаем редактор реестра (Win+R — regedit). Переходим на ветку HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList\Applications\. Кликаем по папке Applications правой кнопкой, выбираем опцию «Создать» — «Новый раздел» и задаём ему имя 1С RemoteApp (указываем название программы, к которой будет подключаться пользователь).
Выбираем новый каталог. Создаём внутри него несколько параметров («Создать» — «Строковый параметр»).
- Название — Name, значение — 1C RemoteApp
- Название — Path, значение — C:\Program Files (x86)\1cv8\common\1cestart_start.exe (это полный путь к исполняемому файлу программы).
- Название — VPath, значение — C:\Program Files (x86)\1cv8\common\1cestart_start.exe.
- Название — RequiredCommandLine, значение — пустая строка.
- Название — CommandLineSetting, значение — 0x00000001.
- Название — IconPath, значение — C:\Program Files (x86)\1cv8\common\1cestart_start.exe.
- Название — IconIndex, значение — 0x00000000.
- Название — ShowInTSWA, значение — 0x00000000.
Так должен выглядеть раздел RemoteApp
Правка файла конфигурации
Аналогичного результата можно добиться с помощью файла конфигурации. Открываем любой текстовый редактор и вставляем в него следующий текст:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList\Applications\1C RemoteApp]
«Path»=»C:\\Program Files (x86)\\1cv8\\common\\1cestart.exe»
«VPath»=»C:\\Program Files (x86)\\1cv8\\common\\1cestart.exe»
«IconPath»=»C:\\Program Files (x86)\\1cv8\\common\\1cestart.exe»
Указываем полный путь к исполняемому файлу программы, к которой будет подключаться пользователь. Сохраняем документ с расширением .REG — например, 1C RemoteApp.reg.
Следующий шаг — создание ярлыка для подключения. Для этого нужно знать адрес, по которому доступен удалённый рабочий стол. Например, пусть он будет 192.168.0.9:3569. Создаём новый текстовый документ и вставляем в него текст:
allow font smoothing:i:1
alternate full address:s:192.168.0.9:3569
full address:s:192.168.0.9:3569
prompt for credentials on client:i:1
remoteapplicationname:s:1C RemoteApp
remoteapplicationprogram:s:||1C RemoteApp
Сохраняем файл с расширением .RDP — например, 1C RemoteApp.rdp.
Настройка через RemoteApp Tool
Можно обойтись без ручной правки реестра и настроить подключение с помощью бесплатной утилиты RemoteApp Tool.
- Раскрываем меню File и выбираем опцию New Remote App.
- Заполняем поля, как показано на скриншоте. Указываем имя подключения, а также полный путь к исполняемому файлу программы, с которой будет устанавливаться соединение.
Настройки подключения к удалённому приложению
Чтобы создать ярлык подключения, выбираем в списке RemoteApp и нажимаем на кнопку Create Client Connection. Отмечаем RDP File, указываем адрес сервера и номер порта. Нажимаем Create для сохранения конфигурации.
Создаём подключение к удалённому рабочему столу, на котором будет доступна только одна программа
Настройка через RemoteApp Tool завершена. Фактически мы указали те же данные, что и в редакторе реестра, только сделали это через удобный графический интерфейс.
Доступ к приложениям в окне через RemoteAPP
Итак всем привет и хорошего дня, сегодня я покажу на практике, как сделать следующее:
Задача: на терминальном сервере активировать службу RemoteAPP и опубликовать приложение клиента 1С на подключение к развернутому кластеру 1C.
На сервер установлен гипервизор ESXi, а уже внутри него под каждую задачу развернуты виртуальные системы:
- Имеется доменnemdomb.local
- Имеется развернутый терминальный сервер
- Имеется сервер базы данных и кластер1с (все на одной машине, то лучше разделять по отдельным системам
- и отдельная рабочая станция.
Но пока как заготовка, терминальный сервер я разверну на сервере базы данных и кластере 1С (все на одной машине).
На терминальном сервере рекомендую пользовательский профили вынести на отдельный диск вместо системного:
Для чего нужен RemoteAPP – это технология расширения функционала терминального сервера посредством которой можно вместо того, чтоб каждому пользователю настраивать удаленное подключение где он будет работать с приложениями (Почта, 1С, печать и другими) сделать так чтобы у него на компьютере был вынесен ярлык через который запускается удаленная сессия с запуском опубликованного приложения.
К примеру: у меня сейчас два офиса, в одном (он же главный) располагается кластер 1с + база и терминальный сервер и вместо того, чтобы пользователи через удаленный рабочий стол заходили на терминальный сервер из другого офиса (это каждому нужно настраивать профиль: вывести ярлыки программ, организовать печать, обеспечить интернетом (а по соображениями безопасности я этого сделать не могу, просто так надо) у них на своих рабочих компьютерах настроен ярлык на запуск только опубликованного приложения. В рамках этой заметки я покажу на практике как это выглядит.
Создаю приложение которое будет опубликовано с использованием RemoteAPP на терминальном сервере:
Start – Control Panel – Administrative Tools – Server Manager – Roles – Remote Desktop Services – RemoteApp Manager (srv-host.nemdomb.local) – запускаю мастер: Add RemoteApp Programs, нажимаю Next, следующим шагом показывается какие текущие установленные приложения на терминальном сервере могут выступить в роли опубликованных через RemoteAPP, выбираю самое первое 1С Предприятие через нажатием на кнопку Properties можно:
- переименовать добавляемое приложение
- Изменить путь запуска до исполняемого файла
- Изменить алиас
- Настроить запуск клиента 1С с опциями запуска (к примеру подключение к опеределенной базе под определенным пользователем и паролем: /ENTERPRISE /S “1ccluster\base” /N “test” /P “test” — Здесь подключение к кластеру с именем 1ccluster, base – название базы, testtest – пользователь и пароль в этой базе)
Я же в рамках этой заметки не буду настраивать ничего в свойствах, а просто выбираю приложение: —
Нажимаю на кнопку Next и перехожу к этапу мастера где отображается результирующая информация по настройкам публикуемого приложения, если все правильно и ничего не нужно изменять нажимаю Finish
Следующим шагом нужно экспортировать RemoteAPP созданное приложение с целью распространить на компьютеры пользователям которые будут с ним работать , делает это так, выделяется приложение и через правый клик на нем вызываются свойства.
Опубликованное приложением можно экспортировать, как rdp файл настроенного подключение так и как msi пакет (можно поставить локально его на компьютере пользователя или же через GPO установить)
Если выбрать экспорт в виде RDP файла: Create .rdp File, по умолчанию путь куда предлагает мастер экспорта сохранить rdp файл подключения: C:\Program Files\Packaged Programs, но никто не мешает изменить данный путь на любой другое более удобный. Я оставляю по умолчанию
Следующим шагом также выводится результирующая информация – если все хорошо то нажимаем кнопку Finish и откроется explorer местонахождения экспортированного файла опубликованного приложения 1С, если открыть свойства данного rdp файла, то можно обнаружить что в настройки подключения к терминальному сервере уже автоматически подставляются аутентификационные данные текущей сессии на компьютере:
Теперь копирую данный файл: 1cv8s.rdp на рабочую станцию с которой пользователь alektest будет взаимодействовать клиентом 1С Предприятие.
На заметку: чтобы передать файл простым копирование через проводник:
\\w7x86\с$ на рабочей станции в настройках брандмауера должны быть включены входящие правила:
- Общий доступ к файлам и принтерам (входящий трафик SMB ) – Профиль (Домен).
- Общий доступ к файлам и принтерам (эхо-запрос – входящий трафик ICMPv4) – Профиль (Домен)
На заметку: пользователи которые задействуют RemoteAPP приложения на терминальном сервере должны быть в группе Remote Desktop Users
Запускаю на рабочей станции Windows 7 (W7X86) переданный файл предварительно авторизовавшись в системе под учетной записью alektest
На следующем шаге ввожу пароль на авторизацию на терминальном сервере: (Практичнее будет использовать SSO, т.е. авторизация на терминальном сервере с использование доменной учетной записи, а на терминальном сервере в группу “Пользователи удаленного рабочего стола” (Remote Desktop Users) добавить группу “Пользователи домена”).
На заметку: если задействовать SSO то вводить ничего не придется, будет задействована доменная аутентификация без какого либо ввода пароля.
Ожидаю… Идет подключение к приложению
Видите, раз в приложении когда я его подготавливал для RemoteAPP я не указал базу и сервер, то первый раз когда пользователь подключается у него запускается информационное окно, что список информационных баз пуст и нужно настроить:
Нажимаю “Да” — после выбираю: “Добавление в список существующей информационной базы” —
- Укажите наименование информационной базы: zup
- Выберите тип расположения информационной базы: На сервере 1С:Предприятия
Затем на следующем шаге указываю параметры информационной базы:
- Кластер серверов 1С:Предприятия:10.7.8.63
- Имя информационной базы в кластере: zup
Затем на следующем шаге все выбранное мастеров оставляю по дефолту
На этом установка клиента 1С на подключение завершена.
В итоге будет так:
Подключаюсь к данной базе zup нажатием на 1С:Предприятие и происходит подключение к базе путем ввода логина и пароля выданного Администратором 1С (хотя может и Вы можете совмещать две должности вместе: системный администратор + администратор 1С).
И вот вы внутри:
Работа с клиентом 1С на рабочем столе ничем особым не отличается если бы пользователь работал на терминальном сервере, теже самые окна, чтобы распечатать документы задействуется технология EasyPrint когда принтер с рабочей станции пробросится на терминальный сервер, и пользователь выбрав документ – печать также увидит и выбрав его распечатает.
Ниже скришот демонстрирует, открытое окно клиента 1С и “Диспетчер задач” во вкладке “Процессы” которого присутствует подключение к терминальному серверу через (mstsc.exe).
Чтобы задейстовать технологию EasyPrint и не ставить драйвера на терминальный сервер к рабочим станциям в домене предъявляются следующие требования:
Версия RDP клиента должна быть 6.1 или выше, посмотреть c:\windows\system32\mstsc.exe открыть свойства и посмотреть версию
Либо через командную строку
C:\Users\aollo>wmic datafile where name=’c:\\windows\\system32\\mstsc.exe’ get version
Version
6.1.7601.17514
Должен быть установлен .NET Framework 3.5 и выше, посмотреть что установлено в системе, так.: Открыть командную строку (c правами Администратора) и набрать следующую команду:
wmic product where «name like ‘Microsoft .NET Framework%'» get name,version
На заметку: когда пользователь закрывает 1С нажатием на крестик (или Файл — Выход), то его сессия на терминальном сервере не закрывается, а все еще находится в состоянии подключения
он может снова подключиться, но теперь введя пароль не забыть поставить галочку “Запомнить учетные данные” чтобы больше не видеть данное окно.
Если же по каким бы то ни было причинам, пароль был введен и сохранен, а в последствии пользователь его изменил (обычно по централизованной политике раз в 3 месяца), то он не сможет подключиться, т.к. пароль запомнен изменить его можно вот так:
На рабочей станции пользователя: Windows 7 – Пуск – Панель управления – Диспетчер учетных записей, находим сохраненное подключение
Нажимаем “Изменить” — и меняем пароль поле которого выделено на представленном скрипншоте ниже:
Согласитель, не хорошо, что когда клиент 1с закрыт, сессия на терминальном сервере все еще висит, в таком случае на терминальном сервере настраиваются промежутки ограничения простоя и неактивности терминального соединения:
Если сессия не активно в течении одного дня – она завершается, если в статусе Disconnected то через 15 минут она закрывается.
Если же экспортировать приложение RemoteAPP не в rdp файл, а в msi пакет, то
- либо такжепередаем через проводник данный файл
- либо через подготавливаем групповую политику:
GPO_RemoteAPP — Configuration — Policies — Software Settings — Software Installation — и путь в расшаренной папке до msi пакета RemoteAPP
После перезагрузки рабочей станции на рабочем столе пользователя будет ярлык 1С
Если ранее уже через rdp файл было настроено подключеник к базе, то когда через GPO произвели установку msi пакета найстройки подключения в клиенте 1С уже присутствуют:
У меня было что политика применилась к компьютеру, но msi все равно не устанавливалась, в логах на компьютере Windows 7 были следующие ошибки:
- Event ID: 303 → Удаление назначения приложения 1C Предприятие из политики GPO_RemoteAPP выполнено успешно.
- Event ID: 108 → Не удалось применить изменения для параметров установки приложения. Невозможно выполнить изменения для этого программного обеспечения. Должны существовать предшествующие записи в журнале, содержащие необходимые сведения. Ошибка: %%1612
- Event ID: 1085 → Windows не удалось применить параметры «Software Installation«. Параметры «Software Installation» могут иметь свой собственный файл журнала. Щелкните ссылку «Дополнительные сведения«.
Проблема была в месте откуда в момент создать групповой политики я указывал месторасположением msi файла, у компьютера не было прав доступа в данный каталог. Права на каталог месторасположения msi файла должны быть, чтобы у группы “Прошедшие проверку” были права на чтение (Чтение и выполение,Список содержимого папки,Чтение) и только тогда msi успешно отработает.
В итоге данная заметка шпаргалка готова и подлежит публикации на моем блоге практических заметок. Всего того, что пригодится в течении рабочего дня и самостоятельного изучения, повышения свой квалификации. Итого подведу итог практических действий:
- Развернут терминальный сервер
- Профиля будующих пользователей вынесены на отдельный логический диск.
- Посредством компоненты RemoteAPP и установленного ПО на сервере собраные пакеты задействующие технологию RemoteAPP для использования ПО, как будто оно установлена на рабочих местах пользователей, а все на самом деле не так, они работают в терминале. Таким образом достигается меньшая нагрузка на сеть.
- Чтобы запускать на рабочих станциях опубликованное приложение RemoteAPP, можно раз ввести аутентификационные данные на подключение к терминальному сервере или задействовать SSO.
- Также посредством GPO можно msi файл опубликованного приложения установить всем тем сотрудникам которые работают в программе 1С.
- На терминальном сервере можно централизованно по каждому профилю раскидать файл конфигурации на подключение к кластеру 1С и соответствующей базе. Об этом будет одна из следующих заметок.
Ну а пока я прощаюсь, я и так довольно много всего рассмотрел и не зачем еще более увеличивать данную заметку. Лучше много мелких и по теме, чем все сразу. До новых встреч, с уважением автор блога – ekzorchik.