Windows Server: как включить и настроить RDP 列印

  • windows, rdp, vps, vds
  • 0

RDP (Remote Desktop Protocol) позволяет подключаться к серверу с Windows из клиента Windows/macOS/Linux. Базовый порядок действий:

- Включить RDP и Network Level Authentication (NLA).
- Открыть правила брандмауэра для RDP.
- Добавить нужных пользователей в группу «Remote Desktop Users».
- По необходимости ограничить доступ по IP, сменить порт, привязать сертификат TLS.

Вариант A. Через графический интерфейс (Desktop Experience)


1. Откройте Server Manager → Local Server → справа найдите «Remote Desktop».
2. Нажмите «Disabled» → поставьте «Allow remote connections to this computer».
3. Оставьте галочку «Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended)».
4. Подтвердите включение правил в Windows Defender Firewall (мастер предлагает это сделать).
5. Добавьте пользователей:
- Win+R → lusrmgr.msc → Groups → Remote Desktop Users → Add → укажите учётные записи.
6. Проверьте брандмауэр:
- Win+R → wf.msc → Inbound Rules → группа «Remote Desktop» должна быть Enabled (TCP и UDP).


Вариант B. Одной командной пачкой через PowerShell (любой Windows Server)

Откройте PowerShell от имени администратора и выполните:

# 1) Включить RDP
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server' -Name fDenyTSConnections -Value 0

# 2) Включить NLA (только авторизованные на уровне сети)
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name UserAuthentication -Value 1

# 3) Разрешить правила брандмауэра для RDP (TCP/UDP)
Enable-NetFirewallRule -DisplayGroup 'Remote Desktop'

Добавьте право на вход для конкретного пользователя (локальная машина):

net localgroup "Remote Desktop Users" /add Administrator
# пример для доменной учётки:
net localgroup "Remote Desktop Users" /add CONTOSO\helpdesk

Проверка:

Get-Service -Name TermService
Test-NetConnection -ComputerName localhost -Port 3389

Вариант C. Server Core (без GUI) через sconfig


1. Войдите на сервер (консоль/WinRM).
2. Выполните:

sconfig

3. Выберите пункт 7) Remote Desktop → E (Enable).
4. Когда спросит про NLA, отвечайте 1 (требовать NLA, рекомендовано).
5. Правила брандмауэра для RDP будут включены автоматически.


Ограничение доступа по IP-адресам (рекомендуется)

Оставить доступ только с конкретных адресов и подсетей:

# Разрешить RDP только с одного «белого» IP
New-NetFirewallRule -DisplayName "RDP from 203.0.113.5" -Direction Inbound -Protocol TCP -LocalPort 3389 -RemoteAddress 203.0.113.5 -Action Allow
New-NetFirewallRule -DisplayName "RDP UDP from 203.0.113.5" -Direction Inbound -Protocol UDP -LocalPort 3389 -RemoteAddress 203.0.113.5 -Action Allow

# Отключить широкие стандартные правила группы "Remote Desktop"
Disable-NetFirewallRule -DisplayGroup "Remote Desktop"

Для нескольких источников перечислите адреса через запятую или задайте подсеть, например 192.0.2.0/24.


Смена порта RDP (опционально)

По умолчанию RDP слушает 3389/TCP (и 3389/UDP). Можно сменить порт, чтобы снизить шум сканеров:

# Например, на 3390
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name PortNumber -PropertyType DWord -Value 3390 -Force

# Разрешить новый порт в брандмауэре
New-NetFirewallRule -DisplayName "RDP TCP 3390" -Direction Inbound -Protocol TCP -LocalPort 3390 -Action Allow
New-NetFirewallRule -DisplayName "RDP UDP 3390" -Direction Inbound -Protocol UDP -LocalPort 3390 -Action Allow

# Перезапуск службы удалённых рабочих столов
Restart-Service -Name TermService -Force

