Rdp вход по личному сертификату. RemoteApp и Remote Desktop вход на терминальный сервер без ввода логина и пароля. Включение удаленного доступа на своем компьютере

Наверняка, многие из вас уже слышали и видели эту аббревиатуру - дословно переводится она, как Протокол удалённого рабочего стола (Remote Desktop Protocol) . Если кого-то интересуют технические тонкости работы этого протокола прикладного уровня - могут почитать литературу, начиная с той же самой википедии. Мы же рассмотрим чисто практические аспекты. А именно тот, что данный протокол позволяет удалённо подключаться к компьютерам, под управлением Windows различных версий с использованием встроенного в Windows инструмента «Подключение к удалённому рабочему столу».

Какие плюсы и минусы в использовании протокола RDP?

Начнём с приятного - с плюсов. Плюс состоит в том, что этот инструмент, который правильней называть Клиентом RDP , доступен любому пользователю Windows как на компьютере, с которого предстоит управлять удалённым, так и тому, кто хочет к своему компьютеру удалённый доступ открыть.

Через подключение к удалённому рабочему столу возможно не только видеть удалённый рабочий стол и пользоваться ресурсами удалённого компьютера, так и подключать к нему локальные диски, принтеры, смарткарты и т.п. Конечно, если вы захотите посмотреть видео или послушать музыку через RDP - вряд ли этот процесс доставит вам удовольствие, т.к. в большинстве случаев вы увидите слайд шоу, и звук скорей всего будет прерываться. Но, не под эти задачи разрабатывалась служба RDP.

Ещё одним несомненным плюсом является то, что подключение к компьютеру осуществляется безо всяких дополнительных программок, которые в большинстве своём платные, хотя и имеют свои достоинства. Время доступа к RDP-серверу (которым и является ваш удалённый компьютер) ограничивается лишь вашим желанием.

Минусов всего два. Один существенный, другой - не очень. Первый и существенный - для работы с RDP компьютер, к которому осуществляется подключение, должен иметь белый (внешний) IP, либо на этот компьютер должна быть возможность «пробросить» порт с маршрутизатора, который опять же должен иметь внешний IP. Статическим он будет или динамическим - значения не имеет, но он должен быть.

Второй минус - не такой существенный - последние версии клиента перестали поддерживать 16-цветную цветовую схему. Минимум - 15бит. Это сильно замедляет работу по RDP, когда вы подключаетесь по чахлому-дохлому интернету со скоростью, не превышающей 64 килобита в секунду.

Для чего можно использовать удалённый доступ по RDP?

Организации, как правило, используют RDP-сервера для совместной работы в программе 1С. А некоторые, даже, разворачивают на них рабочие места пользователей. Таким образом, пользователь, особенно, если у него разъездная работа, может при наличии 3G интернета или отельного/кафешного Wi-Fi - подключаться к своему рабочему месту удалённо и решать все вопросы.

В некоторых случаях домашние пользователи могут использовать удалённый доступ к своему домашнему компьютеру, чтобы получить какие-то данные с домашних ресурсов. В принципе, служба удалённого рабочего стола позволяет полноценно работать с текстовыми, инженерными и графическими приложениями. С обработкой видео и звука по вышеприведённым причинам - работать не получится, но всё равно - это очень существенный плюс. А ещё можно на работе просматривать закрытые политикой компании ресурсы, подключившись к домашнему компьютеру безо всяких анонимайзеров, vpn и прочей нечисти.

Подготавливаем интернет

В предыдущем разделе мы говорили о том, что для обеспечения возможности удалённого доступа по протоколу RDP нам необходим внешний IP-адрес. Этот сервис может обеспечить провайдер, поэтому звоним или пишем, или заходим в личный кабинет и организовываем предоставление этого адреса. В идеале он должен быть статический, но и с динамическим, в принципе, можно жить.

Если кому-то не понятна терминология, то статический адрес - это постоянный, а динамический - время от времени меняется. Для того, чтобы полноценно работать с динамическими IP-адресами придумали различные сервисы, которые обеспечивают привязку динамического домена. Что и как, скоро будет статья на эту тему.

