Не работает ssh windows 10

Как включить и использовать SSH-команды Windows 10

Microsoft объявила о том, что в 2015 году к Windows будет подключен клиент OpenSSH. Они, наконец, сделали это, и внедрили клиент SSH в обновлении Windows 10 Fall Creators. Теперь Вы можете подключиться к серверу Secure Shell из Windows без установки PuTTY или любого другого стороннего программного обеспечения.

Это все еще бета-функция, поэтому Вам может быть лучше пользоваться PuTTY, пока она не станет стабильной. Согласно отслеживанию ошибок проекта на GitHub, интегрированный клиент SSH поддерживает только ключи ed25519.

Клиент SSH входит в состав Windows 10, но это «дополнительная функция», которая по умолчанию не установлена. Чтобы установить его, откройте «Параметры» > «Приложения» и нажмите «Управление дополнительными компонентами» в разделе «Приложения и возможности».

Как включить и использовать SSH-команды Windows 10
Нажмите «Добавить компонент» в верхней части списка установленных функций. Если у Вас уже установлен клиент SSH, он появится в списке.

Как включить и использовать SSH-команды Windows 10
Прокрутите страницу вниз, нажмите кнопку «OpenSSH Client (Beta)» и нажмите «Установить».

Windows 10 также предлагает сервер OpenSSH, который Вы можете установить, если хотите запустить SSH-сервер на своем ПК. Вы должны установить это только в том случае, если Вы действительно хотите запустить сервер на своем ПК, а не просто подключиться к серверу, работающему в другой системе.

Как включить и использовать SSH-команды Windows 10

Как использовать SSH-клиент в Windows 10

Теперь Вы можете использовать SSH-клиент, запустив команду ssh. Это работает либо в окне PowerShell, либо в окне командной строки, поэтому используйте то, что Вам нравится.

Чтобы запустить Windows PowerShell откройте поиск и введите «Windows PowerShell» и нажмите на результат поиска.

Чтобы просмотреть синтаксис команды ssh, просто запустите ее:

Если Вы видите сообщение об ошибке, сообщающее, что команда не найдена, Вам нужно будет выйти и снова войти в систему. Перезагрузка компьютера также будет работать. Это не обязательно, но это бета-функция.

Как включить и использовать SSH-команды Windows 10
Эта команда работает так же, как подключение к SSH-серверу с помощью команды ssh в других операционных системах, таких как macOS или Linux. Его синтаксис или параметры командной строки одинаковы.

Например, чтобы подключиться к SSH-серверу на ssh.example.com с именем пользователя «user», Вы должны запустить:

Как включить и использовать SSH-команды Windows 10
Как и в случае с другими клиентами SSH, Вам будет предложено принять ключ хоста при первом подключении. Затем Вы получите среду командной строки, которую Вы можете использовать для запуска команд в удаленной системе.

Как вы уже знаете, из предыдущей статьи, Windows 10 включает в себя встроенное программное обеспечение SSH — клиент, и сервер! В этой статье мы рассмотрим, как включить SSH-сервер.

Примечание: Приложение OpenSSH Server позволит вам установить соединение с вашим компьютером с использованием протокола SSH. Это не позволит вам получить доступ к другим компьютерам в вашей сети. Чтобы подключиться к другим компьютерам, вы должны установить клиент OpenSSH.

В Windows 10, Microsoft, наконец, прислушалась к просьбам пользователей и добавила поддержку протокола OpenSSH в версии обновления Fall Creators.

На момент написания данной статьи, программное обеспечение OpenSSH, включенное в Windows 10, находится на стадии BETA. Это означает, что у него могут быть проблемы с стабильностью.

Предоставленный SSH-сервер похож на приложение Linux. На первый взгляд, он поддерживает те же функции, что и его аналог * NIX. Это консольное приложение, но оно работает как служба Windows.