После смены порта подключайтесь в клиенте как server:3390.

Привязка сертификата TLS к RDP (исключить предупреждения)

По умолчанию RDP использует самоподписанный сертификат. Чтобы закрепить свой:

# Сгенерировать самоподписанный сертификат на DNS-имя сервера
$cert = New-SelfSignedCertificate -DnsName "server.example.com" -CertStoreLocation "Cert:\LocalMachine\My" -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256 -NotAfter (Get-Date).AddYears(3)

# Прописать отпечаток сертификата в RDP-Tcp
$thumb = ($cert.Thumbprint).Replace(" ", "")
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name SSLCertificateSHA1Hash -Value $thumb

# Перезапуск службы
Restart-Service -Name TermService -Force

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


Подключение клиентов


Windows: Win+R → mstsc → введите IP/имя сервера → Connect.
macOS: «Microsoft Remote Desktop» из App Store → Add PC → укажите IP/имя.
Linux: Remmina или xfreerdp /u:Администратор /v:IP.

Подсказка по вводу логина:
- Локальная учётка: .\Administrator
- Доменная учётка: CONTOSO\user или [email protected]


Типичные проблемы и решения


- Невозможно подключиться, порт закрыт
- Проверьте брандмауэр: Get-NetFirewallRule -DisplayGroup 'Remote Desktop' | ft Name,Enabled
- Проверьте прослушивание порта: netstat -ano | findstr 3389 или Test-NetConnection -Port 3389 localhost.
- Ошибка NLA/CredSSP или «учётной записи нет разрешения»
- Удостоверьтесь, что пользователь в группе «Remote Desktop Users».
- В политиках безопасности проверьте право «Allow log on through Remote Desktop Services» (secpol.msc → Local Policies → User Rights Assignment).
- В крайнем случае временно отключите NLA:

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name UserAuthentication -Value 0
Restart-Service -Name TermService -Force

Верните 1 после устранения причины.

- Чёрный экран/сразу разрывает сессию
- Обновите видеодрайверы/интегрированные службы гипервизора, проверьте событие в Event Viewer → Applications and Services Logs → Microsoft → Windows → TerminalServices-*.
- Подключение извне не работает
- Убедитесь, что на периметре (облако/роутер) проброшен порт на сервер и фильтры безопасности разрешают его. Лучше ограничить доступ по IP или использовать VPN.

Резюме безопасности


- Оставляйте включённым NLA.
- Ограничивайте входящие по IP, держите сложные пароли, включите аудит входов.
- Рассмотрите смену порта и привязку корректного TLS-сертификата.
- Для общедоступных серверов отдайте предпочтение VPN/Jump-host вместо прямой публикации RDP.
- Включить RDP можно через GUI, PowerShell или sconfig на Server Core.


這篇文章有幫助嗎?

相關文章

Какие есть боты/сервисы, которые стоит добавить в исключения? Практический гайд для защиты сайта и бизнеса В современных условиях кибербезопасности настройка блокировок и фильтров — обязательная мера для... Что делать, если сертификаты Let’s Encrypt не обновляются? Простое решение за 5 минут Сертификаты от Let’s Encrypt стали стандартом для бесплатной автоматической защиты сайтов по... Какие сервисы и решения реально помогают? Топ-10 инструментов Почему взламывают сайты и что самое опасное? Современный сайт на WordPress, Битрикс, Joomla,... Лучшие версии PHP и MySQL сейчас для WordPress: что выбрать для максимальной стабильности и скорости? WordPress — самая популярная CMS в мире, и именно поэтому вопрос о правильной версии PHP и... Где сейчас захостить видео, чтобы его просто вставлять на свой сайт без рекламы? Лучшие альтернативы YouTube В 2025 году все чаще сталкиваемся с ситуацией: YouTube работает с перебоями, вставки грузятся...
« 返回

Powered by WHMCompleteSolution


知識庫