Подготавливаем роутер

Если ваш компьютер подключен не напрямую к провайдерскому проводу к интернету, а через роутер - с этим устройством нам придётся тоже совершить некоторые манипуляции. А именно - пробросить порт сервиса - 3389 . В противном случае NAT вашего роутера попросту не будет пускать вас внутрь домашней сети. Тоже относится к настройке RDP-сервера в организации. Если вы не знаете, как пробросить порт - читайте статью про то, Как пробросить порты на маршрутизаторе (откроется в новой вкладке), потом возвращайтесь сюда.

Подготавливаем компьютер

Для того, чтобы создать возможность удалённого подключения к компьютеру, необходимо сделать ровно две вещи:

Разрешить подключение в Свойствах Системы;
- задать пароль для текущего пользователя (если он не имеет пароля), либо создать нового пользователя с паролем специально для подключения по RDP.

Как поступать с пользователем - решайте сами. Однако, имейте ввиду, что штатно не серверные операционные системы не поддерживают множественный вход. Т.е. если вы залогинились под собой локально (консольно), а потом зайдёте под тем же пользователем удалённо - локальный экран заблокируется и сеанс на том же самом месте откроется в окне Подключения к удалённому рабочему столу. Введёте пароль локально, не выйдя из RDP - вас выкинет из удалённого доступа, и вы увидите текущий экран на своём локальном мониторе. Тоже самое вас ждёт, если вы зайдёте консольно под одним пользователем, а удалённо попытаетесь зайти под другим. В этом случае система предложит завершить сеанс локального пользователя, что не всегда может быть удобно.

Итак, заходим в Пуск , щёлкаем правой кнопкой по меню Компьютер и нажимаем Свойства .

В свойствах Системы выбираем Дополнительные параметры системы

В открывшемся окне переходим на вкладку Удалённый доступ

…нажимаем Дополнительно

И ставим единственную галку на этой странице.

Это «домашняя» версия Windows 7 - у кого Pro и выше, будет больше флажков и возможно сделать разграничение доступа.

Нажимаем ОК везде.

Теперь, вы можете зайти в Подключение к удалённому рабочему столу (Пуск>Все программы>Стандартные), вбить туда IP-адрес компьютера, либо имя, если хотите подключиться к нему из своей домашней сети и пользоваться всеми ресурсами.

Вот так. В принципе, всё просто. Если вдруг будут какие-то вопросы или что-то останется непонятным - добро пожаловать в комментарии.

Если для доступа к твоим данным единственным барьером является пароль, ты сильно рискуешь. Пасс можно сбрутить, перехватить, утащить трояном, выудить с помощью социальной инженерии. Не использовать при таком раскладе двухфакторную авторизацию - почти преступление.

Мы уже не раз рассказывали об одноразовых ключах. Смысл очень простой. Если злоумышленник каким-то образом сможет получить твой логин-пароль, то без проблем сможет зайти в твою почту или выполнить подключение к удаленному серверу. Но если на его пути будет дополнительный фактор, например одноразовый ключ (его также называют OTP-ключом), то уже ничего не выйдет. Даже если такой ключ попадет к злоумышленнику, то воспользоваться им будет уже нельзя, так как валидным он является только один раз. В качестве такого второго фактора может быть дополнительный звонок, код, полученный по SMS, ключ, сгенерированный на телефоне по определенным алгоритмам на основе текущего времени (время - способ синхронизировать алгоритм на клиенте и сервере). Тот же самый Google уже давно рекомендует своим пользователям включить двухфакторную авторизацию (пара кликов в настройке аккаунта). Теперь пришла очередь добавить такой слой защиты и для своих сервисов!

Что предлагает Duo Security?