Как включить сервер OpenSSH в Windows 10.

  1. Откройте приложение «Параметры» и перейдите в «Приложения» →  «Приложения и возможности».
  1. Справа нажмите «Управление дополнительными компонентами».

  1. На следующей странице нажмите кнопку «Добавить компонент».

  1. В списке компонентов выберите OpenSSH Server и нажмите кнопку «Установить», это установит программное обеспечение OpenSSH Server в Windows 10

  1. Перезагрузите Windows 10.

Также вы можете установить  клиент SSH с помощью PowerShell.

Откройте PowerShell от имени Администратора и выполните следующую команду и перезагрузите систему:

Get-WindowsCapability -Online | Where-Object{$_.Name -like “OpenSSH.Server*”}

Файлы OpenSSH Server находятся в папке c:\windows\system32\Openssh. Помимо клиентских приложений SSH, папка содержит следующие серверные инструменты:

  • SFTP-server.exe
  • SSH-agent.exe
  • SSH-keygen.exe
  • sshd.exe
  • конфигурационный файл «sshd_config».

Сервер SSH настроен для работы в качестве службы.

На момент написания этой статьи он не запускается автоматически. Вам нужно включить его вручную.

Как запустить сервер OpenSSH в Windows 10.

  1. Откройте Службы, (нажмите клавиши Win + R и введите  services.msc в поле «Выполнить») и запустите службу sshd. дважды кликните на запись sshd, чтобы открыть ее свойства.

  1. На вкладке «Вход в систему» см. Учетную запись пользователя, которая используется сервером sshd. В моем случае это  NT Service \ sshd 

  1. Теперь откройте командную строку или PowerShell от имени администратора .

С помощью этой команды перейдите в каталог \ Openssh

cd c:\windows\system32\Openssh
  1. Здесь запустите команду для создания ключей безопасности для сервера sshd:
ssh-keygen -A

Сервер Sshd сгенерирует ключи

  1. Теперь в командной строке введите: explorer.exe, чтобы запустить Проводник в папке OpenSSH.

  1. Кликните правой кнопкой мыши файл ssh_host_ed25519_key и измените владельца файла на пользователя службы sshd, например  NT Service\sshd.

  1. Нажмите кнопку «Добавить» и добавьте разрешение «Чтение» для пользователя «NT Service\sshd».
  2. Теперь удалите все другие разрешения, чтобы получить что-то вроде этого:

  1. Нажмите «Применить» и подтвердите операцию.
  1. Наконец, откройте службы (нажмите клавиши Win + R и введите  services.msc в поле «Выполнить») и запустите службу sshd. Она должна запустится:

Служба Sshd работает.

  1. Теперь необходимо разрешить использование SSH-порта в брандмауэре Windows. По умолчанию сервер использует порт 22. Запустите эту команду в командной строке или PowerShell от имени администратора:
netsh advfirewall firewall add rule name="SSHD Port" dir=in action=allow protocol=TCP localport=22

  1. Наконец, установите пароль для своей учетной записи пользователя, если у вас его нет.

Теперь вы можете попробовать его в действии.

Подключение к SSH-серверу в Windows 10.

Откройте свой ssh-клиент. Вы можете запустить его на том же компьютере, например, используя встроенный клиент OpenSSH  или запустить его с другого компьютера в своей сети.

В общем случае синтаксис для клиента консоли OpenSSH выглядит следующим образом:

Имя пользователя ssh @ host -p

В моем случае команда выглядит следующим образом:

ssh alex_@192.168.1.126

Где alex_ — мое имя пользователя Windows, а  192.168.1.126 — это IP-адрес моего ПК с Windows 10. Я подключусь к нему с другого компьютера, Windows 10.

Вход.

Сервер запускает классические консольные команды Windows, например: more, type, ver, copy.

Но я не могу запустить FAR Manager. Он выглядит совсем сломанным:

Еще одно интересное примечание: вы можете запускать приложения с графическим интерфейсом, такие как проводник. Если вы вошли в ту же учетную запись пользователя, которую используете для SSH, они будут запускаться на рабочем столе:

