Перейти к основному контенту

Изменение порта RDP

Безопасность удаленного доступа — одна из важнейших задач при администрировании серверов. Этот материал поможет вам повысить защиту вашего сервера, изменив стандартный порт RDP, и настроить доступ по IP-адресу.

Если Вы пользуетесь услугами виртуального сервера, то Вы можете воспользоваться данной статьей для изменения порта RDP: Замена стандартного порта RDP

Так же для защиты сервера можете воспользоваться данной статьёй: Защита RDP через RDP Defender

Отключить RDP полностью и управлять сервером через VNC Установка и настройка VNC-сервера на Windows можно по данной статье: Включение, отключение RDP и сетевого экрана на Windows

Зачем менять порт RDP?

По умолчанию служба RDP использует порт 3389 (TCP и UDP), который является общеизвестной мишенью для атак и повсеместно сканируется злоумышленниками. Даже самая сложная парольная защита может быть взломана атаками перебора (brute-force). Хотя смена порта — это лишь мера «безопасности через неясность» (security by obscurity) и не панацея, она позволяет отсечь массовые автоматизированные атаки и снизить нагрузку на сервер.

Как изменить порт RDP

Важно: Перед началом работ убедитесь, что у вас есть права администратора на сервере и альтернативный способ доступа на случай ошибки. Для доступа к виртуальным или выделенным серверам можно подключится по VNC Не работает VPS, что делать? или IPMI Не работает выделенный сервер/не могу зайти удаленно на сервер. Что делать?

Существует несколько способов изменения порта прослушивания RDP. Все они сводятся к редактированию одного параметра в реестре Windows.

Способы изменения порта

Редактор реестра (через GUI)
  1. Нажмите Win + R, введите regedit и нажмите Enter.
    • image.png

  2. В окне редактора реестра перейдите по пути:
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
    • image.png

  3. В правой части окна найдите параметр PortNumber
    • image.png

  4. Дважды кликните по нему, выберите систему счисления «Десятичная» (Decimal), введите желаемый номер порта (например, 15500) и нажмите «ОК».
    • image.png

PowerShell (рекомендуемый)

Этот способ предпочтительнее, так как его можно выполнить одной командой.

  1. Запустите PowerShell от имени администратора.
    • image.png

  2. Чтобы проверить текущий порт, можно выполнить команду:
    • Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name 'PortNumber'

    • image.png

  3. Чтобы изменить порт, выполните:
    • $portvalue = 15500 # Укажите ваш новый порт
      Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name 'PortNumber' -Value $portvalue

    • image.png

  4. Использование скрипта
    • Можно сохранить команды  в файл с расширением .ps1 и запускать их на нужных серверах.

Изменение правил сетевого экрана (Брандмауэра)

После изменения порта в реестре необходимо создать соответствующее правило в брандмауэре Windows.

  1. Откройте консоль управления: нажмите Win + R, введите wf.msc и нажмите Enter.
    • image.png

  2. В открывшемся окне выберите «Правила для входящих подключений».
    • image.png

  3. В правой части окна нажмите «Создать правило...».
    • image.png

  4. Выберите тип правила «Для порта», нажмите «Далее».
    • image.png

  5. Выберите «Протокол TCP» и укажите «Определенные локальные порты», вписав туда ваш новый номер (например, 15500), нажмите «Далее».
    • image.png

  6. Выберите действие «Разрешить подключение», нажмите «Далее».
    • image.png

  7. Оставьте все профили (Domain, Private, Public) отмеченными или настройте под ваши задачи, нажмите «Далее».
    • image.png

  8. Задайте имя, например, Custom-RDP-Port, и нажмите «Готово». Повторите эти шаги для протокола UDP.
    • image.png

Альтернатива через PowerShell:

Эквивалентную команду можно выполнить в PowerShell от имени администратора:

New-NetFirewallRule -DisplayName "Custom-RDP-Port" -Direction Inbound -LocalPort 15500 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "Custom-RDP-Port-UDP" -Direction Inbound -LocalPort 15500 -Protocol UDP -Action Allow

После настройки брандмауэра обязательно перезагрузите сервер.

Усиление безопасности: доступ только с определенных IP-адресов

Смена порта — это полдела. Самый эффективный способ — разрешить подключение к RDP только с одного или нескольких доверенных статических IP-адресов.

Подробнее об этом Вы можете узнать в данной статье: Ограничение доступа к RDP по IP-адресам в Windows Server

Важное условие: Этот метод работает только со статическими IP-адресами (белыми адресами). При подключении через NAT или с динамическим IP (серым адресом) этот способ создаст больше проблем, чем пользы, заблокировав доступ Вам самим.

Можно ли настроить доступ по доменному имени?

Если Вы знаете что такое белые статичные и серые динамические IP адреса и умеете пользоваться сервисами по типу DynDNS, то возможно Вам хотелось бы настроить подключение по RDP используя доменное имя, а не IP адрес.

Если кратко, то так сделать нельзя. Стандартный брандмауэр Windows не поддерживает добавление доменных имен в правило. Он работает только с сетевыми адресами (IPv4/IPv6) и диапазонами.

Заключение.

Как говорилось в начале, стандартные порты известны всем и подвержены атакам. Следуя данной статье Вы сможете немного защитить Ваш сервер. Усилить же защиту поможет описанные выше ограничения по IP адресам или RDP Defender.