Банальный пример. У моего компьютера «наружу» открыт RDP-порт для удаленного подключения к рабочему столу. Если логин-пароль утечет, злоумышленник сразу получит полный доступ к машине. Поэтому об усилении защиты OTP-паролем вопрос даже не стоял - это нужно было просто сделать. Глупо было изобретать велосипед и пытаться реализовать все своими силами, поэтому я просто посмотрел решения, которые есть на рынке. Большинство из них оказались коммерческими (подробнее во врезке), однако для незначительного числа пользователей их можно юзать бесплатно. Для дома как раз то, что нужно. Одним из самых удачных сервисов, позволяющих организовать двухфакторную авторизацию буквально для чего угодно (включая VPN, SSH и RDP), оказался Duo Security (www.duosecurity.com). Привлекательности ему добавляло то, что разработчиком и фаундером проекта является Джон Оберхайд, известный специалист по информационной безопасности. Он, к примеру, расковырял протокол общения Google со смартфонами Android, с помощью которого можно установить или удалить произвольные приложения. Такая база дает о себе знать: чтобы показать важность двухфакторной авторизации, парни запустили сервис VPN Hunter (www.vpnhunter.com), который в два счета может найти неспрятанные VPN-серверы компании (и заодно определить тип оборудования, на которых они работают), сервисы для удаленного доступа (OpenVPN, RDP, SSH) и другие элементы инфраструктуры, позволяющие злоумышленнику попасть во внутреннюю сеть, просто зная логин и пароль. Забавно, что в официальном Твиттере сервиса владельцы начали ежедневно публиковать отчеты о сканировании известных компаний, после чего аккаунт был забанен:). Сервис Duo Security, само собой, нацелен прежде всего на внедрение двухфакторной аутентификации в компаниях с большим числом пользователей. К счастью для нас, есть возможность создать бесплатный Personal-аккаунт, позволяющий организовать двухфакторную аутентификацию для десяти пользователей бесплатно.

Что может быть вторым фактором?

Далее мы рассмотрим, как буквально за десять минут усилить безопасность подключения к удаленному рабочему столу, а также SSH на сервере. Но сперва хочу рассказать о том дополнительном этапе, который вводит Duo Security в качестве второго фактора авторизации. Вариантов несколько: телефонный звонок, СМС с пасскодами, Duo Mobile пасскоды, Duo Push, электронный ключ. О каждом чуть подробнее.

Долго ли можно использовать бесплатно?

Как уже было сказано, Duo Security предлагает специальный тарифный план «Personal». Он абсолютно бесплатен, но количество пользователей должно быть не более десяти. Поддерживает добавление неограниченного числа интеграций, все доступные методы аутентификации. Предоставляет тысячу бесплатных кредитов на услуги телефонии. Кредиты - это как бы внутренняя валюта, которая списывается с твоего аккаунта каждый раз, когда происходит аутентификация с помощью звонка или СМС. В настройках аккаунта можно выставить, чтобы при достижении заданного числа кредитов тебе на мыло пришло уведомление и ты успел пополнить баланс. Тысяча кредитов стоит всего 30 баксов. Цена на звонки и СМС для разных стран отличается. Для России звонок будет обходиться от 5 до 20 кредитов, СМС - 5 кредитов. Однако за звонок, происходящий при аутентификации на сайте Duo Security, ничего не списывается. Про кредиты можно совсем забыть, если использовать для аутентификации приложение Duo Mobile - за него ничего не взимается.

Простая регистрация

Для защиты своего сервера с помощью Duo Security необходимо скачать и установить специальный клиент, который будет взаимодействовать с аутентификационным сервером Duo Security и обеспечивать второй слой защиты. Соответственно, этот клиент в каждой ситуации будет разным: в зависимости от того, где именно необходимо реализовать двухфакторную авторизацию. Об этом мы поговорим ниже. Первое же, что необходимо сделать, - зарегистрироваться в системе и получить аккаунт. Поэтому открываем главную страницу сайта, нажимаем «Free Trial», на открывшейся странице нажимаем кнопку «Sing up» под типом аккаунта Personal. После чего нас просят ввести имя, фамилию, адрес электронной почты и название компании. На почту должно прийти письмо, содержащее ссылку для подтверждения регистрации. При этом система обязательно выполнит автоматический дозвон по указанному телефону: для активации аккаунта надо ответить на звонок и нажать на телефоне кнопку #. После этого аккаунт будет активным и можно приступать к боевым испытаниям.