Встроенный SSH-сервер определенно интересен. Он позволяет управлять компьютером сWindows 10, без установки сторонних инструментов, как rdesktop и др..

Начиная с этой версии, встроенный SSH-сервер в Windows 10 находится на стадии BETA, поэтому в будущем он должен стать, более интересным и полезным.

День добрый. Возник вопрос с авторизацией в Windows OpenSSH по ключу.
До этого несколько раз доводилось настраивать без ключей (только по паролю) и вроде бы все было ок.
В этот раз решил сделать авторизацию только по SSH-ключу и напоролся на Permission denied (publickey,keyboard-interactive).

Кратко о сервере:
Сервер — винда 10
Юзер — локальная учетная запись (с правами администратора)
Публичный ключ лежит в authorized_keys в дирректории пользователя (C:\Users\LocalUser\.ssh\authorized_keys).
Всевозможные перезапуски и перезагрузки были.
OpenSSH сервер установлен: (на всякий случай испробованы оба варианта)
1) Параметры -> Приложения -> Дополнительные компоненты -> Сервер OpenSSH
2) Через PowerShell согласно официальной инструкции

Поискав некоторые моменты из лога наткнулся на закрытую issue от 2017 года в которой было упомянуто, что

Windows inbox Beta version currently supports one key type (ed25519).

До этого использовал RSA-ключи и в логе мелькала информация о ключах в духе

debug1: identity file C:\\Users\\LocalUser/.ssh/id_rsa type 0
debug1: identity file C:\\Users\\LocalUser/.ssh/id_ed25519 type -1

Под каждым из которых была строка о том что файл не найден.

После чтения той issue стал использовать ed25519-ключ, теперь стало так:

debug1: identity file C:\\Users\\LocalUser/.ssh/id_ed25519 type 3
debug3: Failed to open file:C:/Users/LocalUser/.ssh/id_ed25519-cert error:2
debug3: Failed to open file:C:/Users/LocalUser/.ssh/id_ed25519-cert.pub error:2
debug1: identity file C:\\Users\\LocalUser/.ssh/id_ed25519-cert type -1

Собственно в конечном счете в логе мелькает (если я правильно понимаю) отправка ключа

debug1: Offering public key: C:\\Users\\LocalUser/.ssh/id_ed25519 ED25519 SHA256:xKMs9i1ZJyeQjvIY3jL2WIZnGNwOr6v/7QLUPu9t2Nw explicit
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 51

Однако после него SSH пытается пройти авторизацию по другим включенным способам авторизации — если по паролю включена — спрашивает пароль (даже в случае когда ключ явно указан), если выключена — сразу Permission denied (publickey,keyboard-interactive).

Подскажите в чем проблема в этом случае?

Полный лог c клиента доступен на https://gist.github.com/NEK-RA/e3656f98ca7e1b6c4d7… (т.к. если вставить его напрямую тут, будет превышен лимит в 10 000 символов в тексте вопроса)
UPD: По той же ссылке добавлен и лог сервера с небольшим отличием — на текущий момент не было доступа к нужному устройству, поэтому ситуация продублирована в виртуальной машине.

В этой статье мы расскажем, как работает SSH-клиент, как его установить, а также как подключиться к Ubuntu и Windows 10 по SSH. Но давайте сначала разберёмся, что такое SSH.

Что такое SSH

SSH (Secure Shell) — сетевой протокол прикладного уровня, который позволяет управлять операционной системой и выполнять функцию тунеллирования TCP-соединения. Работа SSH построена на взаимодействии 2-х компонентов: SSH-сервера и SSH-клиента. Подробнее читайте в статье Что такое SSH.

SSH-сервер по умолчанию прослушивает соединения на порту 22, а также требует аутентификации сторон. Есть несколько вариантов проверки соединения:

  • по паролю. Используется чаще всего. При таком типе аутентификации между клиентом и сервером создаётся общий секретный ключ: он шифрует трафик;
  • с помощью ключевой пары. Предварительно генерируется открытый и закрытый ключ. На устройстве, с которого нужно подключиться, хранится закрытый ключ, а на сервере — открытый. При подключении файлы не передаются, система только проверяет, что устройство имеет доступ не только к открытому, но и к закрытому ключу.
  • по IP-адресу. При подключении система идентифицирует устройство по IP-адресу. Такой тип аутентификации небезопасен и используется редко.

