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

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

Покрокова інструкція

Встановлення та налаштування SFTP-сервера (SSH FTP)

Спочатку потрібно завантажити та встановити OpenSSH з GitHub:
https://github.com/PowerShell/...
Завантажуємо архів: OpenSSH-Win64.zip

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

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

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

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

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

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

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

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

5) Перейдіть до каталогу OpenSSH, в цьому прикладі:"C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

Встановіть сервер OpenSSH:
(повинно з'явитися зелене повідомлення "служби sshd і ssh-agent успішно встановлено");

.\Install-sshd.ps1

Увімкніть автозапуск для служби SSHD:

Set-Service -Name sshd -StartupType ‘Automatic’

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

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

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

.\FixHostFilePermissions.ps1
Встановлення, тестування та видалення SFTP-сервера на основі OpenSSH у Windows


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

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

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

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

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

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

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

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

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

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

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

2) Перейдіть до каталогу OpenSSH, в цьому прикладі: "C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

3) Зупиніть службу SSHD:

Stop-Service sshd

4) Видаліть службу OpenSSD:

.\uninstall-sshd.ps1
Встановлення, тестування та видалення SFTP-сервера на основі OpenSSH у Windows

Проблеми з налаштуванням OpenSSH в системі Windows і як їх вирішити

Налаштування OpenSSH у Windows може бути дещо складним, особливо після оновлень Windows, випущених після жовтня 2024 року, оскільки вони можуть впливати на роботу OpenSSH. Якщо ви зіткнулися з проблемами OpenSSH, наприклад, такими як помилка 1067 або неможливість підключення, встановіть оновлення Windows KB5052093 (лютий 2025 року). Це оновлення містить виправлення для проблем, спричинених оновленнями жовтня 2024 року. Перевірте його наявність у «Параметрах» → «Оновлення та безпека» → «Центр оновлення Windows» (включно з необов’язковими оновленнями). Перед встановленням створіть точку відновлення системи на випадок непередбачених проблем. Крім того, для вирішення більшості проблем скористайтеся рішеннями з наступної таблиці.

Проблема Причина Рішення
Служба не запускається (помилка 1067) Зміна прав доступу до C:\ProgramData\ssh\logs Залишити лише SYSTEM та Адміністратори з повним доступом
Неможливо підключитися Брандмауер блокує порт 22 Додати правило в брандмауер для порту 22
Помилки аутентифікації Неправильні облікові дані або налаштування ключів Перевірити облікові дані, додати PubkeyAcceptedAlgorithms +ssh-rsa у файл sshd_config
Служба в стані "installpending" Неповна установка Перевстановити OpenSSH, видалити папку C:\Windows\System32\OpenSSH
Проблеми із зовнішнім підключенням Порт 22 блокується маршрутизатором Налаштувати перенаправлення порту 22
Зависання сесій SSH Помилки в OpenSSH або налаштуваннях клієнта Оновити OpenSSH, перевірити налаштування клієнта