Защищаем RDP

Выше я говорил, что начинал с большого желания обезопасить удаленные подключения к своему рабочему столу. Поэтому в качестве первого примера опишу, как усилить безопасность RDP.

  1. Любое внедрение двухфакторной авторизации начинается с простого действия: создания в профиле Duo Security так называемой интеграции. Переходим в раздел «Integrations  New Integration», указываем имя интеграции (например, «Home RDP»), выбираем ее тип «Microsoft RDP» и нажимаем «Add Integration».
  2. В появившемся окне выводятся параметры интеграции: Integration key, Secret key, API hostname. Они нам понадобятся позже, когда мы будем настраивать клиентскую часть. Важно понимать: знать их никто не должен.
  3. Далее необходимо поставить на защищаемую машину специальный клиент, который установит все необходимое в Windows-систему. Его можно скачать с официального сайта или взять с нашего диска. Вся его настройка сводится к тому, что в процессе установки необходимо будет ввести упомянутые выше Integration key, Secret key, API hostname.
  4. Вот, собственно, и все. Теперь при следующем заходе на сервер по RDP на экране будет три поля: имя пользователя, пароль и одноразовый ключ Duo. Соответственно, с одним только логином-паролем выполнить вход в систему уже нельзя.

При первой попытке захода в систему новому пользователю необходимо будет единожды пройти процедуру проверки Duo Security. Сервис будет выдавать ему специальную ссылку, перейдя по которой необходимо ввести свой номер телефона и ждать проверяющего звонка. Чтобы получить дополнительные ключи (или получить их в первый раз), можно ввести ключевое слово «sms». В случае если ты хочешь пройти аутентификацию при помощи телефонного звонка - введи «phone», если при помощи Duo Push - «push». Историю всех попыток подключения (как удачных, так и неудачных) к серверу можно посмотреть в своем аккаунте на сайте Duo Security, предварительно выбрав нужную интеграцию и зайдя в ее «Authentication Log».

Подключаем Duo Security где угодно!

С помощью двухфакторной авторизации можно защищать не только RDP или SSH, но и VPN, RADIUS-серверы, любые веб-сервисы. Например, существуют готовые клиенты, добавляющие дополнительный слой аутентификации в популярные движки Drupal и WordPress. Если готового клиента нет, расстраиваться не стоит: ты всегда можешь самостоятельно добавить двухфакторную аутентификацию для своего приложения или сайта при помощи API, предоставляемого системой. Логика работы с API проста - ты делаешь запрос на URL определенного метода и парсишь возвращаемый ответ, который может прийти в формате JSON (или же BSON, XML). Полная документация по Duo REST API доступна на официальном сайте. Я лишь скажу, что существуют методы ping, check, preauth, auth, status, из названия которых несложно догадаться, для чего они предназначены.

Защищаем SSH

Рассмотрим еще один тип интеграции - «UNIX Integration», чтобы реализовать безопасную аутентификацию. Добавляем еще одну интеграцию в своем профиле Duo Security и приступаем к установке клиента в системе.

Исходники последнего ты можешь скачать по адресу bit.ly/IcGgk0 или взять с нашего диска. Я использовал последнюю версию - 1.8. Кстати, клиент работает на большинстве nix-платформ, так что его можно будет спокойно установить на FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris/Illumos, HP-UX и AIX. Процесс сборки стандартен - configure && make && sudo make install. Единственно, я бы рекомендовал использовать configure с опцией --prefix=/usr, иначе при запуске клиент может не найти необходимых библиотек. После успешной установки идем редактировать конфигурационный файл /etc/duo/login_duo.conf. Это нужно делать из-под рута. Все изменения, которые необходимо внести для успешной работы, - это задать значения Integration key, Secret key, API hostname, которые можно узнать на странице интеграции.

; Duo integration keyikey = INTEGRATION_KEY; Duo secret keyskey = SECRET_KEY; Duo API hostnamehost = API_HOSTNAME