OpenSSH (Open Secure Shell) — набор программ, который позволяет шифровать сеансы связи в сети. При таких сеансах используется протокол SSH.

OpenSSH включает в себя компоненты:

  • ssh,
  • scp,
  • sftp,
  • sshd,
  • sftp-server,
  • ssh-keygen,
  • ssh-keysign,
  • ssh-keyscan,
  • ssh-agent,
  • ssh-add.

Этот набор ПО может аутентифицировать пользователей с помощью таких встроенных механизмов как:

  • публичные ключи,
  • клавиатурный ввод: пароли и запрос-ответ,
  • Kerberos/GSS-API.

Установка OpenSSH на Ubuntu 22.04

В качестве примера мы рассмотрим установку Ubuntu 22.04. Настройка SSH Ubuntu Server 20.04 версии проходит аналогично.

При первой установке Ubuntu подключение по SSH запрещено по умолчанию. Включить доступ по SSH можно, если установить OpenSSH.

Для этого:

  1. 1.

    Откройте терминал с помощью комбинации клавиш Ctrl + Alt + T.

  2. 2.

    Обновите репозиторий командой:

  3. 3.

    Установите SSH с помощью команды:

  4. 4.

    Установите OpenSSH:

    sudo apt install openssh-server
  5. 5.

    Добавьте пакет SSH-сервера в автозагрузку:

    sudo systemctl enable sshd
  6. 6.

    Проверьте работу SSH:

    Если установка прошла корректно, в выводе вы увидите настройки по умолчанию:



    установка openssh на ubuntu
    Настройка SSH Linux

Готово, вы установили OpenSSH на Ubuntu.

Настройка OpenSSH на Ubuntu 22.04

По умолчанию SSH-соединение работает по порту 22. Из соображений безопасности порт лучше изменить. Для этого:

  1. 1.

    Запустите терминал с помощью комбинации клавиш Ctrl + Alt + T.

  2. 2.

    Откройте конфигурационный файл в текстовом редакторе:

    sudo nano /etc/ssh/sshd_config
  3. 3.

    В sshd_config замените порт 22 на другое значение в диапазоне от 1 до 65 535. Важно, чтобы выбранный порт не был занят другой службой:



    настройка openssh на ubuntu
    CentOS 8 настройка SSH

  4. 4.

    Чтобы изменения вступили в силу, перезапустите SSH-сервер:

Готово, вы настроили OpenSSH на Ubuntu 22.04. Теперь вы можете внести дополнительные настройки или в Ubuntu разрешить пользователю доступ по SSH.

Установка OpenSSH на Windows 10

  1. 1.

    В меню «Пуск» нажмите Параметры:



    установка openssh на windows 1

  2. 2.

    Перейдите в раздел Приложения:



    установка openssh на windows 2
    Настройка SSH

  3. 3.

    Выберите Приложения и возможности и нажмите Дополнительные компоненты:



    установка openssh на windows 3

  4. 4.

    Проверьте, установлен ли компонент «Клиент OpenSSH». Для этого в поисковой строке наберите «OpenSSH». Если компонент уже установлен, переходите к шагу Настройка SSH на Windows 10.



    установка openssh на windows 4

    Если компонент ещё не установлен, используйте PowerShell.


Что такое PowerShell

PowerShell — это утилита командной строки в ОС Windows. Она выпущена в составе Windows 7, Windows 8, Windows 8.1 и Windows 10 как неотъемлемая часть системы.

Управлять ОС через PowerShell можно при помощи командлетов — специальных команд. Командлеты работают аналогично с командами в терминале Linux.

