Установка

Для работы с удаленными папками на windows сервере по ssh из VSCode плагином Remote-SSH на стороне windows сервера требуется служба ssh-сервера. Давайте его установим.

Сейчас доступна версия v8.0.0.0p1-Beta. Скачиваем OpenSSH-Win64.zip.

  • Создаем каталог C:\Program Files\OpenSSH и распаковываем в неё содержимое архива.

  • Запускаем powershell от имени администратора.

  • Выполняем скрипт установки:
cd "\Program Files\OpenSSH"
.\install-sshd.ps1

sshd and ssh-agent services successfully installed

Если произошла ошибка политики безопасности, то можно выполнить установку так:

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

  • Генерируем серверные ключи:
.\ssh-keygen.exe -A

Если при этом появляется ошибка

Нужно в папке C:\ProgramData создать вручную директорию ssh

  • Снова пытаемся сгенерировать серверные ключи:
.\ssh-keygen.exe -A

На этот раз процедура выполняется успешно.

  • Настраиваем владельца и права доступа на файлы ключей и каталоги сервера :
PowerShell -ExecutionPolicy Bypass -File .\FixHostFilePermissions.ps1

На каждый вопрос отвечаем “A”.

  • Открываем 22 порт

OpenSSH работает по порту TCP 22. Откроем доступ в Firewall:

New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH

Эта команда сработает на Windows Server 12 и моложе. На более старых серверах порт можно открыть через GUI в оснастке Windows Firewall with Advanced Security.

  • Запуск службы OpenSSH

Открываем список служб:

services.msc

Находим службу “OpenSSH SSH Server”. В свойствах службы устанавливаем автоматический запуск и запускаем её.

Проверим что 22 порт работает:

netstat -tan | find "22"

22 порт слушается.

  • Проверка OpenSSH

Проверим с помощью WinSCP. Для доменного пользователя используется логин вида domain\username.

При первом входе появится окно:

Yes.

Установка завершена.

в тексте 356 слов