Чтобы заставить всех пользователей, заходящих на твой сервер по SSH, использовать двухфакторную аутентификацию, достаточно добавить следующую строку в файл /etc/ssh/sshd_config:

> ForceCommand /usr/local/sbin/login_duo

Существует также возможность организовать двухфакторную авторизацию только для отдельных пользователей, объединив их в группу и указав эту группу в файле login_duo.conf:

> group = wheel

Для вступления изменений в силу остается только перезапустить ssh-демон. С этого момента после успешного ввода логина-пароля пользователю будет предложено пройти дополнительную аутентификацию. Следует отдельно отметить одну тонкость настройки ssh - настоятельно рекомендуется отключить в конфигурационном файле опции PermitTunnel и AllowTcpForwarding, так как демон применяет их до того, как запустить второй этап аутентификации. Таким образом, если злоумышленник правильно вводит пароль, то он может получить доступ к внутренней сети до завершения второго этапа аутентификации благодаря порт-форвардингу. Чтобы избежать такого эффекта, добавь следующие опции в sshd_config:

PermitTunnel noAllowTcpForwarding no

Теперь твой сервер находится за двойной стеной и попасть на него злоумышленнику куда более затруднительно.

Дополнительные настройки

Если зайти в свой аккаунт Duo Security и перейти в раздел «Settings», то можно подкрутить под себя некоторые настройки. Первый важный раздел - это «Phone calls». Тут указываются параметры, которые будут действовать, когда для подтверждения аутентификации будет задействован телефонный звонок. Пункт «Voice callback keys» позволяет задать, на какую клавишу телефона надо будет нажать для подтверждения аутентификации. По умолчанию там стоит значение «Press any key to authenticate» - то есть можно жать на любую. Если же установить значение «Press different keys to authenticate or report fraud», то нужно будет задать две клавиши: нажатие на первую подтверждает аутентификацию (Key to authenticate), нажатие на вторую (Key to report fraud) означает, что процесс аутентификации инициировали не мы, то есть кто-то получил наш пароль и пытается с его помощью зайти на сервер. Пункт «SMS passcodes» позволяет задать количество пасскодов, которое будет содержать одна эсэмэска, и время их жизни (валидности). Параметр «Lockout and fraud» позволяет задать адрес электронной почты, на который будет приходить оповещение в случае определенного числа неудачных попыток авторизоваться на сервере.

Используй!

Удивительно, но многие по-прежнему игнорируют двухфакторную авторизацию. Не понимаю почему. Это действительно очень серьезно усиливает безопасность. Реализовать ее можно практически для всего, а достойные решения доступны бесплатно. Так почему? От лени или от беспечности.

Сервисы-аналоги

  • Signify (www.signify.net) Сервис предоставляет три варианта для организации двухфакторной аутентификации. Первый - использование электронных ключей. Второй способ - использование пасскеев, которые посылаются пользователю на телефон посредством СМС или приходят на электронную почту. Третий вариант - мобильное приложение для телефонов Android, iPhone, BlackBerry, которое генерирует одноразовые пароли (по сути, аналог Duo Mobile). Сервис нацелен на крупные компании, поэтому полностью платный.
  • SecurEnvoy (www.securenvoy.com) Также позволяет использовать мобильный телефон в качестве второго защитного слоя. Пасскеи отправляются пользователю по СМС или на электронную почту. Каждое сообщение содержит три пасскея, то есть пользователь может три раза авторизоваться, перед тем как запросит новую порцию. Сервис также является платным, но предоставляет бесплатный 30-дневный период. Существенным плюсом является большое число как родных, так и сторонних интеграций.
  • PhoneFactor (www.phonefactor.com) Данный сервис позволяет бесплатно организовать двухфакторную аутентификацию до 25 пользователей, предоставляя 500 бесплатных аутентификаций в месяц. Для организации защиты необходимо будет скачать и установить специальный клиент. В случае необходимости добавления двухфакторной аутентификации на сайт можно воспользоваться официальным SDK, предоставляющим подробную документацию и примеры для следующих языков программирования: ASP.NET C#, ASP.NET VB, Java, Perl, Ruby, PHP.