Использование командлетов позволяет:

  • работать с файловой системой и реестром Windows,
  • изменять настройки операционной системы,
  • управлять службами и процессами,
  • устанавливать программы,
  • управлять установленным ПО,
  • встраивать исполняемые компоненты в программы,
  • создавать сценарии, которые помогут автоматизировать администрирование.
  1. 5.

    Перейдите в меню «Пуск». Правой кнопкой мыши кликните на Windows PowerShell и выберите Запуск от имени администратора:



    установка openssh на windows 5

  2. 6.

    Дайте согласие на запуск программы. Для этого нажмите Да:



    установка openssh на windows 6

  3. 7.

    Введите командлет:

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

    Вы увидите следующее сообщение:



    установка openssh на windows 7

  4. 8.

    Установите OpenSSH с помощью командлета:

    Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

    После установки вы увидите сообщение. Если для параметра «RestartNeeded» указан статус «True», перезагрузите компьютер.



    установка openssh на windows 8

Готово, вы установили OpenSSH на Windows.

Настройка Open SSH на Windows 10

  1. 1.

    В меню «Пуск» и кликните на Windows PowerShell:



    настройка openssh на windows 1

  2. 2.

    Введите командлет:

    В выводе отобразится справочная информация о командлетах:



    настройка openssh на windows 2

  3. 3.

    Если вам нужно подключиться к серверу по SSH, выполните командлет:

    Где:

    • username — имя пользователя SSH,
    • host — имя удаленного сервера или его IP-адрес.

    Например, так выглядит командлет для подключения к хостингу Рег.ру:

    ssh u1234567@123.123.123.123

Готово, теперь вы можете как открыть доступ по SSH, так и внести дополнительные настройки на сервере.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊


 👍

Как вы, возможно, уже знаете, Windows 10 включает встроенное программное обеспечение SSH – как клиент, так и сервер! В этой статье мы увидим, как включить SSH-сервер.

Примечание. Приложение OpenSSH Server позволит вам установить соединение с вашим компьютером, используя протокол SSH. Это не позволит вам получить доступ к другим компьютерам в вашей сети. Чтобы подключиться к другим компьютерам, вы должны установить клиент OpenSSH.

В Windows 10 Microsoft наконец-то прислушалась к своим пользователям после того, как они годами запрашивали SSH-клиент и сервер. За счет включения реализации OpenSSH ценность ОС увеличивается.

На момент написания этой статьи программное обеспечение OpenSSH, включенное в Windows 10, находится на стадии бета-тестирования. Это означает, что у него могут быть проблемы со стабильностью.

Предоставленный SSH-сервер похож на приложение Linux. На первый взгляд кажется, что он поддерживает те же функции, что и его аналог * NIX. Это консольное приложение, но оно работает как служба Windows.

Давайте посмотрим, как включить сервер OpenSSH в Windows 10.

Содержание

  1. Включение сервера OpenSSH в Windows 10
  2. Как запустить сервер OpenSSH в Windows 10
  3. Подключение к серверу SSH в Windows 10

Включение сервера OpenSSH в Windows 10

  1. Откройте приложение «Настройки» и выберите «Приложения» -> «Приложения и функции».
  2. Справа нажмите «Управление дополнительными функциями».
  3. На следующей странице нажмите кнопку Добавить функцию .
  4. В списке функций выберите Сервер OpenSSH и нажмите на Кнопка Установить .
  5. Перезагрузите Windows 10.

Это установит программное обеспечение OpenSSH Server в Windows 10.

Его двоичные файлы находятся в папке c: windows system32 Openssh . Помимо клиентских приложений SSH, в папке находятся следующие серверные инструменты:

  • sftp-server.exe
  • ssh-agent.exe
  • ssh-keygen.exe
  • sshd.exe
  • и файл конфигурации “sshd_config”.

Сервер SSH настроен для работы как служба.

На момент написания этой статьи он не запускался автоматически. Вам нужно настроить его вручную.

