Проверьте и включите службу
Запустите PowerShell от администратора на сервере. Windows Server 2025 включает OpenSSH: проверьте состояние вместо слепой переустановки. Пример устанавливает только отсутствующий компонент, запускает sshd и автозапуск. Ошибка загрузки может требовать проверки политики обновлений.
$cap = Get-WindowsCapability -Online -Name 'OpenSSH.Server~~~~0.0.1.0'
if ($cap.State -ne 'Installed') {
Add-WindowsCapability -Online -Name 'OpenSSH.Server~~~~0.0.1.0'
}
Start-Service sshd
Set-Service -Name sshd -StartupType Automatic
Get-Service sshdОграничьте экран сетью администрирования
До выполнения замените документационную подсеть 192.0.2.0/24 своей реальной сетью. Проверьте и ограничьте существующее правило OpenSSH либо создайте ограниченное, если его нет. Сохраняйте консоль. Проверьте TCP 22 с другой машины; открытый порт не удостоверяет сервер.
$AdminSubnet = '192.0.2.0/24'
$rule = Get-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -ErrorAction SilentlyContinue
if ($rule) {
$rule | Set-NetFirewallRule -Enabled True -RemoteAddress $AdminSubnet
} else {
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 -RemoteAddress $AdminSubnet
}
Get-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' | Get-NetFirewallAddressFilter
Test-NetConnection -ComputerName windows-server.example -Port 22Проверьте личность и учётную запись
Сравните отпечаток из консоли с запросом клиента. Используйте имя аккаунта Windows. Администраторы используют %ProgramData%/ssh/administrators_authorized_keys с особыми ACL, остальные обычно .ssh/authorized_keys в профиле. Следуйте инструкциям Microsoft. CH-J поддерживает отдельные Windows-инструменты; Linux Disk Manager и процедуры NGINX не становятся функциями Windows.
ssh-keygen -lf "$env:ProgramData\ssh\ssh_host_ed25519_key.pub" -E sha256
ssh username@windows-server.example