RDP порт, отворен към целия интернет, започва да получава опити за отгатване на паролата няколко минути след стартирането на сървъра. Дългата парола ще издържи, но всеки опит пак е опит за влизане, ред в журнала на събитията и събеседник за следващата уязвимост в RDP. Пет стъпки решават това. Всяка е команда на PowerShell и всяка изпълнихме на нашия образ Windows Server 2022 преди публикуване.
Отворете PowerShell като администратор през RDP (как да се свържете) и вървете по ред. Стъпка 4 направете последна: само тя може да ви остави отвън.
1. Дълга уникална парола
Ако още ползвате паролата от първото влизане, сменете я в панела с дълга (20+ знака, от мениджър на пароли). Всички стъпки по-долу приемат, че самата парола не може да се отгатне.
2. Включете удостоверяване на мрежово ниво (NLA)
С NLA Windows проверява данните ви преди да създаде сесия и да начертае екрана за вход. Неудостоверени връзки никога не стигат до кода на работния плот, а именно там бяха най-известните грешки в RDP. Проверете текущото състояние:
(Get-CimInstance -Namespace root/cimv2/TerminalServices -ClassName Win32_TSGeneralSetting -Filter "TerminalName='RDP-tcp'").UserAuthenticationRequired
1 означава, че NLA е включено. Ако виждате 0, включете го:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name UserAuthentication -Value 1
Съвременните клиенти за отдалечен работен плот за Windows, macOS и Linux (xfreerdp) поддържат NLA. При следващото свързване паролата ще бъде поискана преди да се появи отдалеченият екран.
3. Заключвайте акаунти след неуспешни опити
Стандартната инсталация на Windows Server 2022 никога не заключва акаунт, колкото и грешни пароли да дойдат. На сървърите, инсталирани от нашия образ от 24 октомври 2026 г., границата по-долу вече е зададена; на по-старите я задайте:
net accounts /lockoutthreshold:5 /lockoutwindow:15 /lockoutduration:15
net accounts
Пет грешни пароли за 15 минути заключват акаунта за 15 минути. Проверихме: след пет неуспешни опита бяха заключени и обикновен потребител, и вграденият Administrator. Заключването се маха само, така че сутрин с много печатни грешки ще ви струва четвърт час, а не сървъра.
4. Разрешете RDP само от вашия IP адрес
Тази стъпка маха почти целия шум. Правилата на защитната стена на Windows приемат списък с отдалечени адреси – въведете своя. Вижте текущия си публичен IP на която и да е страница „какъв е моят IP“, след това:
$myIp = '203.0.113.10' # your public IP; several: '203.0.113.10','198.51.100.0/24'
Get-NetFirewallPortFilter | Where-Object LocalPort -eq 3389 | Get-NetFirewallRule | Set-NetFirewallRule -RemoteAddress $myIp
Командата намира всички входящи правила за порт 3389, а не само вградената група „Отдалечен работен плот“. Това е важно: сървърите, инсталирани от нашия образ преди 24 октомври 2026 г., имат допълнително правило „EQVPS RDP 3389“, което отваря порта за всички, а и друг софтуер може да добави свои правила. Ако ограничите само вградената група, такова правило ще остави порта отворен. Точно тази грешка направихме ние самите при тестването. Проверете резултата:
Get-NetFirewallPortFilter | Where-Object LocalPort -eq 3389 | Get-NetFirewallRule |
Select-Object DisplayName, @{n='Remote';e={($_ | Get-NetFirewallAddressFilter).RemoteAddress}}
На всеки ред трябва да стои вашият адрес. В нашия тест връзка от всеки друг адрес оставаше без отговор, а от разрешения минаваше.
На план с NAT всичко работи по същия начин. Пренасочването от личния ви порт запазва истинския ви адрес, затова разрешете собствения си публичен IP.
Ако IP адресът ви се смени, RDP ще спре да отговаря и на вас. Отворете конзолата в браузъра от панела (тя не минава през RDP и защитната стена), влезте и изпълнете командата с новия адрес. За да премахнете ограничението изцяло, използвайте -RemoteAddress Any.
5. Вижте кой се опитва да влезе
Неуспешните влизания са събитие 4625 в журнала за защита. Тази команда показва името на акаунта и адреса на всеки опит:
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 20 |
Select-Object TimeCreated, @{n='User';e={$_.Properties[5].Value}}, @{n='SourceIP';e={$_.Properties[19].Value}}
Преди списъка с разрешени IP очаквайте постоянен поток от Administrator, admin, user от непознати адреси. След това списъкът трябва да утихне.
За какво не си струва да губите време
- Смяна на порта на RDP. На план със собствен IPv4 само намалява шума в журнала; скенерите бързо намират новия порт. На план с NAT разваля достъпа, защото пренасочването е към 3389.
- Изключване на защитната стена, „за да заработи“. Ако след промяна на правило RDP спре да отговаря, поправете правилото през конзолата в браузъра.
Обновления
Най-сериозните инциденти с RDP идваха от грешки в протокола, а не от пароли. Windows Server 2022 получава обновления за сигурност до 14 октомври 2031 г., затова не изключвайте Windows Update и рестартирайте, когато ви помоли.
Образът е Windows Server 2022 с вашия собствен лиценз (как работи BYOL). Плановете започват от Windows-Small: 4 vCPU, 4 GB RAM, 50 GB, $11/месец с NAT. Със собствен IPv4 Windows Small-IP струва $28/месец. Четирите плана са на страницата Windows VPS. За SSH до RDP вижте OpenSSH на Windows Server.
Коментари
Още няма коментари. Бъди първият.