Как запустить сервер OpenSSH в Windows 10

  1. Дважды щелкните sshd , чтобы открыть его свойства.
  2. На вкладке «Вход в систему» ​​просмотрите учетную запись пользователя, которая используется сервером sshd. В моем случае это NT Service sshd .
  3. Теперь откройте командную строку с повышенными привилегиями.
  4. Перейдите в каталог c: windows system32 Openssh с помощью команды cd c: windows system32 Openssh .
  5. Здесь запустите команду ssh-keygen -A , чтобы сгенерировать ключи безопасности для сервера sshd.
  6. Теперь в командной строке с повышенными привилегиями введите explorer.exe. , чтобы запустить проводник в папке OpenSSH.
  7. Обновление : Microsoft опубликовала учебник , который упрощает процесс правильного назначения.
    Откройте PowerShell от имени администратора и выполните следующие команды:
     Install-Module -Force OpenSSHUtilsRepair-SshdHostKeyPermission -FilePath C:  Windows  System32  OpenSSH  ssh_host_ed25519_key 

    Вот и все! Все необходимые разрешения установлены.

  8. В качестве альтернативы вы можете выполнить следующие действия.
    Щелкните правой кнопкой мыши ssh_host_ed25519_key и измените его владельца на пользователя службы sshd, например, NT Service sshd .
  9. Нажмите« Добавить »и добавьте разрешение« Чтение »для пользователя« NT Service sshd ». Теперь удалите все другие разрешения, чтобы получить что-то вроде этого: Нажмите” Применить ” d подтвердите операцию.
  10. Наконец, откройте службы (нажмите клавиши Win + R и введите services.msc в поле «Выполнить») и запустите службу sshd. Он должен запуститься:
  11. Разрешить порт SSH в брандмауэре Windows. По умолчанию сервер использует порт 22. Запустите эту команду в командной строке с повышенными привилегиями: netsh advfirewall firewall add rule name = "SSHD Port" dir = in action = allow protocol = TCP localport = 22 Microsoft предоставила следующую альтернативную команду для PowerShell:
    New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Service sshd -Enabled True -Direction Inbound -Protocol TCP -Action Allow -Profile Domain
  12. Наконец, установите пароль для своей учетной записи, если вы не у меня его нет.

Теперь вы можете попробовать это в действии.

Подключение к серверу SSH в Windows 10

Откройте свой ssh-клиент. Вы можете запустить его на том же компьютере, например используя встроенный клиент OpenSSH или запустите его с другого компьютера в вашей сети.

В общем случае синтаксис для консольного клиента OpenSSH выглядит следующим образом:

 ssh username @ host -p port 

В моем случае команда выглядит следующим образом:

 ssh winaero@192.168.2.96 

Где winaero – мое имя пользователя Windows, а 192.168.2.96 – IP-адрес моего ПК с Windows 10. Я подключусь к нему с другого ПК, на котором запущен Arch Linux.

Наконец, вы в!

Сервер выполняет классические консольные команды Windows, например подробнее, введите, вер, скопируйте.

Но я не могу запустить FAR Manager. Он выглядит черно-белым и сломанным:

Еще одно интересное наблюдение: вы можете запускать приложения с графическим интерфейсом, такие как Explorer. Если вы вошли в ту же учетную запись пользователя, которую используете для SSH, они запустятся на рабочем столе. См .:

Ну, встроенный SSH-сервер определенно интересная вещь для игры. Он позволяет вам управлять машиной Windows без установки таких инструментов, как rdesktop, на вашем компьютере Linux или даже изменения настроек Windows с компьютера Linux, на котором не установлен X-сервер.

На момент написания этой статьи встроенный -in SSH-сервер в Windows 10 находится на стадии бета-тестирования, поэтому он должен стать более интересным и стать полезной функцией в ближайшем будущем.

  • Не работает wifi на ноутбуке windows 10 код 10
  • Не работает smb windows 10
  • Не работает shift ctrl windows
  • Не работает wifi на ноутбуке windows 10 asus
  • Не работает skype для windows 7