В данной статье рассмотрим вариант доступа к приложению, установленном на выделенном виртуальном сервере на площадке дата-центра.
Задача: организовать доступ к приложению через RemoteApp (RDP). Рассматривается на примере ОС Windows Server 2008R2, но актуально и для более новых версий серверных ОС.
Начало:
- Устанавливаем Windows Server 2008R2;
- Устанавливаем обновления + Антивирус;
- Настраиваем сеть.
Архитектура сети:
Провайдер выделяет один статический IP с выходом в сеть Интернет. Наша задача максимально закрыть доступ к ресурсам сервера.
Для решения задачи создаём следующую архитектуру:
- Сетевому интерфейсу назначим еще один IP адрес из приватного пространства.
- Создадим VPN туннель для подключения к серверу (простой PPTP VPN c MS-CHAP2), 3. внутренними службами и ролями Windows Server 2008R2 (без затрат).
- Поднимем роль Удаленных рабочих столов (включая сервер лицензирования, поскольку он один в сети)
- Установим приложение.
1. Настройка сети
Назначим дополнительный адрес — 172.16.77.1/24 (на выбор)
2. VPN туннель для подключения к серверу
2.1. Установим роль «Службы политики сети и доступа», выберем Маршрутизацию и Удаленный доступ
Настроим роль
Мы не поднимаем роль DHCP сервера, поэтому задачу по предоставлению IP адресов для VPN пользователей назначим самому серверу VPN. Для этого на вкладке IPv4 выберем «Статический пул адресов» и «Добавим» пул адресов.
Этих настроек достаточно, чтоб заработал наш VPN по PPTP. Запустим VPN сервер. Если необходимо закрыть порты подключения для VPN, то в свойствах вкладки «Порты» отключаем ненужные.
VPN готов.
2.2. Создадим пользователей для подключения к серверу через VPN
И дадим права на подключение через VPN
2.3. Дополнительные настройки для сети
Для возможности пинговать нашу VPN подсеть, разрешим это в брандмауэре.
В свойствах правил убираем Публичные сети
И включаем правило.
В Центре управления сетями меняем настройку размещения на Сеть предприятия (Частная сеть).
Теперь 172.16.77.0/24 подсеть будет пинговаться.
3. Установим роль «Удаленных рабочих столов»
Выбираем тип лицензий на подключение (Пользователь или Устройство)
Пользователи или группы которые будут включены в группу «Пользовтаели удаленного рабочего стола». Это локальная группа, члены которой будут иметь доступ через удаленный рабочий стол. Если пользовтель не в группе Пользователей удаленного рабочего стола, то не сможет подключиться через RDP.
Поскольку у нас в сети больше нет серверов со службами Удаленных рабочих столов, то и роль сервера лицензирования Удаленных рабочих столов ставим на наш сервер.
Устанавливаем роль, перегружаемся.
Устанавливаем лицензии для Удаленных рабочих столов
Активируем сервер
Переходим к Мастеру активации сервера. Выбираем режим (у меня Авто, активация через Интернет)
Вводим персональные данные указанные при покупке лицензий. После активации запускается мастер установки лицензий. Выбираем программу лицензирования и вводим данные лицензионной программы.
Если возникают проблемы с сервером лицензирования, то задаем его вручную
Здесь будет значение не указано, открываем свойства и правим
Добавляем наш Сервер и проверяем
На этом сервер Удаленных рабочих столов готов!
4. Настройки безопасности
Закрываем доступ подключения на Удаленный рабочий стол напрямую через публичный IP адрес
Разрешаем подключение только с нашей подсети
И убираем правило подключения с публичных сетей
Теперь достучаться до сервера через RDP можно только получив локальный адрес через VPN.
Конечно, устанавливать на один сервер и VPN и остальные роли, с точки зрения безопасности, неправильно, но в данном случае у нас нет выбора.
5. Публикация приложения в RemoteApp
RemoteApp появился в Server 2008. Это одной из функций роли служб терминалов, которая позволяет не полностью отображать рабочее окружение на стороне клиента, а только область приложения. RemoteApp создает ощущение, что приложение запущено локально.
Публикуем приложение
Откроется мастер удаленных приложений. Выбираем приложение для публикации (в данном случае Paint) и публикуем. Аналогично можно публиковать и другие установленные приложения.
Далее создаем RDP файл или пакет установщика Windows
Создаю rdp файл, поскольку я не хочу чтоб была установлена программа, а этот rdp файл можно передать для подключения.
Само создание файла rdp тоже тривиальна и проходит через мастера.
Итог:
Мы имеем сервер с приложениями доступ к которому можно получить только при подключении к нему через VPN. Для запуска приложений нет необходимости пользователю подгружать весь удаленный рабочий стол, а с помощью RemoteApp запускать приложения как на локальном компьютере.
Информация:
Для удобства публикации доступа к серверу можно воспользоваться стандартной компонентой CMAK — «Connection Manager Administration Kit» (в русской версии «Пакет администрирования диспетчера подключений»).