Удалённое управление без RDP: PowerShell
Как управлять машиной с Windows Server командами: WinRM, PowerShell через SSH, безопасная настройка и что делать, когда графический сеанс недоступен.
Обновлено 23 августа 2026 г.
RDP удобен, но требует канала, графики и открытого порта. Для рутины — обновлений, перезапуска служб, проверки журналов — быстрее и безопаснее командная работа: одна строка вместо трёх минут кликов.
Вариант первый: PowerShell по SSH
В Windows Server 2022 и 2025 есть штатный сервер OpenSSH. Это самый простой путь, особенно если вы уже работаете с ключами.
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service sshd -StartupType Automatic
New-NetFirewallRule -DisplayName "SSH" -Direction Inbound -Protocol TCP -LocalPort 22 `
-RemoteAddress 203.0.113.5 -Action Allow
Сделайте PowerShell оболочкой по умолчанию:
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell `
-Value "C:\Program Files\PowerShell\7\pwsh.exe" -PropertyType String -Force
Ключ для входа кладётся в C:\Users\<имя>\.ssh\authorized_keys, а для администраторов — в C:\ProgramData\ssh\administrators_authorized_keys с правами только для системы и группы администраторов, иначе сервер его проигнорирует. После этого отключите вход по паролю в C:\ProgramData\ssh\sshd_config (PasswordAuthentication no) и перезапустите службу.
Подключение обычное:
ssh Administrator@ВАШ_АДРЕС
Вариант второй: WinRM
Родной механизм Windows. Порт 5985 (HTTP) или 5986 (HTTPS).
Enable-PSRemoting -Force
Set-NetFirewallRule -Name WINRM-HTTP-In-TCP -RemoteAddress 203.0.113.5
Незашифрованный 5985 наружу выставлять нельзя. Правильный вариант — слушатель HTTPS с сертификатом:
$c = New-SelfSignedCertificate -DnsName "vds.example.ru" -CertStoreLocation Cert:\LocalMachine\My
New-Item -Path WSMan:\Localhost\Listener -Transport HTTPS -Address * -CertificateThumbPrint $c.Thumbprint -Force
New-NetFirewallRule -DisplayName "WinRM HTTPS" -Direction Inbound -Protocol TCP -LocalPort 5986 `
-RemoteAddress 203.0.113.5 -Action Allow
Работа с другой машины Windows:
$s = New-PSSession -ComputerName vds.example.ru -UseSSL -Credential (Get-Credential)
Invoke-Command -Session $s { Get-Service | Where-Object Status -eq Running | Select-Object -First 10 }
Enter-PSSession $s
Что удобно делать командами
Restart-Service W3SVC # перезапуск IIS
Get-WinEvent -LogName System -MaxEvents 20 # последние события
Get-Process | Sort-Object WS -Desc | Select-Object -First 10 Name, WS
Get-Volume | Select-Object DriveLetter, SizeRemaining
Restart-Computer -Force
Обновления тоже ставятся без графики, см. Обновления Windows Server.
Аварийный путь
Если ни RDP, ни SSH, ни WinRM не отвечают, остаётся вкладка «Консоль» в панели /hosting/vds/m/<id> в режиме «Экран» (VNC). Она подключена к машине как монитор и работает независимо от сетевых настроек внутри системы. Текстовая консоль на последовательном порту для Windows смысла не имеет.
Частые ошибки
- Открыть 5985 всему интернету. Это управление машиной по незашифрованному каналу. Всегда ограничивайте адреса и предпочитайте HTTPS.
- Неверные права на
administrators_authorized_keys. Сервер OpenSSH молча игнорирует файл, доступный на запись другим. Исправьте:icaclsс наследованием, отключённым для всех, кроме SYSTEM и Administrators. - Правило создано не в том профиле сети. Проверьте активный профиль:
Get-NetConnectionProfile. - Забыть про NLA и пароли при отключении RDP. Отключая RDP, сначала убедитесь, что альтернативный доступ работает.
Заведите привычку записывать команды настройки в файл. Переустановка системы на вкладке «Доступ» занимает минуты, а восстановление настроек по памяти — часы.