Бытует мнение, что подключение по удаленному рабочему столу Windows (RDP) очень небезопасно в сравнении с аналогами (VNC, TeamViewer, пр). Как следствие, открывать доступ из вне к любому компьютеру или серверу локальной сети очень опрометчивое решение - обязательно взломают. Второй аргумент против RDP как правило звучит так - «жрет трафик, для медленного интернета не вариант». Чаще всего эти доводы ничем не аргументированы.

Протокол RDP существует не первый день, его дебют состоялся еще на Windows NT 4.0 более 20 лет назад и с тех пор утекло много воды. На данный момент RDP не менее безопасен, чем любое другое решение для удаленного доступа. Что касается требуемой полосы пропускания, так в этом плане есть куча настроек, с помощью которых можно добиться отличной отзывчивости и экономии полосы пропускания.

Короче говоря, если знать что, как и где настроить, то RDP будет очень хорошим средством удаленного доступа. Вопрос в другом, а много ли админов пытались вникнуть в настройки, которые спрятаны чуть глубже, чем на поверхности?

Сейчас расскажу как защитить RDP и настроить его на оптимальную производительность.

Во-первых, версий RDP протокола существует много. Все дальнейшее описание будет применимо к RDP 7.0 и выше. Это значит, что у вас как минимум Windows Vista SP1. Для любителей ретро есть специальный апдейт для Windows XP SP3 KB 969084 который добавляет RDP 7.0 в эту операционку.

Настройка №1 - шифрование

На компьютере, к которому вы собираетесь подключаться открываем gpedit.msc Идем в Конфигурация компьютера - Административные шаблоны - Компоненты Windows - Службы удаленных рабочих столов - Безопасность

Устанавливаем параметр «Требовать использования специального уровня безопасности для удаленных подключений по методу RDP» в значение «Включено» и Уровень безопасности в значение «SSL TLS 1.0»

Этой настройкой мы включили шифрование как таковое. Теперь нам нужно сделать так, чтобы применялись только стойкие алгоритмы шифрования, а не какой-нибудь DES 56-bit или RC2.

Поэтому в этой же ветке открываем параметр «Установить уровень шифрования для клиентских подключений». Включаем и выбираем «Высокий» уровень. Это нам даст 128-битное шифрование.

Но и это еще не предел. Самый максимальный уровень шифрования обеспечивается стандартом FIPS 140-1. При этом все RC2/RC4 автоматически идут лесом.

Чтобы включить использование FIPS 140-1, нужно в этой же оснастке пойти в Конфигурация компьютера - Конфигурация Windows - Параметры безопасности - Локальные политики - Параметры безопасности.

Ищем параметр «Системная криптография: использовать FIPS-совместимые алгоритмы для шифрования, хэширования и подписывания» и включаем его.

И в завершении в обязательном порядке включаем параметр «Требовать безопасное RPC-подключение» по пути Конфигурация компьютера - Административные шаблоны - Компоненты Windows - Службы удаленных рабочих столов - Безопасность.

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

Теперь с шифрованием полный порядок, можно двигаться дальше.

Настройка №2 - смена порта

По умолчанию протокол RDP висит на порту TCP 3389. Для разнообразия его можно изменить, для этого в реестре нужно изменить ключик PortNumber по адресу

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

Настройка №3 - сетевая аутентификация (NLA)

По умолчанию, вы можете подключиться по RDP не вводя логин и пароль и увидеть Welcome-скрин удаленного рабочего стола, где уже от вас попросят залогиниться. Это как раз совсем не безопасно в том плане, что такой удаленный комп можно легко заDDoSить.

Поэтому, всё в той же ветке включаем параметр «Требовать проверку подлинности пользователя для удаленных подключений путем проверки подлинности на уровне сети»

Настройка №4 - что еще проверить

Во-первых проверьте, что параметр «Учетные записи: разрешать использование пустых паролей только при консольном входе» включен. Параметр можно найти в Конфигурация компьютера - Административные шаблоны - Компоненты Windows - Службы удаленных рабочих столов - Безопасность.

