Встановлення, тестування та видалення SFTP сервера в Windows на базі OpenSSH

Покрокове керівництво

Для початку потрібно завантажити та встановити OpenSSH з GitHub:

https://github.com/PowerShell/...

Завантажуємо архів: OpenSSH-Win64.zip

1) Розпаковуємо вміст архіву в цільовий каталог, наприклад: "C:\Windows"

2) Відкрити властивості системи (WIN+R, команда "sysdm.cpl") -> Додатково -> Змінні середовища
У вікні, що відкрилося, є дві секції: у верхній містяться змінні оточення користувача, у нижньому - системні.
У системних змінних вибираємо змінну "Path", натискаємо на "Змінити..."

3) У вікні, що відкрилося, тиснемо на "Створити" і вводимо шлях до каталогу OpenSSH з кроку 1, в нашому прикладі: "C:\Windows\OpenSSH-Win64"

4) Запускаємо "PowerShell" від імені Адміністратора:
Пуск, вводимо "PowerShell"→ Правою кнопкою мишки на "PowerShell" → Запустити від імені адміністратора

5) Переходимо в каталог з OpenSSH, у нашому прикладі: "C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

Встановлюємо сервер OpenSSH:
(має з'явитися зелене повідомлення "sshd and ssh-agent services successfully installed");

.\Install-sshd.ps1

Включаємо автозапуск для служби SSHD:

Set-Service -Name sshd -StartupType ‘Automatic’

Відкриємо в брандмауері Windows порт TCP 22 для вхідного трафіку на SSH сервер:

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

Налаштовуємо власника файлів і права доступу: (На кожне запитання відповідаємо "Y")

.\FixHostFilePermissions.ps1

6) Відкриваємо список служб (WIN+R, команда "services.msc") -> Подвійний клік на "OpenSSH SSH Server" → Ставимо тип запуску: "Автоматично", натискаємо на "Запустити" → OK

Перевіряємо SFTP-підключення за допомогою WinSCP

Завантажуємо і запускаємо вільний клієнт WinSCP.
У вікні налаштування підключення виберіть протокол передавання файлів SFTP, вкажіть ім'я сервера і дані облікового запису Windows, під яким здійснюється підключення

Якщо все налаштовано правильно, клієнт має під'єднатися до SFTP-сервера і відобразити список файлів у домашньому каталозі користувача (за замовчуванням каталог із профілем користувача).
За допомогою звичного інтерфейсу файлового менеджера можна безпечно копіювати файли між сервером і клієнтом. Передача файлів здійснюватиметься за захищеним протоколом SFTP.

Видалення служби Win32 OpenSSH

Щоб коректно видалити службу Win32 OpenSSH із системи:

1) Запускаємо "PowerShell" від імені Адміністратора:
Пуск, вводимо "PowerShell"→ Правою кнопкою мишки на "PowerShell" → Запустити від імені адміністратора

2) Переходимо в каталог з OpenSSH, у нашому прикладі: "C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

3) Зупиняємо службу SSHD:

Stop-Service sshd

4) Видалимо службу OpenSSD:

.\uninstall-sshd.ps1