Rdp tcp properties где находится windows server 2016

Hi,
  • Remove From My Forums
  • Question

  • Hi,

    I dont find the Rdp-Tcp Properties in Windows Server 2016.

    I have a Terminal Server WinServer2016 and about 30 Barcodes Terminal with S.O., Windows Mobile CE 6.0 e Windows 7 Embedded.

    In the previous server Windows Server 2008, i modified the settings of RDP-TCP Properties (with image below), because if rdp clients often had wrong dates (day, hour, year), they received an error of «old certificate» and dont connect to the server.
    With these settings they normally connect to the server.

    Now, it’s possible to apply these settings in Windows Server 2016 ?

    Thank you very much

    Daniele

    IMAGES AT THIS LINk:

    https://social.technet.microsoft.com/Forums/getfile/1446927

    • Edited by

      Wednesday, June 5, 2019 11:02 AM

It’s highly recommended to change windows remote desktop default port for added security.

You can change the default port with a few easy steps, first, you’ll change the port and define this port in a firewall rule.

Change RDP TCP port on Windows Server 2016

  1. Open registry editor app by searching for regedit in windows search or use RUN.
  2. Locate the following from regedit app:
    HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp
  3. look for PortNumber and right-click on it and Modify
  4. Make sure to select Decimal under Base option
  5. Change the port number to any number you prefer, let’s say 1234 and click OK
  6. Quit the registry editor
  7. Open Firewall (Windows Defender Firewall with Advanced Security)
  8. From the left sidebar click on Inbound Rules
  9. From the right sidebar click on New Rule
  10. Select Port and click Next
  11. Select TCP and type the port number in Specific local port and click Next until you reach the step where you asked to enter a rule name, give the rule a name and Click Finish. (Repeat from #7 to #11 for UDP)
  12. Restart the server or execute this PowerShell command Restart-Service -Force -DisplayName "Remote Desktop Services"
  13. Try to connect to RDP as usual but when you type the IP, don’t forget to type the custom port number after the IP in this format IP:Port (e.g. 192.168.1.5:1234)

PowerShell

You can also change the RDP port by running the following PowerShell commands. In this command, we’ll specify the new RDP port as 1234.

To add a new RDP Port to the registry:

Set-ItemProperty -Path 'HKLM:SYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp' -name "PortNumber" -Value 1234

Then Add Firewall Rule to open port 1234 on the Public profile using PowerShell

New-NetFirewallRule -DisplayName 'RDPPORT_TCP' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort 1234

Repeat to open UDP port 1234 (recommended)

New-NetFirewallRule -DisplayName 'RDPPORT_UDP' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort 1234

Restart Remote Desktop Service from PowerShell

Restart-Service -Force -DisplayName "Remote Desktop Services"

Find this tutorial on Microsoft.com:
https://support.microsoft.com/en-gb/help/306759/how-to-change-the-listening-port-for-remote-desktop

Watch Video Tutorial: https://www.youtube.com/watch?v=k8mswkiok70

Привет.

Вчера, общаясь с Иваном Никитиным, получил дельный совет осветить работу и настройку протокола RDP. Мысль дельная, дальше – подробнее.

Введение

Протокол RDP – удобное, эффективное и практичное средство для удалённого доступа как для целей администрирования, так и для повседневной работы.
Учитывая, что его реализации есть практически везде (различные платформы и ОС), и их много, нужно хорошо представлять его возможности.
По крайней мере, это будет нужно по ряду причин:

  • Зачастую вместо RDP используется другое решение (VNC, Citrix ICA) по простой причине – предполагается, что “встроенный RDP минимальный и ничего не умеет”.
  • Во многих решениях, связанных с модными сейчас облачными технологиями (перевод офисов на “тонкие клиенты”, да и просто организация терминальных серверов), бытует мнение что “RDP плохой потому что встроенный”.
  • Есть стандартный миф про то, что “RDP нельзя без VPN наружу выставлять, ломанут” (миф имеет под собой обоснование, но уже давно не актуален).
  • Ну, раз уж про мифы заговорили – бытует мнение, что “Перейдя с RDP на Citrix трафик в пару раз падает”. Ведь цитрикс – это дорого, следовательно как минимум на 157% круче.

Все эти мифы – ерунда и смесь устаревших “дельных советов”, актуальных во времена NT 4.0, а так же откровенных вымыслов, не имеющих никаких причин к существованию. Так как IT – это точная наука, надо разобраться. Хорошо настроеный протокол RDP новых версий, с учётом всех новых функциональных возможностей, является достаточно хорошим и надёжным инструментом для организации удалённого доступа.

Поэтому мы займёмся:

  • Кратким упоминанием про версии RDP
  • Настройкой режима защиты RDP-сессии
  • Настройкой шифрования для RDP
  • Привязкой к конкретному адаптеру и порту
    • Меняем стандартный порт на нужный
    • Делаем раздельные настройки RDP для нескольких сетевых адаптеров
  • Включением NLA
    • Как включается NLA со стороны RDP-сервера
    • NLA и Windows XP
    • Как включить CredSSP в XP
  • Выбором правильного сертификата для RDP
  • Блокированием подключений по RDP учётным записям с пустым паролем
  • Настройка ACL для подключения по RDP
  • Оптимизацией скорости RDP
    • Отключаем редирект неиспользуемых устройств
    • Настраиваем общую логику оптимизации визуальных данных RDP
  • Оптимизацией сжатия RDP
    • Настраиваем общее сжатие RDP
    • Настраиваем сжатие аудиопотока RDP
  • Оптимизацией соотношения потоков данных RDP
  • Включением Require secure RPC communication для RDP

Приступим.

Версии протокола RDP

Протокол имеет достаточно длительную историю, начиная с NT 4.0. Исторические детали мы оставим в стороне по простой причине – на данный момент имеет смысл говорить только про версию RDP 7.0, которая есть в Windows Vista SP1 / Windows Server 2008 и бесплатно добавляема в Windows XP установкой SP3 и обновлённого клиента RDP (находится по ссылке на KB 969084). Я предполагаю, что у Вас как минимум Windows XP, и что Вы поставили/можете поставить последний Service Pack и не трачу Ваше время на обсуждение преимуществ RDP в Windows 2000 SP2 перед NT 4.0 SP5.

Настройка режима защиты RDP-сессии

В принципе, это самая простая часть задачи. Суть в следующем. В различных версиях RDP применяется два основных механизма защиты сессии – встроенный в RDP и “заворачивание” сессии в TLS. Встроенный является недостаточно безопасным, и рекомендация “RDP можно наружу только в VPN” – про него. Поэтому всегда включайте поддержку TLS. Это тот минимум, с которого Вы должны начать. Ограничениями будут разве что версия сервера не ниже Windows Server 2003 SP1 и клиент RDP 5.2 и выше, но, думается, это в конце 2011 года вполне решаемо.

Как включить RDP over TLS

Вариантов, как всегда, несколько. Первый – включение через групповую политику. Для этого надо зайти в целевой объект групповой политики (ну или локально на своей домашней рабочей станции запустить gpedit.msc) и там последовательно выбрать “Computer Configuration” -> “Administrative Templates” -> “Windows Components” -> “Remote Desktop Session Host” -> “Security” и там включить параметр Require use of specific security layer for remote connections, выбрав в нём SSL (TLS 1.0) only. Можно выбрать и более мягкий Negotiate, но я бы не рекомендовал, т.к. на данный момент это банально ниже приемлемого уровня безопасности. Как человек, создававший private cloud’ы с достаточно высоким уровнем безопасности, я могу сказать, что смысл выносить особо ценные данные в датацентр под Лондоном и ходить туда дефолтным RDP – нулевой и является поиском неприятностей.

Можно и проще – откройте оснастку Remote Desktop Session Host Configuration (найдёте в mmc или готовую в меню Administrative Tools -> Remote Desktop Connections), выберите из списка Connections нужное подключение (обычно оно одно и называется RDP-Tcp), и откройте Properties, после – вкладку General и там выбрать нужный Security Layer.

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

Настраиваем шифрование для RDP

Для конфигурирования будет доступно 4 варианта шифрования. Рассмотрим каждый из них.

Режим RDP Low Encryption

Самый “никакой” режим. Наследие страшных времён и версий RDP 5.x. Может согласовать шифрование на базе 56ти битового DES или 40ка битового RC2, что на текущий момент является несерьёзным. Не нужен и опасен. Например, если включить его, то не включится TLS, т.к. TLS уже откажется согласовывать такие слабые шифры, которые предлагает этот вариант.

Режим RDP Client Compatible Encryption

Второй “никакой” режим. Наследие страшных времён и версий RDP 5.x. Попробует до 128 бит RC4, но сразу согласится на DES/RC2. Не нужен и опасен. Тоже не совместим с TLS.

Режим RDP High Encryption

Минимально допустимый режим. Потребует хотя бы 128ми битовый RC4. Работает со всеми серверами, начиная с Windows 2000 Server w/HEP.

Режим RDP FIPS140-1 Encryption

То, что нужно. Будет поддерживать современные симметричные алгоритмы и в явном виде не будет поддерживать RC2, RC4, одиночный DES, а также будет заставлять использовать для вычисления целостности (Message Authentication Code – MAC) алгоритм SHA-1, а не MD5. Включайте этот вариант всегда, найти сервер, который не умеет 3DES, AES или SHA-1 практически нереально.

Где делается эта настройка? Откройте оснастку Remote Desktop Session Host Configuration (найдёте в mmc или готовую в меню Administrative Tools -> Remote Desktop Connections), выберите из списка Connections нужное подключение (обычно оно одно и называется RDP-Tcp), и откройте Properties, после – вкладку General и там выберите нужный Encryption Level.

Привязываем RDP к конкретному адаптеру и порту

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

Как привязать службу RDP к конкретному сетевому адаптеру или сделать несколько RDP с разными настройками для разных адаптеров

Откройте оснастку Remote Desktop Session Host Configuration (найдёте в mmc или готовую в меню Administrative Tools -> Remote Desktop Connections), выберите из списка Connections нужное подключение (обычно оно одно и называется RDP-Tcp), и откройте Properties, после – вкладку Network Interfaces. В ней Вы сможете выбрать один конкретный интерфейс, на котором надо ожидать подключения, плюс ограничить количество параллельных сессий.

Если у Вас много интерфейсов, и Вам надо, допустим, чтобы можно было подключаться через 2 из 5 доступных, то Вам надо будет привязать существующий по-умолчанию RDP-Tcp к одному адаптеру, после зайти в меню Action и там выбрать Create New Connection. Подключение может слушать либо на всех интерфейсах, либо на одном, и в случае, когда надо, чтобы оно слушало на N интерфейсах, придётся создать N подключений.

Соответственно, если у Вас есть задача “Чтобы на одном интерфейсе RDP слушал на одном порту, а на другом – на другом”, она решаема так же – отвязываете дефолтный RDP-Tcp от всех адаптеров и привязываете к конкретному, после – создаёте новое RDP-подключение и тоже привязываете к нужному сетевому интерфейсу.

Как привязать службу RDP к не-дефолтному порту

Порт по умолчанию – 3389 TCP. Кстати, не забудьте разрешить его в пакетном фильтре. Ну а если хотите другой – надо зайти в ключ реестра

HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp

и поправить в нём значение PortNumber. Учитывайте, что отслеживание конфликтов в плане занятости портов – на Вашей совести, сам он, обнаружив, что назначенный Вами порт занят, “перепрыгнуть” никуда не сможет.

Включаем NLA – Network Level Authentication

Функция NLA появляется в NT 6.0, а позже добавляется возможность её частичного использования в предыдущей версии ОС путём установки SP3 для XP.
Суть данной функции достаточно проста. В версиях RDP до 6.0 при подключении по RDP клиенту до аутентификации надо показать окно входа – т.е. вначале показать, а потом уже он попробует зайти в систему. Это создаёт простую уязвимость – сервер можно перегрузить пачкой запросов “а дай-ка мне попробовать новую сессию начать”, и он будет вынужден на все запросы отвечать созданием сессии и ожиданием входа пользователя. Фактически, это возможность DoS. Как с этим можно бороться? Логично, что надо придумать схему, целью которой будет как можно раньше запросить у клиента учётные данные. Оптимально – чтобы было что-то типа как kerberos в домене. Это и было сделано. NLA решает две задачи:

  • Клиент аутентифицируется до инициации терминальной сессии.
  • Появляется возможность передать данные локального клиентского SSP на сервер, т.е. начинает работать Single Sign-On.

Реализуется это через новый провайдер безопасности – CredSSP. Почитать его техническую спецификацию можно тут, ну, а говоря проще, надо всегда включать данную функцию. Конечно, учитывая, что для её работы нужно, чтобы:

  • Клиентская ОС (та, с которой идёт подключение) была Windows XP SP3 и выше.
  • Серверная ОС (та, к которой будет подключение) была Windows Server 2008 и выше.

Как включается NLA со стороны RDP-сервера

Лучше всего включить NLA на всех серверах через групповую политику. Для этого надо зайти в целевой объект групповой политики и там последовательно выбрать “Computer Configuration” -> “Administrative Templates” -> “Windows Components” -> “Remote Desktop Session Host” -> “Security” и там включить параметр Require user authentication for remote connections by using Network Layer Authentication.

Можно включить и локально. Это делается путём вызова подменю Properties (стандартное подменю у Computer) и выбора там вкладки Remote, в которой будет выбор из трёх вариантов – запрещать подключения по RDP к данному хосту, разрешать подключения по любому RDP, разрешать только с NLA. Всегда включайте вариант с NLA, это в первую очередь защищает сервер.

NLA и Windows XP

В случае, если у Вас Windows XP, то Вы также можете воспользоваться данной функцией. Распространённое утверждение “Для NLA нужна как минимум виста, это Microsoft сделал чтобы апгрейдились” ложно. В Service Pack 3 добавляется реализация CredSSP, позволяющая делегировать клиентские credentials’ы, которыми обладает местный SSP, на сервер. Т.е., говоря проще, это специально сделано, чтобы с Windows XP можно было подключаться на системы с NT 6.0+. На саму Windows XP SP3 с данной функцией подключаться не получится, поддержка NLA будет частичной (поэтому RDP сервер с поддержкой подключения клиентов с использованием NLA из Windows XP сделать штатными способами не получится, Windows XP будет только NLA-совместимым клиентом).

Включать данный функционал нужно в явном виде, так как несмотря на то, что Service Pack 3 добавляет приносит новую dll криптопровайдера, он её не включает.

Как включить CredSSP в XP

Ещё раз – данная операция проводится строго после установки Service Pack 3 на Windows XP и в контексте нашего разговора нужна для того, чтобы было возможно подключение к другим серверам по RDP 6.1 с использованием NLA.

Шаг первый – расширяем перечень Security Packages.
Для этого мы откроем ключ реестра

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa

и найдём в нём значение Security Packages. Нажмём правую кнопку и выберем “Modify” (не Modify Binary Data, а просто Modify). Там будет список вида “название package на каждой строке”. Нам надо добавить туда tspkg. Остальное надо оставить. Место добавления некритично.

Второй шаг – подцепляем библиотеку.
Ключ будет другим:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProviders

В нём надо будет найти значение SecurityProviders (заметьте, как и в предыдущем случае, это не subkey, а значение), и модифицировать его по аналогии, только добавив credssp.dll. Остальное в списке, опять же, трогать не надо.

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

Выбираем правильный сертификат для RDP

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

  • Имя (в subject или SAN), посимвольно совпадающее с тем именем, которое вводит клиент, подключающийся к серверу.
  • Нормальное расширение CDP, указывающее на рабочий CRL (желательно хотя бы на два – OCSP и статический).
  • Желательный размер ключа – 2048 бит. Можно и больше, но помните об ограничениях CAPI2 в XP/2003.
  • Не экспериментируйте с алгоритмами подписи/хэширования, если Вам нужны подключения со стороны XP/2003. Чуть больше информации про это в статье про настройку TLS, но вкратце – выберите SHA-1, этого вполне достаточно.

Чуть подробнее остановлюсь на выпуске специального сертификата для RDP-сервера.

Делаем всё красиво – специальный шаблон сертификата для RDP-серверов

Идеально будет, если сертификат для RDP сделать не на основе обычного шаблона (типа Web Server) и иметь в поле Application Policy (которое в сертификате будет более привычно называться Enchanced Key Usage – EKU) стандартные значения Client Authentication и Server Authentication, а добавить свой шаблон, в котором будет единственное, специальное, не добавляемое стандартными способами значение применения – Remote Desktop Authentication. Это значение Application Policy придётся создать вручную, его OID’ом будет 1.3.6.1.4.1.311.54.1.2, ну а после – уже можно сделать новый шаблон сертификата, на основании которого и выпустить сертификат, адресно “заточеный” под RDP Server.

Чтобы полностью автоматизировать эту операцию, сделайте у нового шаблона предсказуемое название – например, “RDPServerCert” – и зайдите в объект групповой политики, а там откройте Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Security. Выберите параметр Server Authentication Certificate Template и включите его, а в поле значения введите название – мы сделали RDPServerCert. Теперь все доменные хосты, подпадающие под эту политику, будут в случае включения на них RDP сами идти к Certification Authority, запрашивать в случае отсутствия себе сертификат на основе указанного шаблона, и автоматически делать его дефолтным для защиты подключений по RDP. Просто, удобно, эффективно.

Блокируем подключения по RDP учётным записям с пустым паролем

Мелочь, а забывать про неё не нужно.
Для блокировки подключения учёток без паролей к RDP надо зайти в настройку объекта групповой политики: Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options и установить “Accounts: Limit local account use of blank passwords to console logon only” в Enabled. Не поленитесь проверить, что это так и есть.

Настройка ACL для подключения по RDP

По умолчанию для подключения к RDP-серверу необходимо иметь явное разрешение User Access или Guest Access.
Это разрешение есть у локальных групп Administrators и Remote Desktop Users. Лучше всего использовать для управления доступом к RDP-серверу группу Remote Desktop Users, добавляя в неё нужные доменные группы, а не отдельных пользователей. Модицифируйте содержимое вкладки Security в настройках Properties у RDP-Tcp только в крайних случаях, лучше всего – добавляя группу “имя хоста RDP Blocked”, которой явно запрещен доступ по RDP к указанному узлу.

Оптимизация скорости RDP

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

Цветность (битовая глубина)

В RDP 7.0 и выше доступны варианты 32,16 и 8 бит. Если речь идёт о работе, то для неё будет достаточно 16 бит. Это ощутимо снизит нагрузку на канал, притом иногда больше, чем в 2 раза, что удивительно, но факт. 8 бит, конечно, тоже можно, но уж больно страшно оно будет выглядеть. 16 бит же вполне приемлемы.

Включите на сервере параметр Limit Maximum Color Depth, либо сделайте аналогичное действие в настройках RDP client.

Отключите ClearType

Когда у Вас выключен ClearType, протокол RDP передаёт не картинку, а команды по отрисовке символов. Когда включен – рендерит картинку со стороны сервера, сжимает и пересылает клиенту. Это с гарантией в разы менее эффективно, поэтому отключение ClearType значительно ускорит процесс работы и уменьшит время отклика. Сами удивитесь, насколько.

Это можно сделать как на уровне настроек клиента, так и на стороне сервера (параметр Do not allow font smoothing в разделе Remote Session Enviroment в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host).

Уберите wallpaper

Параметр Enforce removal of RD Wallpaper в разделе Remote Session Enviroment в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host резко улучшит ситуацию с перерисовкой экрана терминальной сессии. Пользователи без котиков на десктопе выживают нормально, проверено.

Включаем и настраиваем кэширование изображений

Если на клиенте есть достаточно оперативной памяти, то имеет смысл включить и настроить кэширование битмапов. Это позволит выиграть до 20-50% полосы пропускания. Для установки надо будет зайти в ключ

HKEY_CURRENT_USERSOFTWAREMicrosoftTerminal Server Client

и создать там параметры BitmapPersistCacheSize и BitmapCacheSize, оба типа DWORD 32.
Параметр BitmapPersistCacheSize обозначает размер в килобайтах дискового кэша. Значение по умолчанию – 10. Имеет смысл увеличить этот параметр хотя бы до 1000.
Параметр BitmapCacheSize обозначает размер в килобайтах кэша в RAM. Значение по умолчанию – 1500. Имеет смысл увеличить этот параметр хотя бы до 5000. Это будет всего 5 мегабайт на клиентскую сессию, при современных масштабах оперативной памяти это несущественно, и даже если приведёт к выигрышу 10% производительности, уже себя окупит. Кстати, этот же параметр можно поправить и в .rdp-файле; если сохранить своё RDP-подключение, а после открыть файл блокнотом, то среди параметров можно добавить что-то вида bitmapcachesize:i:5000, где 5000 – это 5МБ кэша.

Отключаем Desktop Composition

Desktop Composition привносит всякие “красивости” типа Aero и его друзей и ощутимо кушает полосу пропускания. Для работы это не нужно и вредно. Параметр Allow desktop composition for RDP Sessions в разделе Remote Session Enviroment в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host необходимо выставить в параметр Disabled.

Оптимизируем параметры Desktop Window Manager

Параметры, находящиеся в разделе Remote Session Enviroment в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Desktop Window Manager, будут управлять “красивым” отображением плавно выезжающих меню и подобного. Их три – Do not allow window animations, Do not allow desktop compositions и Do not allow Flip3D invocation. Все их надо переключить в режим Enabled, т.е. по сути – отключить все эти функции.

Отключаем редирект неиспользуемых устройств

Если у Вас не планируется подключение определённых классов устройств (например, COM и LPT-портов), или аудио, имеет смысл отключить возможность их перенаправления со стороны сервера. Чтобы клиенты с дефолтными настройками RDP Client не тратили время подключения на согласование неиспользуемого функционала. Это делается там же, где и остальные настройки сервера, в Properties у RDP-Tcp, вкладка Client Settings (там же, где мы делали настройки с глубиной цвета), раздел Redirection.

Настраиваем общую логику оптимизации визуальных данных RDP

Параметр, называющийся Optimize visual experience for RDP sessions, находящийся в разделе Remote Session Enviroment в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Remote Session Enviroment, будет управлять тем, как RDP будет воспринимает визуальные данные – как мультимедийные или как текстовые. Это, грубо говоря, “подсказка” алгоритму сжатия, как грамотнее себя вести. Соответственно, для работы надо будет выставить этот параметр в Text, а если хочется много красивых flash-баннеров, HTML5 и просматривать видеоклипы – лучше вариант Rich Multimedia.

Оптимизация сжатия RDP

Сжатие в RDP прошло долгий путь развития. По RDP 5.2 включительно была подсистема сжатия (“компрессор”), имеющий внутреннее название “Version 1” – самый простой и лёгкий вариант с точки зрения загрузки процессора клиента, но самый плохой с точки зрения нагрузки сети трафиком. В RDP 6.0 сделали “Version 2”, который был незначительно, но улучшен по параметру эффективности сжатия. Нам интересен “Version 3”, который работает только при подключении к серверам Windows Server 2008 и старше. Он сжимает лучше всех, а затраты процессорного времени с учётом мощностей современных компьютеров несуществены.

Выигрыш при включении V3 может, судя по тестам, достигать 60% и, в общем-то, и без тестов ощутимо заметен на глаз.

Как включить оптимальное сжатие в RDP

Это – клиентская настройка. Откройте в нужном объекте групповой политики Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Remote Session Enviroment, выберите там параметр Set compression algoritm for RDP data, включите его и выберите значение Optimize to use less network bandwidth.

Настройка сжатия звукового потока

RDP 7.0 приносит отличную возможность регулировать качество сжатия входящего звукового потока (т.е. звука, который идёт с сервера на клиента). Это достаточно полезно – например, если идёт работа на терминальном сервере, то кроме всяких служебных звуков вида “пришло сообщение в ICQ” другие особо как не планируются. Нет смысла передавать с сервера несжатый звук CD-качества, если для работы это не нужно. Соответственно, нужно настроить уровень сжатия звукового потока.
Данный параметр будет называться Limit audio playback quality и находиться в разделе Device and Resource Redirection в Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host. Вариантов будет три:

  • High – звук будет идти без сжатия. Вообще. То есть, он будет подпадать под общее сжатие протокола RDP, но специфическое сжатие звука (с потерей качества) производиться не будет.
  • Medium – сжатие будет адаптироваться под канал так, чтобы не увеличивать задержку при передаче данных.
  • Dynamic – сжатие будет динамически адаптироваться под канал так, чтобы задержка не превышала 150ms.

Выберите подходящий. Как понятно, для офисной работы лучше выбрать Dynamic.

Оптимизация соотношения потоков данных в RDP

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

На взаимное соотношение этих потоков и логику его (соотношения) вычисления (этакий локальный QoS) можно влиять. Для этого надо со стороны сервера зайти в ключ реестра

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTermDD

и создать там для начала (если их там нет) четыре ключа:

  • FlowControlDisable
  • FlowControlDisplayBandwidth
  • FlowControlChannelBandwidth
  • FlowControlChargePostCompression

Тип у всех – DWORD 32. Функционал у ключей будет следующим.
Ключ FlowControlDisable будет определять, используется ли приоритезация вообще. Если задать единицу, то приоритезация будет выключена, если нуль – включена. Включите её.
Ключи FlowControlDisplayBandwidth и FlowControlChannelBandwidth будут определять взаимное соотношение двух потоков данных:

  • Поток взаимодействия с пользователем (изображение+устройства ввода)
  • Прочие данные (блочные устройства, буфер обмена и всё остальное)

Сами значения этих ключей не критичны; критично то, как они соотносятся. То есть, если Вы сделаете FlowControlDisplayBandwidth равным единице, а FlowControlChannelBandwidth – четырём, то соотношение будет 1:4, и на поток взаимодействия с пользователем будет выделяться 20% полосы пропускания, а на остальное – 80%. Если сделаете 15 и 60 – результат будет идентичным, так как соотношение то же самое.
Ключ FlowControlChargePostCompression будет определять, когда считается это соотношение – до сжатия или после. Нуль – это до сжатия, единица – после.

Я рекомендую для использования вида “наш удалённый сервак далеко и к нему все по RDP подключаются и в офисе и 1С работают” ставить соотношение 1:1 и считать его после сжатия. По опыту это может реально помочь в ситуации “печать большого документа с терминального сервера на локальный принтер”. Но это не догма – пробуйте, главный инструмент – знание, как это считается и работает – у Вас уже есть.

Включаем Require secure RPC communication для RDP

Данный параметр действует аналогично настройкам для Secure RPC, которые есть в разделе Security групповой политики и действуют на всю систему, только настраивается проще. Включив этот параметр Вы сделаете обязательным для всех клиентских RPC-запросов шифрование (в зависимости от настроек системы “нижняя планка” шифрования будет разной – RC4/DES или, в случае включения FIPS-140 – 3DES/AES) и использование как минимум NTLMv2 для аутентификации удалённого вызова процедур. Всегда включайте этот параметр. Есть миф про то, что он не работает во внедоменной среде. Это не так, и усиление защиты RPC никому не помешает.

Это – серверная настройка. Откройте в нужном объекте групповой политики Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Security, выберите там параметр Require secure RPC communication и включите его.

Заключение

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

Начало

В данном руководстве будет рассмотрена процедура изменения порта RDP в операционной системе Windows Server 2012.

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

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

Редактирование реестра производится с помощью программы-редактора.

Нажмите Пуск и в панели Поиск напечатайте cmd.

пуск командная строка

В появившемся окне консоли наберите и выполните команду regedit.

командная строка

В редакторе реестра нужно отыскать раздел RDP-Tcp, сделать это можно, пройдя такой путь:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp

редактор реестра

В нем необходимо отыскать элемент PortNumber (как на картинке выше), и открыть этот параметр.

Далее следует переключиться в Десятичный (Decimal) формат ввода и задать новый порт для подключения по протоколу RDP:

номер порта

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

  • Номера от 0 до 10213 — известные порты, которые назначаются и контролируются организацией IANA (Internet Assigned Numbers Authority).
    Как правило, их используют различные системные приложения ОС.
  • Порты от 1024 до 49151 — зарегистрированные порты, назначаемые IANA. Их позволяется использовать для решения частных задач.
  • Номера портов от 49152 до 65535 — динамические (приватные) порты, которые могут использоваться любыми приложениями или процессами для решения рабочих задач.

Правило для порта

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

Для этого, нужно воспользоваться оснасткой управления Брандмаэур Windows в режиме повышенной безопасности

Открыть ее можно, зайдя в меню: Диспетчер Серверов —> Средства

Далее нужно выбрать пункт «Брандмаэур Windows в режиме повышенной безопасности»

средства диспетчер сервера

В новом окне выбрать пункт «Правила для входящих подключений», кликнуть по этому пункту правой кнопкой мыши и выбрать «Создать правило»:

брэндмауэр windows

Мы будем создавать правило для порта:

тип правил

Нужно выбрать тип протокола (TCP или UDP) и указать порт, который мы задавали в ходе редактирования реестра
(в нашем примере — протокол TCP, номер порта 60000):

протокол и порты

На следующем этапе нужно выбрать тип действия, которое описывает правило.

В нашем случае нужно разрешить подключение.

создание правила

На следующем шаге необходимо указать область действия правила — оно зависит от того, где работает сервер (в рабочей группе, домене, или частном доступе):

профиль сети

Затем нужно выбрать имя для правила
(рекомендуется выбирать его таким образом, чтобы затем правило было легко узнать среди других):

имя порта

После этого нужно перезагрузить сервер.

Теперь для подключения к нему по протоколу RDP нужно использовать новый порт.

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

Смена стандартного порта Remote Desktop Protocol

Начнем со стандартной меры — смены стандартного порта Windows 2016 RDP, что позволит предотвратить атаку всем известных портов (well-known ports).
Настройку порта можно осуществить с помощью реестра — HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminalServerWinStationsRDP-TcpPortNumber.

Рис. 1. Смена порта RDP в Windows Server 2016 с помощью редактора реестра

После этого запустите Брандмауэр Windows и на боковой панели слева выберите Дополнительные параметры. Далее — Правила для входящих соединений и нажмите кнопку Создать правило (на панели справа)

Рис. 2. Правила для входящих подключений

В появившемся окне выберите Для порта и нажмите кнопку Далее. Затем выберите Определенные локальные порты и введите порт, указанный при редактировании реестра (рис. 3). В следующем окне мастера нужно выбрать Разрешить подключение(рис. 4).

Рис. 3. Задаем новый порт

Рис. 4. Разрешаем подключение

Собственно, на этом настройка завершена. Отключитесь от сервера и установите новое соединение. Не забудьте в настройках RDP-клиента Windows Server 2016 указать новый порт: IP-адрес_сервера: порт.

Блокируем учетные записи с пустым паролем

Усилить RDP безопасность можно, запретив windows server подключаться учетным записям с пустым паролем. Для этого нужно включить политику безопасности «Учетные записи: разрешить использование пустых паролей только при консольном входе»:

  1. Откройте локальную политику безопасности (нажмите Win + R и введите команду secpol.msc)
  2. Перейдите в раздел Локальные политики, Параметры безопасности
  3. Дважды щелкните на нужной нам политике и убедитесь, что для нее задано значение Включен (рис. 5).

Рис. 5. Включение политики безопасности в Windows 2016 RDP «Учетные записи: разрешить использование пустых паролей только при консольном входе»

Настраиваем политику блокировки

Основная проблема в том, что по умолчанию Windows-server (даже 2016!) не защищен от брутфорса, поэтому безопасность RDP в Windows 2016 пребывает не на очень высоком уровне. При наличии какого-либо сервиса, в частности, FTP, вас могут брутфорсить, пока не получат доступ к системе, перебирая огромное множество логинов и паролей. Именно поэтому необходима настройка временной блокировки пользователя после нескольких неудачных попыток.

Необходимый набор правил и настроек называется Политика блокировки учетной записи (Account Lockout Policy). Пока вы еще не закрыли окно Локальная политика безопасности, перейдите в раздел Политики учетных записей, Политика блокировки учетной записи. Установите Пороговое значение блокировки — 5 (максимум 5 неудачных попыток входа), Продолжительность блокировки учетной записи — 30 (на 30 минут учетная запись будет заблокирована после 5 неудачных попыток входа).

Рис. 6. Настройка политики блокировки учетной записи

Настройка службы шлюза служб терминалов

Служба «Шлюз TS (служб удаленных рабочих столов)» Windows Server 2016 разрешает сторонним пользователям реализовывать удаленное подключение к терминальным серверам и другим машинам частной сети с активированным протоколом удаленного рабочего стола. Служба обеспечивает RDP безопасность подключений за счет использования протокола HTTPS/SSL, что позволяет не заниматься настройкой VPN для шифрования трафика.

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

Порядок действий для установки службы «Шлюз ТS»:

  1. Откройте Диспетчер серверов и на главной его странице нажмите ссылку Добавить роли и компоненты
  2. Нажмите Далее, а затем выберите Установка ролей или компонентов.
  3. Выберите ваш сервер из пула серверов
  4. Выберите Службы удаленных рабочих столов и нажмите Далее несколько раз, пока не достигнете страницы Выбор служб ролей
  5. Выберите службы ролей Шлюз удаленных рабочих столов (рис. 7)
  6. Нажмите кнопку Добавить компоненты
  7. Нажимайте Далее для завершения процедуры установки. Когда все будет готово для установки выбранных компонентов, нажмите кнопку Установить (рис. 8).

Рис. 7. Установка службы ролей

Рис. 8. Все готово для установки

Далее нужно создать сертификат для шлюза служб удаленных рабочих столов. Запустите Диспетчер служб IIS, выберите пункт Сертификаты сервера. На панели справа выберите Создать сертификат домена. Введите необходимые сведения (рис. 11).

Рис. 9. Диспетчер служб IIS

Рис. 10. Выберите Создать сертификат домена

Рис. 11. Информация о сертификате

Далее нужно выбрать центр сертификации, который подпишет сертификат, и нажать кнопку Готово. Сертификат появится в списке сертификатов.

Следующий шаг — настройка шлюза TS на использование сертификата. Вернитесь к Диспетчеру серверов и, используя меню Средства, запустите Диспетчер шлюза удаленных рабочих столов. Обратите внимание, что есть одна ошибка — Сертификат сервера еще не установлен или не выбран. Собственно, все, что остается сделать — нажать ссылку рядом Просмотр и изменение свойств сертификата и выбрать ранее созданный сертификат, нажав кнопку Импорт сертификата (рис. 13). В этом окне также можно создать самозаверяющийся сертификат.

Рис. 12. Диспетчер шлюза удаленных рабочих столов

Рис. 13. Выбор сертификата SSL

Используем протокол SSL/TLS для защиты RDP

Если соединение с RDP-сервером реализовывается не через VPN, для обеспечения защиты подключений рекомендуется активировать SSL/TLS-туннелирование соединения.

Опцию RDP через TLS можно активировать через набор правил и настроек защиты сервера удаленных рабочих столов. Введите команду gpedit.msc и перейдите в раздел Конфигурация компьютера, Административные шаблоны, Компоненты Windows, Службы удаленных рабочих столов, Узел сеансов удаленных рабочих столов, Безопасность. Откройте политику Требовать использования специального уровня безопасности для удаленных подключений по протоколу RDP. Выберите значение Включено и выберите уровень безопасности SSL (рис. 14).

Рис. 14. Включение RDP через TLS

На этом настройка безопасности RDP Windows server 2016 закончена.

Изменение-порта-RDP-в-Windows-Server-2016

В данном руководстве будет рассмотрена процедура изменения порта RDP в операционной системе Windows Server 2016.

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

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

Редактирование реестра производится с помощью программы-редактора.

Нажмите Пуск и в панели Поиск напечатайте cmd.
вызов-командной-строки

В появившемся окне консоли наберите и выполните команду regedit.
команда-regedit

В редакторе реестра нужно отыскать раздел RDP-Tcp, сделать это можно, пройдя такой путь:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp

RDP-Tcp

В нем необходимо отыскать элемент PortNumber (как на картинке выше), и открыть этот параметр.

Далее следует переключиться в Десятичный (Decimal) формат ввода и задать новый порт для подключения по протоколу RDP:

Десятичный-формат

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

— Номера от 0 до 10213 — известные порты, которые назначаются и контролируются организацией IANA (Internet Assigned Numbers Authority).
Как правило, их используют различные системные приложения ОС.

— Порты от 1024 до 49151 — зарегистрированные порты, назначаемые IANA. Их позволяется использовать для решения частных задач.

— Номера портов от 49152 до 65535 — динамические (приватные) порты, которые могут использоваться любыми приложениями или процессами для решения рабочих задач.

Правило для порта

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

Для этого, нужно воспользоваться оснасткой управления Брандмаэур Windows в режиме повышенной безопасности

Открыть ее можно, зайдя в меню: Диспетчер Серверов —> Средства

Далее нужно выбрать пункт «Брандмаэур Windows в режиме повышенной безопасности»

Брандмаэур-Windows

В новом окне выбрать пункт «Правила для входящих подключений», кликнуть по этому пункту правой кнопкой мыши и выбрать «Создать правило»:

Создать-правило

Мы будем создавать правило для порта:

правило-для-порта

Нужно выбрать тип протокола (TCP или UDP) и указать порт, который мы задавали в ходе редактирования реестра
(в нашем примере — протокол TCP, номер порта 60000):

протокол-TCP

На следующем этапе нужно выбрать тип действия, которое описывает правило.

В нашем случае нужно разрешить подключение.
разрешить-подключение

На следующем шаге необходимо указать область действия правила — оно зависит от того, где работает сервер (в рабочей группе, домене, или частном доступе):
рабочей-группе

Затем нужно выбрать имя для правила
(рекомендуется выбирать его таким образом, чтобы затем правило было легко узнать среди других):
выбрать-имя-для-правила

После этого нужно перезагрузить сервер.

Теперь для подключения к нему по протоколу RDP нужно использовать новый порт.

Используйте наши наработки и знания!
Это поможет Вам эффективно и максимально быстро освоить алготрейдинг.



Remote Desktop Protocol (RDP) is a Microsoft-proprietary remote access protocol that is used by Windows systems administrators to manage Windows Server systems remotely. What sets RDP apart from, say, Windows PowerShell or Secure Shell (SSH) remoting is the presence of the full graphical desktop, as shown in Figure 1.

MORE: Best Remote Access Software and Solutions

By default, the RDP server component listens for incoming connections on TCP port 3389 by default, although this can be changed by the administrator for security reasons.

To be sure, Microsoft’s current push is for admins to reduce their reliance upon RDP and instead (a) deploy Windows Servers in Server Core or Nano mode; and (b) employ Windows PowerShell command-line remote administration instead of RDP.

Microsoft’s justification for this advice is two-fold:

  • A GUI layer consumes unnecessary system resources
  • A GUI layer broadens the attack surface of your servers

Regardless, many admins are accustomed to RDP-based remote administration, and seek to do so even in the newly released Windows Server 2016 operating system. Let’s learn how to enable RDP in Server 2016 (tl;dr: the process is identical to Windows Server 2012 R2).

Server Manager

Open the Server Manager console, navigate to the Local Server node, and click the Remote Desktop hyperlink as shown in Figure 2.

The Remote Desktop hyperlink is simply a shortcut to the System Properties sheet from the System Control Panel item. Select Allow remote connections to this computer, and optionally enable Allow connections only from computers running Remote Destkop with Network Level Authentication (recommended).

Network Level Authentication (NLA) protects Windows Server against denial-of-service (DoS) attacks by requiring authentication to take place before any graphical session is established by the server. NLA also conserves server system resources.

Windows PowerShell

From a lower-level perspective, incoming RDP connections are enabled on a server through two Registry values and a Windows Firewall rule.
Open an elevated Windows PowerShell session and run the following commands. This first one creates the fDenyTSConnections value and sets it to 0 (off). This makes sense, because we don’t want to deny Terminal Services (TS) connections.

New-ItemProperty -Path ‘HKLM:SystemCurrentControlSetControlTerminal Server’ -Name ‘fDenyTSConnections’ -Value 0 -PropertyType dword -Force

The next command creates and enables the UserAuthentication (Network Layer Authentication) value; NLA is a good idea and you should consider enabling it by default on your servers.

New-ItemProperty -Path ‘HKLM:SystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp’ -Name ‘UserAuthentication’ -Value 1 -PropertyType dword -Force

The next command enables the predefined «Remote Desktop» Windows Firewall rule. We can then invoke the Get-NetFirewallRule PowerShell cmdlet to verify as shown in Figure 3.
Enable-NetFirewallRule -DisplayGroup ‘Remote Desktop’

Group Policy

The chances are good that you want to standardize RDP behavior across all your infrastructure servers. Therefore, we turn to Group Policy to accomplish this goal.

Start by creating, linking and scoping a new Group Policy Object (GPO) that targets the servers that should share RDP server settings.

Next, navigate to the following Group Policy path and add a new Restricted Groups entry (shown in Figure 4):
Computer ConfigurationPoliciesWindows SettingsSecurity SettingsRestricted Groups

You can customize the membership in the servers’ built-in Remote Desktop Users group; members of this group can establish RDP sessions to the server. Note that the local Administrators group (and, by extension, the Domain Admins global group) is automatically granted this privilege in Active Directory.

The following three Group Policy settings govern:

  • Windows Firewall incoming RDP exceptions
  • User right to establish RDP sessions
  • Requiring NLA

Computer ConfigurationAdministrative TemplatesNetworkNetwork ConnectionsWindows FirewallDomain ProfileWindows Firewall: Allow Inbound Remote Desktop exceptions

Computer ConfigurationAdministrative TemplatesWindows ComponentsRemote Desktop ServicesRemote Desktop Session HostConnectionsAllow user to connect remotely by using Remote Desktop Services

Computer ConfigurationAdministrative TemplatesWindows ComponentsRemote Desktop ServicesRemote Desktop Session HostSecurityRequire user authentication for remote connections by using NLA

Creating the Client Connection

Windows Client and Windows Server both include the Microsoft RDP client, called Remote Desktop Connection. My favorite way to invoke this tool is to:

Press WINDOWS KEY+R

Type mstsc (which stands for «Microsoft Terminal Services Client»)

Press ENTER

I show you the Remote Desktop Connection user interface in Figure 5.

What’s cool about RDP clients is that they are available for just about every desktop or mobile operating system. Here is a representative list:

  • Android: Microsoft Remote Desktop
  • iOS: Microsoft Remote Desktop
  • Linux: rdesktop
  • macOS: Microsoft Remote Desktop
  • Windows Phone: Microsoft Remote Desktop

Note that Windows Server supports only two simultaneous RDP sessions at once. If you need more than that, then you’ll have to install the Remote Desktop Services (RDS) Session Host server role and purchase additional RDS connection licenses from Microsoft.

Final Thoughts

If you’ve configured RDP on previous Windows Server versions, then you’ll find that Windows Server 2016 behaves the exact same way. Keep in mind, however, that Microsoft’s ever-widening embrace of «assume breach» security posture and the hybrid cloud scenario and its accompanying «manage herds, not pets» philosophy means the emphasis is on command-line automation rather than on-off RDP GUI sessions.

  • 10 Best New Features in Windows Server 2016
  • Windows 10 for IT Pros: Tutorials, Tips and Tricks
  • Top 6 Windows 10 Apps for IT Pros

Get instant access to breaking news, in-depth reviews and helpful tips.

Понравилась статья? Поделить с друзьями:
  • Rdp connection manager windows 10 скачать
  • Rdp cal windows server 2019 купить
  • Rdp 8 1 for windows 7 sp1
  • Rdp 7 windows 7 x32 скачать
  • Rdc6445gz драйвер для windows 10 x64