Не всегда для работы пользователей на терминальном сервере нужна полноценная сессия удаленного рабочего стола. Допустим в вашей компании пользователи используют на терминальном сервере только приложение 1С: Предприятие 8.2. Здесь мы можем использовать технологию RemoteApp, которая появилась в Windows 2008.
RemoteApp – это программы, удаленный доступ к которым можно получить через службы терминалов и которые работают так, как будто они запущены на локальном компьютере пользователя. Пользователи могут запускать программы RemoteApp вместе со своими локальными программами. Пользователи могут сворачивать и разворачивать окно программы, изменять его размеры и с легкостью запускать сразу несколько программ. Если пользователь запускает более одной программы RemoteApp на одном сервере терминалов, программы RemoteApp будут находиться в одном сеансе служб терминалов.
Настройка приложения RemoteApp на примере 1С: Предприятие 8.2:
- Открываем «Диспетчер удаленных приложений RemoteApp» (Рис.1):
Службы удаленных рабочих столов (RDS) в Windows Server 2012
2. В диспетчере, на панели действий справа, выбираем «Добавить удаленные приложения RemoteApp» (Рис.2):
Источник: sergeykovarsky.blogspot.com
jameszero.net
Цикл статей «Записки системного администратора» или «Случай из практики» в этот раз объяснит особенности укрощения RemoteApp и 1С в дикой природе условиях современного офиса.
Не так давно мне пришлось поработать с такой замечательной функцией Remote Desktop Services как RemoteApp. Любую технологию лучше всего изучать в практическом применении и мне предоставилась такая возможность — я решил сделать работу пользователей в терминале с программой 1C Предприятие более удобной. Сказано – сделано.
У одного из моих клиентов все получилось как нельзя лучше — бухгалтеры были довольны и программа работает быстро и 1С выглядит привычно, как обычное приложение.
У второго же клиента я столкнулся с небольшой проблемой. Я как обычно добавил приложение в RemoteApp manager. Создал с его помощью файл RDP и скопировал этот файл на рабочий стол пользователя. Запустил:
На первый взгляд все заработало, однако после ввода пароля приложение не запустилось, а спустя несколько секунд появилась вот такая вот ошибка:
Из собственного опыта общения c 1C я знал, что источник ошибки с именем BEX это как правило DEP (Data Execution Prevention). Однако, я уже давно создал исключение для всех критичных процессов 1С в диалоговом окне с настройками DEP! Путем логических размышлений я нашел решение проблемы — необходимо было добавить 1cv7.exe файл в исключения DEP еще раз, только в качестве пути к файлу указать не локальный путь, а тот путь который указан при настройки RemoteApp пакета! Примерно вот так:
Настройка доступа к 1С 8 3 через RemoteApp. Windows Server 2016
Microsoft Registry
\Serverc$Program Files1cbin1cv7.exe
После чего я увидел желанное окно программы с выбором базы:
На этом дело можно было бы считать закрытым. Однако, при каждом запуске программы сначала появлялось вот такое вот окно:
Windows сообщала мне, что сомневается в надежности запускаемого файла, и предлагала еще раз подумать, прежде чем запускать его. Каких только вариантов я не перепробовал — редактировал Зоны безопасности IE, менял настройки этих зон, добавлял имя сервера в доверенные и локальные узлы, добавлял системную переменную see_mask_nozonechecks, вобщем перепробовал все что мне насоветовал google.
Время поджимало, поэтому я решил отложить решение проблемы на потом. Вечером я решил проверить работу RemoteApp на своем домашнем компьютере. Немного подправив RDP-файл, я запустил приложение и увидел то же самое окно Open File- Security Warning!
На моем домашнем компьютере установлена Windows 7 RU, а окно с ошибкой было на английском языке, кроме того в заголовке thumbnail для ошибки присутствовала подсказка- слово удаленный. т.е. окно ошибки пробрасывалось с сервера ко мне на экран, и причину следовало искать на сервере! Для сравнения я открыл файл скачанный из интернета и у меня появилось уже родное окно предупреждения — на русском языке и оформленное в стиле темы Aero. Разницу вы ведите на этой картинке:
В окошке “моей” Windows присутствует галочка “Всегда спрашивать при открытии этого файла“, сняв которую можно было бы решить проблему, но в окне которое передавалось с сервера- такой возможности не предоставлено — кто я такой что бы управлять безопасностью на сервере? Мои предыдущие изыскания создали для меня видимую сложность решения проблемы- еще с полчаса я самозабвенно баловался с групповыми политиками — теперь уже на сервере, перепробовал все методы, которые пробовал на клиенте.
Однако решение лежало на поверхности. Зайдя на сервере в настройки безопастности IE, в настройках “местной интрасети” я увидел непорядок. Отсутствовали нужные галочки и в доверенных сайтах было пусто(по идее, при включенной галочке Automaticaly detect intranet network добавлять в доверенные сайты ничего не надо, но на практике лучше подстраховаться, что я и сделал), получилось вот так:
После этого у меня все получилось — программа наконец то запустилась без всяких вопросов (кроме вопроса о пароле разумеется).
На этом можно было бы закончить. Однако после долгих мытарств с RemoteApp и вокруг нее, я стал подозрительным и тщательно стал проверять работу приложения. Обнаружилась еще одна проблема — после закрытия программы сессия удаленного рабочего стола оставалась активной на сервере, а затем, примерно по истечении минуты переходила в состояние Disconnected.
По задумке разработчиков, такое поведение обеспечивает более быстрые последующие запуски приложения. Однако у меня (возможно из за кармы) получилось не так. В некоторых случаях после перехода сессии в состояние Disconnected, повторно запустить 1С не удавалось, вместо этого окно запуска приложения изображало процесс соединения и темный экран- затем закрывалось, а на сервере завершалась сессия. Последующий запуск приложения был успешным. Возможно такое поведение характерно только для 1С, но я решил поправить групповые политики — дабы не наблюдать в диспетчере задач множество “дохлых” сессий пользователей. Оказывается, есть такая девушка политика:
Запускаем на сервере терминалов gpedit.msc. Нам нужна политика по Set time limit for logoff of RemoteApp sessions, которая находится по адресу
Источник: jameszero.net
Настройка Windows Server 2008 Terminal Services RemoteApp (удаленные приложения служб терминалов)
Эта технология очень удобна, когда пользователь использует одно-два приложения на удаленном компьютере, и отсутствует необходимость доступа к удаленному рабочему столу. Удаленное приложение запускается в «прозрачном» режиме, т.е для пользователя это выглядит как запуск локального приложения. Чем-то технология RemoteApp очень похожа на запуск приложения в Windows 7 XP Mode.
Подготовка
На клиентских компьютерах под управлением Windows XP и Vista необходимо обновить клиент RDP до версии 7.0. Скачать обновление можно по ссылкам ниже:
Настройка
В качестве примера осуществим удаленный запуск приложения Wordpad.
Открываем «Диспетчер удаленных приложений RemoteApp служб терминалов» (Пуск -> Администрирование -> Службы терминалов):
В правом меню выбираем пункт «Параметры сервера терминалов»:
Здесь необходимо отключить опцию «Требовать проверку подлинности сервера». Делаем это, чтобы упростить настройку. В противном случае придется настраивать центр сертификации, что выходит за рамки этой статьи.
Возвращаемся в главное окно Диспетчера удаленных приложений, и в правом меню выбираем пункт «Добавление удаленных приложений RemoteApp». Стартует мастер — смело жмем Далее и попадаем в окно выбора приложения:
В этом списке отображаются приложения, установленные в режиме совместимости с сервером терминалов. Однако, вы можете выбрать любой исполняемый файл с помощью кнопки Обзор (правда в этом случае никаких гарантий).
Выбираем из списка WordPad. Открываем свойства:
Доступность через службу веб-доступа я отключаю за неимением таковой. Параметры командной строки для WordPad не актуальны…
После добавления WordPad в список удаленных приложений, необходимо выбрать вариант запуска приложения, их всего два: с помощью rdp-файла и с помощью пакета установщика Windows. Первый вариант простой и не требует установки. Второй чуть сложнее (требуется установка), но имеет несколько преимуществ: создает иконки удаленного приложения на рабочем столе и в меню Пуск, а также связывает соответствующие расширения файлов с удаленной программой (что на мой взгляд очень удобно).
Общие настройки создания rdp-файла и пакета установщика:
Отдельные настройки для пакета установщика:
После создания rdp-файла или пакета установщика, его нужно перенести на компьютер с которого будет осуществляться запуск. Ну и на этом практически настройка завершена. WordPad в режиме RemoteApp:
Единственное неудобство — языковая панель удаленного компьютера, но как раз для WordPad она очень кстати.
Некоторые особенности
- В настройках подключения используются имя и пароль пользователя, который создает файлы. Очень часто это делает Администратор. Поэтому будьте осторожны, чтобы не предоставить доступ к своему аккаунту! Изменить данные для входа можно так: правый клик на rdp-файле, в меню выбрать Изменить. В отличие от обычного rdp-файла здесь вы увидите только возможность сменить имя пользователя удаленного приложения.
- При закрытии удаленного приложения сеанс завершается не полностью, а переходит в состояние отключен. В настройках по умолчанию время жизни отключенного сеанса не ограничено, что может привести к повышенному использованию системных ресурсов. Время жизни отключенного сеанса можно установить или в свойствах пользователя или в общих свойствах подключения RDP:
- Если при подключении вы наблюдаете ошибку «Ошибка подключения к удаленному рабочему столу из-за невозможности проверить подлинность удаленного компьютера», то это означает, что во время создания rdp-файла вы не отключили опцию «Требовать проверку подлинности сервера».
Полезное
- Принципы работы TS RemoteApp
- Подписываем RemoteApp сертификатом
- Настройка RemoteApp в Windows 7 — пытался повторить у себя на компе — не получилось (отсутсвовали необходимые ключи реестра). Похоже, в SP1 лавочку прикрыли.
- Метки RDP, Windows Server, Удаленный доступ
Источник: www.q2w3.ru