Перейти к содержимому

Как защитить сервер Windows: RDP, брандмауэр и обновления

Облачные серверы4 мин чтения

Защита облачного сервера с Windows Server от подбора паролей по RDP: доступ только со своих IP-адресов, смена порта RDP, отдельная учётная запись, брандмауэр Windows, обновления и Microsoft Defender.

Содержание

Сервер с открытым удалённым рабочим столом (RDP) начинают сканировать и подбирать к нему пароли в первые часы после подключения к интернету. Так происходит с любым сервером, и это не означает, что атака направлена именно на вас. Ниже перечислены меры защиты в порядке их важности.

Надёжный пароль

Пароль, который формируется при установке системы, случайный и достаточно длинный. Если вы меняете его на собственный, используйте не менее 12 символов и не повторяйте пароли от других сервисов. Сложный пароль вместе с ограничением доступа по IP-адресам — основная защита от подбора.

Доступ по RDP только со своих IP-адресов

Это самая действенная мера: подключения к RDP с остальных адресов брандмауэр отклонит. Свой внешний IP-адрес можно узнать на странице «Информация об IP-адресе». Выполните в PowerShell на сервере, перечислив адреса и сети через запятую:

Set-NetFirewallRule -DisplayGroup "Remote Desktop" -RemoteAddress 198.51.100.7, 192.0.2.0/24

Проверить результат: Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Get-NetFirewallAddressFilter. Снять ограничение: Set-NetFirewallRule -DisplayGroup "Remote Desktop" -RemoteAddress Any.

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

Другой порт RDP

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

New-NetFirewallRule -DisplayName "RDP 3390" -Direction Inbound -Protocol TCP -LocalPort 3390 -Action Allow
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name PortNumber -Value 3390
Restart-Service TermService -Force

Текущий сеанс при этом прервётся; если служба не перезапустилась, перезагрузите сервер. Для подключения укажите новый порт: mstsc /v:203.0.113.10:3390. Если доступ ограничен вашими адресами, укажите их и в новом правиле (параметр -RemoteAddress). Убедившись, что подключение по новому порту работает, выключите стандартные правила: Disable-NetFirewallRule -DisplayGroup "Remote Desktop".

Отдельная учётная запись администратора

Имя Administrator общеизвестно, поэтому пароль подбирают прежде всего к нему. Создайте для работы учётную запись с собственным именем и правами администратора:

$p = Read-Host "Пароль" -AsSecureString
New-LocalUser -Name "ivanov" -Password $p -PasswordNeverExpires
Add-LocalGroupMember -Group "Administrators" -Member "ivanov"

Подключитесь под новой учётной записью и убедитесь, что вход работает. После этого встроенную учётную запись можно отключить: Disable-LocalUser -Name Administrator. При необходимости её снова включит сброс пароля из кабинета.

Брандмауэр Windows: открыть порт

Брандмауэр Windows включён: из внешней сети разрешены подключения по RDP и проверка связи (ping). Чтобы к программе на сервере можно было подключиться извне, откройте её порт. Например, для сайта:

New-NetFirewallRule -DisplayName "HTTP и HTTPS" -Direction Inbound -Protocol TCP -LocalPort 80,443 -Action Allow
New-NetFirewallRule -DisplayName "MS SQL" -Direction Inbound -Protocol TCP -LocalPort 1433 -RemoteAddress 198.51.100.7 -Action Allowоткрыть порт только для одного адреса
Get-NetFirewallRule -Direction Inbound -Enabled True | Format-Table DisplayName, Profileвключённые входящие правила
Remove-NetFirewallRule -DisplayName "HTTP и HTTPS"удалить правило

Те же правила настраиваются в графическом интерфейсе: команда wf.msc → Inbound Rules → New Rule. Не выключайте брандмауэр целиком, а порты баз данных (MS SQL — 1433, MySQL — 3306) открывайте только для своих адресов.

Обновления

Устанавливайте обновления безопасности ежемесячно: многие атаки используют уязвимости, которые Microsoft давно исправила. Как установить обновления и настроить автоматическую установку — в статьях Windows Server 2022 и Windows Server 2019.

Антивирус Microsoft Defender

В Windows Server 2019 и 2022 встроен антивирус Microsoft Defender. По умолчанию он включён и получает обновления баз через Windows Update. Проверить его состояние можно командой:

Get-MpComputerStatus | Format-List RealTimeProtectionEnabled, AntivirusSignatureLastUpdated

Базы обновляются вручную командой Update-MpSignature, отдельная папка проверяется командой Start-MpScan -ScanType CustomScan -ScanPath C:\inetpub. Если антивирус замедляет работу базы данных, добавьте её папку в исключения (Add-MpPreference -ExclusionPath "D:\Data"), но не отключайте защиту полностью.

Резервные копии

Перед обновлениями и изменением настроек делайте снимок сервера, а важные данные регулярно копируйте за пределы сервера: снимок хранится 7 дней и удаляется при переустановке системы, поэтому резервную копию он не заменяет. Как настроить копирование встроенными средствами — в статье Резервное копирование Windows Server.

Как посмотреть попытки подбора пароля

Неудачные попытки входа записываются в журнал Security с кодом события 4625 (Event Viewer, команда eventvwr.msc → Windows Logs → Security). Десять адресов, с которых за последние сутки было больше всего неудачных попыток, покажет PowerShell, запущенный от имени администратора:

Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625; StartTime=(Get-Date).AddDays(-1)} -ErrorAction SilentlyContinue |
  ForEach-Object { $_.Properties[19].Value } | Group-Object | Sort-Object Count -Descending |
  Select-Object -First 10 Count, Name

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

Не нашли ответ? Напишите в поддержку — подскажем.