Во-вторых, не забудьте проверить список пользователей, которые могут подключаться по RDP

Настройка №5 - оптимизация скорости

Идем в раздел Конфигурация компьютера - Административные шаблоны - Компоненты Windows - Службы удаленных рабочих столов - Среда удаленных сеансов.

Здесь можно и нужно отрегулировать несколько параметров:

  • Наибольшая глубина цвета - можно ограничиться 16 битами. Это позволит сэкономить трафик больше чем в 2 раза по сравнению с 32х битной глубиной.
  • Принудительная отмена фонового рисунка удаленного стола - для работы он не нужен.
  • Задание алгоритма сжатия RDP - лучше установить значение Оптимизация использования полосы пропускания. В этом случае RDP будет жрать памяти чуть больше, но сжимать будет эффективнее.
  • Оптимизировать визуальные эффекты для сеансов служб удаленных рабочих столов - ставим значение «Текст». Для работы то что нужно.

В остальном при подключении к удаленному компу со стороны клиента дополнительно можно отключить:

  • Сглаживание шрифтов. Это сильно уменьшит время отклика. (Если у вас полноценный терминальный сервер, то этот параметр так же можно задать на стороне сервера)
  • Композицию рабочего стола - отвечает за Aero и пр
  • Отображение окна при перетаскивании
  • Визуальные эффекты
  • Стили оформления - если хочется хардкора

Остальные параметры типа фона рабочего стола, глубины цвета мы уже предопределили на стороне сервера.

Дополнительно на стороне клиента можно увеличить размер кэша изображений, делается это в реестре. По адресу HKEY_CURRENT_USER\SOFTWARE\Microsoft\Terminal Server Client\ нужно создать два ключа типа DWORD 32 BitmapPersistCacheSize и BitmapCacheSize

  • BitmapPersistCacheSize можно установить равным 10000 (10 Мб) По умолчанию этот параметр берет значение 10, что соответствует 10 Кб.
  • BitmapCacheSize так же можно установить равным 10000 (10 Мб). Вы вряд ли заметите, если RDP-подключение съест лишних 10 Мб от вашей оперативной памяти

Про проброс всяких принтеров и пр говорить ничего не буду. Кому что нужно, тот то и пробрасывает.

На этом основная часть настройки заканчивается. В следующих обзорах расскажу, как можно еще улучшить и обезопасить RDP. Используйте RDP правильно, всем стабильного коннекта! Как сделать RDP терминал сервер на любой версии Windows смотрите .

Протокол RDP с защитой на уровне сети (SSL), к сожалению, не получил широкого распространения среди системных администраторов, предпочитающих защищать терминальные соединения другим способом. Возможно это связано с кажущейся сложностью способа, однако это не так, в данном материале мы рассмотрим как просто и без затруднений организовать такую защиту.

Какие преимущества дает нам защита RDP при помощи SSL? Во первых надежное шифрование канала, проверку подлинности сервера на основании сертификата и проверку подлинности пользователя на уровне сети. Последняя возможность доступна начиная с Windows Server 2008. Проверка подлинности на уровне сети позволяет повысить безопасность сервера терминалов за счет того, что проверка происходит еще до начала сеанса.

Проверка подлинности на уровне сети производится до подключения к удаленному рабочему столу и отображения экрана входа в систему, это снижает нагрузку на сервер и значительно увеличивает его защиту от злоумышленников и вредоносных программ, а также снижает вероятность атак типа "отказ в обслуживании".

Для полноценного использования всех возможностей RDP через SSL клиентские ПК должны работать под управлением Windows XP SP3, Windows Vista или Windows 7 и использовать RDP клиент версии 6.0 или более поздней.

При использовании Windows Server 2003 SP1 и более поздних версий, будут доступны шифрование канала при помощи SSL (TLS 1.0) и проверка подлинности сервера, клиентские ПК должны иметь версию RDP клиента 5.2 или более позднюю.

