Перейти к основному содержанию

Установка OpenSSH Server в Windows Server 2019

SSH

Мы ранее уже устанавливали OpenSSH сервер на Windows Server 2012 R2. Тогда мы скачивали пакет с GitHub.

Установка OpenSSH Server в Windows Server 2012 R2

Инструкция не потеряла свою актуальность, но в Windows Server 2019 теперь можно установить OpenSSH Server гораздо проще через Feature on Demand (FoD). Пакет OpenSSH Server включен в Feature on Demand (FoD) современных версий Windows 10 (начиная с 1803), Windows 11 и Windows Server 2022/2019. При этом все основные настройки выполняются автоматически, даже правило в Firewall создаётся и применяется.

Установка OpenSSH в Windows Server 2019

Установим OpenSSH сервер через FoD. Открываем настройки, Apps & features.

ssh

Нажимаем Manage optional features.

ssh

+ Add a feature.

ssh

Находим OpenSSH Server → Install.

ssh

Ничего сложного. Если установка не получается, то можно обратить внимание на этот разбор:

Windows — ошибка при установке дополнительных компонентов

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

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH.Server*' | Add-WindowsCapability –Online

Или через командную строку и DISM:

dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0

Можно проверить что пакет установлен через PowerShell:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Ser*'

ssh

State : Installed.

Запустим службу, можно вручную через GUI:

ssh

А можно через PowerShell:

Set-Service -Name sshd -StartupType 'Automatic'
Start-Service sshd

ssh

Служба запускается на 22 порту:

netstat -tan | find ":22 "

ssh

Как я уже говорил, входящее правило на Firewall для 22 порта при таком способе установки создаётся автоматически.

Настройка доступа

Конфигурационный файл находится здесь: C:\ProgramData\ssh\sshd_config.

ssh

Собственно, OpenSSH конфигурируется здесь. Информацию о конфигурации можно почерпнуть здесь:

https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configuration

Например, чтобы разрешить доступ по OpenSSH определённой группе пользователей, допишу в конец файла:

DenyUsers *
AllowGroups my_domain\my_group_for_ssh_access

Другой вариант, разрешить доступ определённым пользователям и сразу выполнить для них установку корневой директории через ChrootDirectory.

AllowUsers my_domain\user1 my_domain\user2

Match User my_domain\user1
       ChrootDirectory D:\folder_1

Match User my_domain\user2
       ChrootDirectory D:\folder_2
 

Похожие материалы

Установка СБИС3 Плагина всем пользователям терминального сервера

СБИС3 Плагин странный. Если на компьютере создано несколько учетных записей, то для каждой необходимо установить отдельную копию СБИС3 Плагина. Старый СБИС Плагин с 2020 года не поддерживается, установим новый. Мы, с помощью локальных политик, напишем на терминальном сервере скрипт, который запустится один раз при логине каждого пользователя и установит СБИС3 Плагин.