Як захистити RDP на Windows Server від брутфорс-атак?

Як захистити RDP на Windows Server від брутфорс-атак?

Як захистити RDP на Windows Server від брутфорс-атак і безпечно підключити віддалених співробітників через WireGuard VPN

🛡️ Як захистити RDP на Windows Server від брутфорсу за допомогою WireGuard VPN

Брутфорс-атаки на стандартний порт віддаленого робочого столу (TCP 3389) — головний біль адміністраторів Windows Server. Автоматизовані боти цілодобово сканують публічні IP-адреси, забиваючи журнали подій невдалими спробами входу та перевантажуючи процесор. Залишати порт 3389 «відкритим» у зовнішню мережу небезпечно, але як організувати зручний та захищений віддалений доступ для команди без розгортання складних корпоративних доменних інфраструктур?

Розглянемо простий, швидкий та надійний метод захисту за допомогою легкого VPN-шлюзу WireGuard, розгорнутого безпосередньо на вашому сервері.

🧭 Архітектура рішення

Схема будується на розділенні публічного та внутрішнього трафіку:

  • 🔒 WireGuard VPN прослуховує захищений UDP-порт (наприклад, 51820). Віддалені співробітники підключаються до нього з будь-якої точки світу.
  • 🚫 RDP (TCP 3389) повністю закривається на зовнішньому мережевому інтерфейсі брандмауэром Windows, стаючи невидимим для зовнішніх сканерів.
  • 🔑 Доступ до робочих столів надається виключно зсередини VPN-тунелю за внутрішньою IP-адресою віртуальної мережі.

Такий підхід повністю нівелює спроби підбору паролів ззовні, не створює високого навантаження на систему та дозволяє багатьом користувачам одночасно працювати в окремих сесіях RDS.

📝 Покрокова інструкція з налаштування

Крок 1. Встановлення WireGuard на Windows Server

  1. Завантажте офіційний інсталятор з wireguard.com/install та запустіть його на сервері під управлінням Windows Server.
  2. Відкрийте програму WireGuard, натисніть Add Tunnel → Add empty tunnel... (або комбінацію клавіш Ctrl+N).
  3. Заповніть конфігурацію сервера:
[Interface]
Address = 10.10.0.1/24
ListenPort = 51820
PrivateKey = СЕКРЕТНИЙ_КЛЮЧ_СЕРВЕРА

💡 Програма автоматично згенерує пару публічного та приватного ключів під час збереження файлу конфігурації.

Крок 2. Налаштування брандмауера Windows Defender

Щоб клієнти могли підключатися до VPN-сервера з інтернету, дозвольте вхідний UDP-трафік. Відкрийте PowerShell від імені адміністратора та виконайте команду:

New-NetFirewallRule -DisplayName "WireGuard Inbound" -Direction Inbound -Protocol UDP -LocalPort 51820 -Action Allow

Крок 3. Підключення першого клієнтського пристрою

На пристрої співробітника (наприклад, ноутбуці) також встановіть WireGuard і створіть конфігураційний файл із такими параметрами:

[Interface]
PrivateKey = ПРИВАТНИЙ_КЛЮЧ_КЛІЄНТА
Address = 10.10.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = ПУБЛІЧНИЙ_КЛЮЧ_СЕРВЕРА
Endpoint = ВАША_ПУБЛІЧНА_IP_СЕРВЕРА:51820
AllowedIPs = 10.10.0.0/24

У конфігураційний файл на сервері Windows Server додайте публічний ключ клієнта в секцію [Peer]:

[Peer]
PublicKey = ПУБЛІЧНИЙ_КЛЮЧ_КЛІЄНТА
AllowedIPs = 10.10.0.2/32

Активуйте тунель з обох боків та перевірте з'єднання командою: ping 10.10.0.1.

Крок 4. Блокування публічного доступу до RDP

Щоб боти з мережі більше не мали змоги сканувати службу віддалених робочих столів, заблокуйте порт 3389 саме на зовнішньому мережевому адаптері (замініть Ethernet0 на назву вашого інтерфейсу підключення до інтернету, яку можна дізнатися через Get-NetAdapter):

New-NetFirewallRule -DisplayName "Block RDP on Public Interface" -Direction Inbound -InterfaceAlias "Ethernet0" -Protocol TCP -LocalPort 3389 -Action Block

⚠️ Важливо: Не блокуйте порт 3389 глобально для всіх інтерфейсів без вказання параметра -InterfaceAlias, інакше підключення за внутрішньою IP-адресою 10.10.0.1 також стане недоступним.

Після застосування правила спроби підключення за публічною IP-адресою скидатимуться. Співробітники, підключені через VPN, зможуть вільно працювати, підключаючись за внутрішньою адресою сервера (10.10.0.1).

👥 Масштабування: додавання нових користувачів

Для надання доступу новим співробітникам змінювати загальну інфраструктуру не потрібно. Процес складається з трьох простих кроків:

  1. Створіть локального користувача в операційній системі Windows Server (через Computer ManagementLocal Users and Groups) або в Active Directory.
  2. Згенеруйте нову пару ключів на пристрої співробітника у програмі WireGuard.
  3. Додайте нову секцію [Peer] до конфігураційного файлу сервера, призначивши наступну вільну IP-адресу (наприклад, 10.10.0.3/3210.10.0.4/32):
[Peer]
PublicKey = ПУБЛІЧНИЙ_КЛЮЧ_НОВОГО_СПІВРОБІТНИКА
AllowedIPs = 10.10.0.3/32

Зміни застосовуються миттєво без необхідності перезапуску служби VPN.