В нашей статье мы будем рассматривать настройку терминального сервера на базе Windows Server 2008 R2, однако все сказанное будет справедливо и для Windows Server 2003 (за исключением отсутствующих возможностей).

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

Затем следует выполнить запрос сертификата подлинности сервера со следующими параметрами:

Имя - полное имя терминального сервера (т.е. server.domain.com если сервер входит в домен domain.com)

  • Тип сертификата - Сертификат проверки подлинности сервера
  • Установите опцию Создать новый набор ключей
  • CSP - Microsoft RSA SChannel Cryptographic Provider .
  • Установите флажок Пометить ключ как экспортируемый .
  • Для ЦС предприятия установите флажок Использовать локальное хранилище компьютера для сертификата . (В автономном ЦС данная опция недоступна).

Отправьте запрос центру сертификации и установите выданный сертификат. Данный сертификат должен быть установлен в локальное хранилище компьютера, иначе он не сможет быть использован службами терминалов. Чтобы проверить это запустим консоль MMC (Пуск - Выполнить - mmc ) и добавим оснастку Сертификаты (Файл - Добавить или удалить оснастку ) для учетной записи компьютера.

В корне консоли выберите нажмите Вид - Параметры и установите режим просмотра Упорядочить сертификаты по назначению . Выданный сертификат должен находиться в группе Проверка подлинности сервера .

Если вы получали сертификат с помощью изолированного (автономного) ЦС (сеть не имеет доменной структуры) то он по умолчанию будет установлен в хранилище учетной записи пользователя и придется выполнить ряд дополнительных действий.

Откройте Internet Explorer - Свойства обозревателя - Содержимое - Сертификаты , выданный сертификат должен быть установлен в хранилище Личные .

Произведите его экспорт. При экспорте укажите следующие опции:

  • Да, экспортировать закрытый ключ
  • Удалить закрытый ключ после успешного экспорта

После чего удалите сертификат из данного хранилища. В оснастке Сертификаты (локальный компьютер) выберите раздел Проверка подлинности сервера , щелкните на него правой кнопкой мыши Все задачи - Импорт и импортируйте сертификат.

Теперь в Администрирование - Службы удаленных рабочих столов откройте Конфигурация узла сеансов удаленных рабочих столов (в Windows Server 2003 Администрирование - Настройка служб терминалов).

Выберите необходимое подключение и откройте его свойства. В самом низу нажмите кнопку Выбрать и выберите полученный на предыдущем шаге сертификат (в Windows Server 2003 это окно выглядит несколько по другому).

После выбора сертификата укажите остальные свойства:

  • Уровень безопасности SSL
  • Уровень шифрования Высокий или FIPS -совместимый
  • Установите флажок Разрешить подключаться только с компьютеров... (недоступно в Windows Server 2003)

Сохраните введенный параметры, на этом настройка сервера закончена.

На клиентском ПК создайте подключение к удаленному рабочему столу, в качестве адреса используйте полное имя сервера, которое указано в сертификате. Откройте свойства подключения и на закладке Подключение - Проверка подлинности сервера установите опцию Предупреждать .

Чтобы данный ПК доверял сертификатам выданным нашим центром сертификации не забудьте установить на него сертификат ЦС в хранилище Доверенные корневые центры сертификации .

В Windows 7 (при использовании RDP клиента версии 7) данный сертификат требуется установить в хранилище учетной записи компьютера , для этого импортируйте его через оснастку Сертификаты (локальный компьютер) в консоли MCC, аналогично тому, как это делали выше. В противном случае подключение будет невозможно и вы получите следующую ошибку:

Установив сертификат ЦС можете пробовать подключиться, обратите внимание, что имя пользователя и пароль будет предложено ввести еще до создания RDP сессии. При успешном соединении обратите внимание на замок в заголовке окна, который свидетельствует о работе через SSL. Нажав на него можно просмотреть информацию о сертификате.

И напоследок капля дегтя в бочке меда. Терминальные службы Windows не умеют проверять подлинность подключающихся клиентов, поэтому если стоит такая необходимость следует использовать дополнительные методы защиты, такие как SSH туннель или IPSec VPN.

mob_info