Windows OpenSSH сервер

​​

Недавно узнал, что для Windows существует OpenSSH сервер. Я совершенно не понял, как ssh должен выглядеть на Windows. Подключаешься туда и дальше что? Куда попадаешь, какие команды работают? Решил сам проверить и вам рассказать.

Есть репозиторий https://github.com/PowerShell/Win32-OpenSSH, откуда можно скачать актуальную версию. Все релизы в статусе беты, так что не удивляйтесь. Скачанный архив распакуйте в директорию C:\Program Files\OpenSSH. Запустите консоль powershell и там выпонлите:

powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1

Установится служба sshd, которую потом надо вручную запустить:

net start sshd

Не забудьте настроить firewall, открыв 22 порт на вход. После этого вы можете подключаться к винде по ssh, использую её стандартные учётки. После логина окажитесь в домашней директории пользователя. В качестве shell у вас будет powershell. Странно было сразу не догадаться об этом, но мне в голову такая идея не пришла.

Для службы sshd в рабочей директории есть конфиг sshd_config с таким же форматом, как в Linux. Так что к винде с настроенным ssh можно подключаться с помощью scp или rsync. Никакого лишнего софта не надо. Очень удобно. Надо было давно попробовать. Под одной учётной записью можно подключиться по rdp и ssh. Они не мешают друг другу.

Если в системе установлен WSL, то в качестве оболочки может быть установлен bash. Для этого надо поменять в реестре значение. Либо вручную, либо через powershell:

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\WINDOWS\System32\bash.exe" -PropertyType String -Force

Пользуется кто-то этой штукой на винде? Она скоро от линукса отличаться не будет.

Отправить комментарий

Комментировать (0)

Новые Старые