Установка openssh windows 10


Как установить и настроить SSH – Помощь

В этой статье мы расскажем, как работает 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 20.04

В качестве примера мы рассмотрим установку Ubuntu 20.04. Настройка SSH Ubuntu Server 18.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:

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

    Настройка SSH Linux

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

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

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

  1. 1.

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

  2. 2.

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

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

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

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

  4. 4.

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

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

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

  1. 1.

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

  2. 2.

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

    Настройка SSH

  3. 3.

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

  4. 4.

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

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

Что такое PowerShell

PowerShell — это утилита командной строки в ОС Windows. Она выпущена в составе Windows 7, Windows 8, Windows 8.1 и Windows 10 как неотъемлемая часть системы. Управлять ОС через PowerShell можно при помощи командлетов — специальных команд. Командлеты работают аналогично с командами в терминале Linux.

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

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

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

  2. 6.

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

  3. 7.

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

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

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

  4. 8.

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

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

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

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

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

  1. 1.

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

  2. 2.

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

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

  3. 3.

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

    Где:

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

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

    ssh [email protected]

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

Была ли эта статья полезной?

Да Нет

Пользователи, считающие этот материал полезным: 1 из 2

Установка OpenSSH | Microsoft Docs

  • Статья
  • Чтение занимает 2 мин
Были ли сведения на этой странице полезными?

Оцените свои впечатления

Да Нет

Хотите оставить дополнительный отзыв?

Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку "Отправить", вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.

Отправить

В этой статье

Область применения Windows Server 2019, Windows 10: Windows Server 2022,

OpenSSH — это средство подключения для удаленного входа, использующее протокол SSH. Оно шифрует весь трафик между клиентом и сервером для предотвращения перехвата информации, перехвата подключения и других атак.

OpenSSH можно использовать для подключения устройств с Windows 10 (версия 1809 и более поздние) или Windows Server 2019 с установленным клиентом OpenSSH к таким устройствам с установленным сервером OpenSSH.

Важно!

Если вы скачали OpenSSH из репозитория GitHub по адресу PowerShell/openssh-portable, следуйте приведенным в репозитории инструкциям, а не инструкциям в этой статье.

Установка OpenSSH с помощью приложения "Параметры" в Windows

Оба компонента OpenSSH можно установить с помощью "Параметров" Windows на устройствах Windows Server 2019 и Windows 10.

Чтобы установить компоненты OpenSSH, сделайте следующее:

  1. Откройте приложение Параметры, выберите элементы Приложения > Приложения и возможности, щелкните Дополнительные возможности.

  2. Просмотрите этот список и определите, установлено ли средство OpenSSH. Если нет, выберите пункт Добавить компонент в верхней части страницы и сделайте следующее:

    • Найдите Клиент OpenSSH и щелкните Установить.
    • Найдите Сервер OpenSSH и щелкните Установить.

После завершения установки вернитесь в раздел Приложения > Приложения и возможности и Дополнительные возможности, где теперь должно появиться средство OpenSSH.

Примечание

При установке серверного компонента OpenSSH будет создано и включено правило брандмауэра с именем OpenSSH-Server-In-TCP. Правило разрешает входящий трафик SSH через порт 22. Если это правило не включено и этот порт не открыт, подключения будут отклонены или сброшены.

Установка OpenSSH с помощью PowerShell

Чтобы установить OpenSSH с помощью PowerShell, запустите PowerShell от имени администратора. Для проверки доступности OpenSSH выполните следующий командлет:

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*' 

Если ни один из них не установлен, должно отобразиться следующее:

Name : OpenSSH.Client~~~~0.0.1.0 State : NotPresent Name : OpenSSH.Server~~~~0.0.1.0 State : NotPresent 

Затем установите нужный серверный или клиентский компонент:

# Install the OpenSSH Client Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 # Install the OpenSSH Server Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 

Оба командлета должны вернуть такие выходные данные:

Path : Online : True RestartNeeded : False 

Запуск и настройка OpenSSH Server

Чтобы запустить и настроить OpenSSH Server для первого использования, откройте PowerShell от имени администратора и выполните следующие команды для запуска sshd service:

# Start the sshd service Start-Service sshd # OPTIONAL but recommended: Set-Service -Name sshd -StartupType 'Automatic' # Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) { Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..." New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22 } else { Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists." } 

Подключение к OpenSSH Server

После установки вы можете подключиться к серверу OpenSSH с устройства Windows 10 или Windows Server 2019, на котором установлен клиент OpenSSH, с помощью PowerShell, как показано ниже. Обязательно запустите PowerShell от имени администратора:

ssh username@servername 

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

The authenticity of host 'servername (10.00.00.001)' can't be established. ECDSA key fingerprint is SHA256:(<a large string>). Are you sure you want to continue connecting (yes/no)? 

Если выбрать Да, этот сервер будет добавлен в список известных узлов SSH в клиенте Windows.

На этом этапе нужно ввести пароль. В целях безопасности пароль не будет отображаться по мере ввода.

После подключения вы увидите командную оболочку Windows:

domain\username@SERVERNAME C:\Users\username> 

Удаление OpenSSH с помощью приложения "Параметры" в Windows

Чтобы удалить OpenSSH с помощью приложения "Параметры" в Windows, сделайте следующее:

  1. Откройте приложение Параметры, а затем выберите Приложения > Приложения и возможности.
  2. Откройте страницу Дополнительные возможности.
  3. В списке выберите компонент Клиент OpenSSH или Сервер OpenSSH.
  4. Выберите Удалить.

Удаление OpenSSH с помощью PowerShell

Чтобы удалить компоненты OpenSSH с помощью PowerShell, выполните следующие команды:

# Uninstall the OpenSSH Client Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 # Uninstall the OpenSSH Server Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 

Если служба использовалась во время удаления, может потребоваться перезагрузка Windows.

Включить OpenSSH Client в Windows 10. Использование OpenSSH

С каждым новым выпуском Windows 10 все больше и больше полезных инструментов переносится из Linux. Во-первых, в Windows появилась подсистема для Linux, а теперь еще добавили встроенный клиент и сервер OpenSSH, который использует версию 7.5 OpenSSH.

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

Рекомендую: Лучшие инструменты системного администратора

Как включить OpenSSH Client в Windows 10

Установка OpenSSH клиента проста, но потребует перезагрузки компьютера.

  1. Зайдите в «Параметры» —> «Приложения».
  2. В поле приложение и возможности нажмите на пункте «Управление дополнительными компонентами». Управление дополнительными функциями
  3. Теперь нажмите кнопку «Добавить компонент». Это откроет список дополнительных функций, которые могут быть установлены. Большинство из них — это пакеты шрифтов, но если вы прокрутите вниз, увидите OpenSSH Client (beta) и OpenSSH Server (beta). Установка клиентской бета-версии OpenSSH для Windows 10
  4. Чтобы установить SSH-клиент или сервер, просто выберите его и нажмите кнопку «Установить». Как только вы нажмете кнопку «Установить», вы увидите, что компонент исчезнет из списка. Это нормально и нечего беспокоиться. Просто нажмите на стрелку назад в левом верхнем углу окна, и вы вернетесь к списку установленных функций.
  5. Вы обнаружите, что установлен клиент OpenSSH.
  6. Теперь вы можете закрыть все окна и перезагрузить компьютер. Для завершения установки важно перезагрузить компьютер. В противном случае Windows не найдет команду SSH при ее использовании в командной строке.

Как использовать OpenSSH Client в Windows 10

Теперь, когда ваш компьютер перезагружен, просто откройте командную строку, введите ssh и нажмите enter. Если клиент OpenSSH был установлен правильно, вы увидите файл справки, в котором будут отображаться все аргументы командной строки.

Для получения информации о том, что означает каждый аргумент командной строки, вы можете зайти на страницу руководства для SSH.

Список аргументов:

usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]

           [-D [bind_address:]port] [-E log_file] [-e escape_char]

           [-F configfile] [-I pkcs11] [-i identity_file]

           [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec]

           [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]

           [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]

           [user@]hostname [command]

Для подключения к удаленному серверу вы просто используете командную строку ssh [user] @ [host]. Например, чтобы подключиться к серверу Ubuntu необходимо набрать ssh spysoftnet@ub-test.

Если вы впервые подключаетесь к определенному SSH-серверу, то необходимо подтвердить и сохранить ключ локально. Если вы наберете yes, ключ этого хоста будет сохранен в файле% UserProfile% \. Ssh \ known_hosts, и в следующий раз вам уже не потребуется это делать для этого сервера.

Затем вам будет предложено ввести пароль для учетной записи пользователя на удаленном сервере.

Вход через SSH из Windows 10

Если вы введете правильный пароль, вы будете зарегистрированы на удаленном сервере.

Вход в SSH-сервер

По умолчанию команда пытается подключиться к SSH-серверу, работающему на порту 22, который является портом по умолчанию. Однако вам может потребоваться подключение к серверу, работающему на другом порту.

Изменить порт можно с помощью ключа -p. Если сервер работает на порту 7777, вы должны запустить:

ssh spysoftnet@ub-test -p 7777

Когда вы закончите использовать удаленный сервер и захотите завершить сеанс SSH, просто введите exit и нажмите enter. SSH-клиент отобразит «Connection to [server] closed.». После чего можно закрыть командную строку.

Вас может заинтересовать: Обзор защищенных Linux-дистрибутивов

Настройка OpenSSH сервера на Windows Server 2019

Прежде всего, вы можете спросить, зачем нам вообще нужен SSH-сервер на Windows-сервере? В среде Windows SSH может показаться не очень полезным. В конце концов, у нас есть RDP и PowerShell Remoting с WinRM, которые уже обеспечивают мощные возможности удаленного управления. Тем не менее, SSH в Windows определенно имеет свои преимущества. Среди них можно выделить такие вещи, как:

  • Простое подключение и управление Windows-серверами из Linux или MacOS с помощью встроенных инструментов.
  • Подключение из систем Windows к серверам Linux — это простое решение с интегрированным SSH-клиентом. Есть много администраторов Linux, которые должны управлять серверами на работе с помощью ОС Windows, и всегда должны устанавливать некоторые дополнительные инструменты, такие как PuTTY или WinSCP. Теперь они могут использовать знакомые команды SSH прямо из командной строки Windows.
  • Используются те же инструменты удаленного управления для серверов Linux и Windows (SSH, SCP, аутентификация с открытым ключом и т. д.).
  • Кроссплатформенный PowerShell Remoting. PowerShell Core использует SSH для включения удаленного сеанса PowerShell в Windows, MacOS и Linux. В отличие от WinRM PowerShell Remoting — Windows PowerShell работает только на Windows.
  • Вместе с подсистемой Windows для Linux вы можете получить Linux-подобные сеансы SSH с Bash и обычные инструменты Linux также на сервере Windows, который позволяет администраторам Linux использовать свои знания для управления системами Windows.
  • И наоборот: администраторы Windows могут использовать PowerShell для управления сервером Linux, если на нем будет присутствовать соответствующий shell от Microsoft.
  • Просто другой вариант для удаленного управления, который дает еще большую гибкость.

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

Открываем SettingsApps & featuresManage optional features:

Нажимаем Add a feature, ищем OpenSSH ServerInstall:

На предыдущем экране дожидаемся окончания процесса инсталляции. OpenSSH сервер можем считать установленным.

Обращаем внимание, что установка этим методом автоматически создаст правило Windows Firewall, с названием «OpenSSH-Server-In-TCP», открывающее 22 порт для входящих подключений.

Используя PowerShell:

Проверим, присутствует ли на нашей системе встроенный OpenSSH:

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

В ответ должны получить:

Name : OpenSSH.Client~~~~0.0.1.0
State : NotPresent #или Install, если клиент уже установлен
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

Устанавливаем клиент, если он не установлен:

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

Для установки сервера вводим:

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

В обоих случаях вывод должен быть следующим:

Path :
Online : True
RestartNeeded : False

Первичная конфигурация SSH-сервера

По умолчанию при подключении к OpenSSH-серверу используется командная строка Windows. Вы можете использовать практически любую оболочку на вашем компьютере с Windows через SSH-соединение. Даже возможно использовать Bash, когда подсистема Windows для Linux (WSL) также установлена на целевой машине. Также возможно изменение оболочки по умолчанию на SSH-сервере на нечто иное, чем командная оболочка. Для этого ключ реестра «DefaultShell» необходимо изменить.

Сделать это можно как через редактор реестра regedit.exe, открыв в нем следующий путь: HKEY_LOCAL_MACHINESOFTWAREOpenSSH и изменив в нем параметр DefaultShell, указав в нем полный путь до исполняемого файла необходимой командной строки, например:

C:WindowsSystem32WindowsPowerShellv1.0powershell.exe

Тоже самое можно сделать используя PowerShell:

New-ItemProperty -Path "HKLM:SOFTWAREOpenSSH" -Name DefaultShell -Value "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" -PropertyType String -Force

Проверим настройки Windows Firewall, используя для этого PowerShell:

Get-NetFirewallRule -Name *ssh*

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

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

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

После установки функции SSH-сервера нам остается только его запустить:

Start-Service sshd

Опционально можно установить для службы sshd автоматический запуск:

Set-Service -Name sshd -StartupType 'Automatic'

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

Теперь мы готовы к работе и можем подключиться через установленное приложение к нашему хосту. Это можно осуществить либо с Windows 10, компьютера с Linux, с putty.exe на более старой машине с Windows, либо с Bash в настольной операционной системе от Microsoft. Все, что вам нужно, это найти какой-либо SSH-клиент, ввести в него имя пользователя, имя вашего сервера или IP-адрес и подключиться.

Для SSH-клиента в PowerShell синтаксис будет таким:

Ssh username@servername

При первом подключении с неизвестного хоста будет показано следующее сообщение:

Ответив на него yes, хост подключения будет добавлен в список известных хостов сервера. После чего необходимо ввести пароль пользователя (по соображениям безопасности вводимые символы отображаться не будут). После успешного подключения отобразится интерфейс используемой командной строки:

Копирование файлов

Также, как с сервером OpenSSH в любой системе * nix, вы можете использовать SCP для копирования файлов на сервер или с сервера.
Например, администратор Linux может быстро получить файл журнала с сервера Windows с помощью той же команды, что и для сервера Linux.

scp username@servername:C:/inetpub/logs/LogFiles/W3SVC1/u_ex191017.log u_ex191017.log

Когда вы подключаетесь из Bash/*nix к машине с Windows, нужно помнить, что пути Windows также должны указываться с обычными косыми чертами Unix вместо обратных косых черт. Например, C:/Windows вместо C:Windows.

sshd_config

Аналогично операционным системам семейства Linux, OpenSSH Server в Windows имеет в своем составе особый файл, где хранятся все параметры для выполнения более подробных настроек. Например,  для ограничения входа.

По умолчанию файл конфигурации находится в «%programdata%sshsshd_config».
Самые различные настройки, применимые к этому файлу можно найти на сайте https://man.openbsd.org/sshd_config.

Кроме того, у Microsoft есть документация для специфичных настроек Windows.

Больше информации

Дополнительную информацию об OpenSSH в Windows можно найти на сайте docs.microsoft.com или в проекте GitHub разветвления OpenSSH от Microsoft.

Средняя оценка: 5.0 Оценили: 2

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99 700 300 ООО «ИТГЛОБАЛКОМ ЛАБС»

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99 700 300 ООО «ИТГЛОБАЛКОМ ЛАБС» 700 300

Windows 10: Настройка OpenSSH – DenTNT.trmw.ru

В прошлый раз я устранял ошибки при подключении к серверу OpenSSH на Windows 10. Там же я расписал шаги по установке этого компонента (OpenSSH) на Windows 10. Но это была дефолтовая установка. Сейчас я решил её допилить, чтобы была хоть какая-то защита.

Настройка Firewall на сервере

1. Откроем настройки брандмауэра (не нравится мне это слово, лучше всё же firewall).
▶ ▶ ▶ ▶ ▶ ▶


2. В диалоге выбора IP-адресов переключимся на третий вариант (Predefined set of computers) и выберем Local subnet:

Можно конечно ограничиться вообще только одним IP-адресом компьютера админа, тогда все остальные будут получать ошибку:
PS C:\Windows\System32\OpenSSH> .\ssh 192.168.1.4 -p 22
 ssh: connect to host 192.168.1.4 port 22: Connection timed out

 

Создание ключей пользователя

Мы находимся на компьютере с которого будем логинится на сервер OpenSSH. Здесь нам нужно сгенерировать аутентификационные ключи, поэтому переходим к следующему шагу.
3. Переходим в папку OpenSSH:

cd C:\Windows\System32\OpenSSH\

4. Запускаем утилиту для генерации ключей:

.\ssh-keygen.exe

Вывод будет таким:

PS C:\Windows\System32\OpenSSH> .\ssh-keygen.exe
 Generating public/private rsa key pair.
 Enter file in which to save the key (C:\Users\Admin/.ssh/id_rsa):

5. Мы ничего вводить не будем, а просто нажмём клавишу Enter , т.о. ключи сохранятся в папку по умолчанию.

Если ключи в этой папке уже есть, будет предложено их перезаписать.

 

6. Введём кодовую фразу (passphrase) для шифрования файлов закрытого ключа.
Будет создана пара ключей — публичный и приватный:

PS C:\Windows\System32\OpenSSH> .\ssh-keygen.exe
 Generating public/private rsa key pair.
 Enter file in which to save the key (C:\Users\Admin/.ssh/id_rsa):
 C:\Users\Admin/.ssh/id_rsa already exists.
 Overwrite (y/n)? y
 Enter passphrase (empty for no passphrase):
 Enter same passphrase again:
 Your identification has been saved in C:\Users\Admin/.ssh/id_rsa.
 Your public key has been saved in C:\Users\Admin/.ssh/id_rsa.pub.
 The key fingerprint is:
 SHA256:3mmo0ncL25SQ+g5iqIQDFTNr6LfQGplb5auMJHsrJa8 Admin@Notebook
 The key's randomart image is:
 +---[RSA 3072]----+
 | + |
 | . = |
 |. + . |
 |.o+ o . |
 |.* + . S |
 |+ O.. .o + o |
 |+O..ooo + * |
 |=+=.o..+.*. |
 |E=.+ ..o+.o. |
 +----[SHA256]-----+

После генерации мы получили пару ключей id_rsa (закрытый) и id_rsa.pub (открытый), они расположены в папке C:\Users\Admin\.ssh на локальном компьютере.

 

Безопасное хранение закрытых ключей

Для сохранения закрытых ключей в Windows реализована специальная служба

 

7. Запустим агент SSH (на клиентском компе в консоли PowerShell под админом):

Start-Service ssh-agent
В случае отключенной службы мы получим ошибку:
Start-Service : Service 'OpenSSH Authentication Agent (ssh-agent)' cannot be started due to the following error:
 Cannot start service ssh-agent on computer '.'.
 At line:1 char:1
 + Start-Service ssh-agent
 + ~~~~~~~~~~~~~~~~~~~~~~~
 + CategoryInfo : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service],
 ServiceCommandException
 + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand

В этом случае нужно выставить режим запуска службы на ручной:

Get-Service -Name ssh-agent | Set-Service -StartupType Manual

 

8. Выполним проверку состояния службы:

Get-Service ssh-agent

Вывод должен быть таким:

PS C:\Windows\System32\OpenSSH> Get-Service ssh-agent
 
 Status Name DisplayName
 ------ ---- -----------
 Running ssh-agent OpenSSH Authentication Agent
 

9. Загрузим наши ключи в хранилище ssh-agent:

ssh-add.exe C:\Users\Admin\.ssh\id_rsa
Если воспользоваться командой из примера, то получим ошибку:
C:\Windows\System32\OpenSSH> ssh-add ~\.ssh\id_rsa
 ~\.ssh\id_rsa: No such file or directory

Так что придётся указывать полный путь. Сейчас нет времени разбираться, почему ssh-add не понимает ~

 

10. Мы успешно добавили закрытый ключ в ssh-agent, так что теперь файл нужно удалить (при необходимости можно сделать его резервную копию):

del C:\Users\Admin\.ssh\id_rsa

Использование открытых ключей

Как вы помните, у нас ещё остался файл открытого ключа: id_rsa.pub. Его мы скопируем на сервер SSH в папку C:\Users\Admin\.ssh\. Сделать это можно либо через программу удалённого управления типа AnyDesk, либо с помощью SCP:

scp -P 22 C:\Users\Admin\.ssh\id_rsa.pub [email protected]:C:\Users\Admin\.ssh\authorized_keys

Вывод на экран должен быть примерно такой:

[\\Admin@Clientcomp] C:\Windows\System32\OpenSSH> scp -P 22 C:\Users\Admin\.ssh\id_rsa.pub [email protected]:C:\Users\Admin\.ssh\authorized_keys
 id_rsa.pub 100% 568 92.5KB/s 00:00

Если файл копировали через AnyDesk, то после того, как файл скопировали, его нужно переименовать на authorized_keys. Можно сразу переименовать, а потом скопировать — здесь я написал так, чтобы не было путаницы с именами.

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

[\\CLIENTCOMP] C:\Windows\system32\OpenSSH> .\ssh 192.168.1.4 -p 22
The authenticity of host '[192.168.1.4]:22 ([192.168.1.4]:22)' can't be established.
 ECDSA key fingerprint is SHA256:EJWy+91UYxn5ppBlEILm2XNK9WXx6dgAGJPxRr/oPCY.
 Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
 Warning: Permanently added '[192.168.1.4]:22' (ECDSA) to the list of known hosts.

После этого мы уже будем залогинены на сервере (при этом IP нашего сервера будет добавлен в список в файле known_hosts).

Файл конфигурации сервера OpenSSH

Настройки сервера OpenSSH в Windows хранятся в следующем файле:
«C:\ProgramData\ssh\sshd_config»
Здесь мы разрешим авторизацию по ключам и запретим авторизацию по паролю:

PubkeyAuthentication yes
 PasswordAuthentication no
 PermitEmptyPasswords no

Можно сменить порт с дефолтового 22 на какой-то другой:

Port 2232

Хотел написать про отдельную настройку в файле «C:\ProgramData\ssh\sshd_config». Речь идёт о «Match Group administrators». В текущей версии OpenSSH (OpenSSH.Server~~~~0.0.1.0 и OpenSSH.Client~~~~0.0.1.0) коннект под Админом работает без неё, но вдруг…

Опция AuthorizedKeysFile

Если наш пользователь входит в группу администраторов, то для них нужен отдельный файл ключей (актуально для Windows редакции 1809 и выше):
C:\ProgramData\ssh\administrators_authorized_keys

Обратите внимание, что если пользователь входит в группу администраторов, используется %programdata%/ssh/administrators_authorized_keys.
MSDN

Но, как я уже писал выше, у меня работает БЕЗ этой настройки! Возможно это имеет отношение только к работе в домене.

 

Если админ единственный, то можно изменить путь к его папке профиля. Для этого нужно снять комментарий и изменить путь в следующем конфигурационном файле:
«C:\ProgramData\ssh\sshd_config»

В самом конце находятся строчки:

Match Group administrators
 AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

Это как раз наш файл:
C:\ProgramData\ssh\administrators_authorized_keys

Здесь можно либо указать путь к нашему файлу ключей, либо наш файл переписать в эту папку с новым именем.

Если оставляете открытый ключ в файле administrators_authorized_keys, то на него нужно оставить доступ только группе Администраторы и SYSTEM, а группу «Авторизованные пользователи» убрать из доступа.

 

После этого нужно перезапустить службу OpenSSH SSH Server, либо через PowerShell (всё это на СЕРВЕРЕ!!!)

restart-service sshd

Решение проблем

Режим отладки на сервере включается в консоли PowerShell:

sshd.exe -d

Аналогично можно включить режим отладки на клиенте:

.\ssh 192.168.1.4 -p 22 -v

Лог будет достаточно длинный, но нам важны строчки об успешном коннекте:

debug1: Authentications that can continue: publickey,keyboard-interactive
 debug1: Next authentication method: publickey
 debug1: Offering public key: C:\\Users\\Admin/.ssh/id_rsa RSA SHA256:lYYjSR1WExXA8BhOPgZj+3nUPTRZtF4d92fsEWqc+BU agent
 debug1: Server accepts key: C:\\Users\\Admin/.ssh/id_rsa RSA SHA256:lYYjSR1WExXA8BhOPgZj+3nUPTRZtF4d92fsEWqc+BU agent
 debug1: Authentication succeeded (publickey).
 Authenticated to 192.168.1.4 ([192.168.1.4]:22).
 debug1: channel 0: new [client-session]
 debug1: Requesting [email protected]
 debug1: Entering interactive session.
 debug1: pledge: network
 debug1: ENABLE_VIRTUAL_TERMINAL_INPUT is supported. Reading the VTSequence from console
 debug1: ENABLE_VIRTUAL_TERMINAL_PROCESSING is supported. Console supports the ansi parsing
 debug1: client_input_global_request: rtype [email protected] want_reply 0

Удалить ранее сохранённые открытые ключи из хранилища OpenSSH Authentication Agent:

.\ssh-add.exe -D

Как подключиться по SSH ключу к Linux серверу?

В этом руководстве будет рассмотрен процесс подключения к VPS под управлением операционной системы семейства Linux при помощи SSH-key.

Что это такое

Использование SSH-ключей позволяет осуществить подсоединение без использования пароля. При этом такой тип авторизации гораздо безопаснее, чем вход по паролю. Пароль может быть взломан, а ключи практически не поддаются расшифровке. Secure SHell-ключ состоит из открытого и закрытого ключей, которые представляют из себя длинные последовательности символов. Вы можете поместить открытый key на компьютер, а затем разблокировать его, подключившись к нему с клиентом, у которого есть закрытый key. Когда они совпадают, вы соединитесь с виртуальным сервером (no password). Также можно еще повысить уровень безопасности, если использовать кодовое выражение для защиты закрытого ключа.

Примечание:
- порт Secure SHell по умолчанию - 22;
- по протоколу SSH можно удаленно управлять файлами благодаря SSHFS (Secure SHell FileSystem).

Создание сервера

Если при создании машины вы выбрали подключение с помощью Secure SHell-ключа, то вам необходимо его сгенерировать или добавить существующий. При создании VPS ключ будет автоматически на него добавлен.

Подключение к серверу с компьютера с ОС семейства Линукс

Вы можете соединиться с VPS командой ssh без ввода пароля. Если вы задавали кодовую фразу, вас попросят ее ввести: ssh user@<IP-address>

Примечание: существуют специальные программы который избавляют пользователей от неудобства каждый раз вводить ключевое выражение, например можно воспользоваться ssh-agent или ssh-add. Подробнее об этом можно почитать здесь.

Подключение к VPS с компьютера с ОС семейства Windows

Примечание: Putty - программа для подключения к удаленным машинам по протоколам SSH, TCP, Rlogin, Telnet. В командной строке Windows PowerShell можно использовать утилиту plink.exe входящую в набор.

Для подсоединения необходимо настроить Putty. Открываем приложение, выбираем Default Settings и нажимаем Load.

В меню слева переходим Connection -> SSH -> Auth, и в поле прописываем путь до сгенерированного приватного ключа.

Далее возвращаемся на вкладку Session и сохраняем настройки по-умолчанию кнопкой Save.

После соединения введите логин и кодовую фразу, если требуется.

 

P. S. Другие инструкции:


Ознакомиться с другими инструкциями вы можете на нашем сайте. А чтобы попробовать услугу — кликните на кнопку ниже.

Поделиться в соцсетях:

Спасибо за Вашу оценку! К сожалению, проголосовать не получилось. Попробуйте позже

ru

191014 Санкт-Петербург ул. Кирочная, 9

+7(812)313-88-33 235 70 1cloud ltd 2021-07-28 Доступ к Linux-серверам через SSH-ключи

191014 Санкт-Петербург ул. Кирочная, 9

+7(812)313-88-33 235 70 1cloud ltd 2021-07-28 Доступ к Linux-серверам через SSH-ключи 600 auto

Windows 10 получает встроенную реализацию OpenSSH

Встроенная поддержка сред и инструментов Linux в Windows 10 на какое-то время перестала удивлять, когда Microsoft представила их, в том числе для Bash и дистрибутивов SUSE Linux, Fedora и Ubuntu. Сейчас создатели проекта Dziesiątka собираются реализовать еще одну ориентированную на разработчиков функциональность — клиент OpenSSH.

SSH (Secure Shell) — это безопасный протокол, который позволяет пользователям удаленно входить в систему на другом компьютере.Он предоставляет множество альтернативных вариантов аутентификации и защищает обмен данными с помощью надежного алгоритма шифрования. В чем-то SSH похож на FTP, но из-за уровня безопасности первый особенно ценится разработчиками.

До сих пор пользователям Windows приходилось полагаться на внешние клиенты SSH, такие как PuTTY , но с тех пор, как Microsoft добавила поддержку клиента OpenSSH , разработчики получают собственный доступ.Функцию можно активировать в Fall Creators Update или выше. Чтобы установить OpenSSH, перейдите в приложение «Настройки »> «Приложения»> «Приложения и функции»> «Управление дополнительными функциями»> «Добавить функцию». Сервер OpenSSH (бета-версия) и клиент OpenSSH (бета-версия) должны появиться в списке дополнительных компонентов, которые необходимо установить. При нажатии на них появится кнопка Установить , на которую следует нажать.

Хотя в руководстве от ServeTheHomeVideo установка и запуск OpenSSH через командную строку работает, в нашем случае (польскоязычная версия Windows 10) новые дополнительные функции для установки еще не появились.

Вам нравится эта статья? Поделись с другими!

.

Установка и настройка SFTP (SSH FTP) сервера в Windows на базе OpenSSH (Windows 10)

Используя официальный пакет OpenSSH для Windows, вы можете легко организовать безопасный обмен файлами между клиентом и серверами Windows, используя безопасный протокол передачи файлов SFTP (Securely FTP ) . В этой статье мы покажем вам, как использовать Win32-OpenSSH для установки SFTP-сервера в Windows 10 или Windows Server 2016/2012R2.

Content

  • Функции SFTP
  • Реализация SFTP в Windows Systems
  • Установка Win32 OpenSSH на Windows 10 1803 + / Windows Server 2019
  • Установка Win32 OpenSSH на Windows Server 2016/2012 R2
  • Тестирование SFTP Соединение с использованием WinSCP
  • Удалить Win32 OpenSSH Service

SFTP Features

Protocol SFTP ( Secure File Transfer Protocol , Secure FTP или SSH FTP ) является расширением протокола SSH, который является стандартным в мире UNIX/Linux.Хотя с точки зрения пользователя он похож на FTP, на самом деле это совершенно другой протокол, не имеющий ничего общего с FTP. Данные между клиентом и сервером передаются через порт 22 по туннелю SSH.

Ключевые преимущества SFTP:

  • Файлы и команды передаются в безопасном сеансе SSH;
  • Для передачи файлов и команд используется одно соединение;
  • Поддержка символических ссылок, прерывания, возобновления, передачи, удаления файлов и т. д.;
  • Как правило, на каналах с медленным или прерывистым FTP соединение по SFTP более надежное и быстрое;
  • Аутентификация с ключами SSH.
Не путайте SFTP и FTPS. FTPS — это в основном обычный FTP с SSL-сертификатом, а SFTP — это FTP-передача данных и команд внутри SSH.

Внедрение SFTP в системах Windows

Исторически в операционных системах Windows не было встроенных инструментов для организации защищенного SFTP-сервера.Обычно для этих целей использовался OpenSSH или коммерческие решения, такие как Core FTP, FileZilla, CYGWIN, OpenSSH, Shell Shell, IPSwitch и т. д. Однако несколько лет назад Microsoft выпустила свою версию порта OpenSSH для win32. Этот проект называется Win 32-openssh .

Рассмотрите возможность настройки SFTP-сервера в Windows 10 и Windows Server 2016/2012 R2 с помощью пакета Win32-OpenSSH.

Установка Win32 OpenSSH в Windows 10 1803+/Windows Server 2019

В Windows 10, начиная со сборки 1803 и в Windows Server 2019, OpenSSH (как и RSAT) уже включен в операционную систему как Feature on Demand (FoD).

В Windows 10 и Windows Server 2019 вы можете установить сервер OpenSSH с помощью командлета PowerShell:

Add-Windows Capabilities -Online -Name OpenSSH.Server *

Или с помощью DISM:
dism / Online / Add -Capability /CapabilityName:OpenSSH.Server~~.0.0.0.0

Или вы можете установить OpenSSH из графического интерфейса Windows 10 ( Настройки -> Приложения -> Дополнительные функции -> Добавить функцию -> Откройте сервер ssh -> Установите ).

Исполняемые файлы OpenSSH расположены в каталоге:

c:\windows\system32\OpenSSH\

Конфигурационный файл sshd_config находится в каталоге C:\ProgramData\ssh (каталог создается при первом запуске службы началось).

Лог - c:\windows\system32\OpenSSH\logs\sshd.log

Авторизованный файл с ключами и ключи хранятся в %USERPROFILE%\. Сш\.

Узнайте больше об использовании OpenSSH для подключения к Windows 10/Windows Server 2019 через безопасный туннель SSH..

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

В предыдущих версиях Windows 10 и Windows Server 2016/2012 R2 загрузите и установите OpenSSH с GitHub (https://github.com/PowerShell/Win32-OpenSSH/releases) . Нам нужна 64-битная версия Windows: Openssh -Win 64.zip (3,5 Мб).

  1. Распаковать содержимое архива в целевую директорию, например: C:\OpenSSH-Win
  2. Запустить командную строку PowerShell с правами администратора и перейти в директорию OpenSSH: Cd C:\OpenSSH-Win
  3. Добавить путь к каталогу OpenSSH в переменную среды Path;
  4. Установите сервер OpenSSH: .\ install-sshd.ps1 (вы должны увидеть зеленое сообщение «Успешно установлены службы sshd и ssh-agent)»;
  5. Создание ключей SSH для сервера (необходимо для запуска службы sshd): ssh-keygen.exe -A
     ssh-keygen: создание новых ключей хоста: RSA DSA ECDSA ED25519 

    При ошибке

     ssh-keygen: создание новые ключи хоста: RSA Unable to save your public key to __PROGRAMDATA__\ssh/ssh_host_rsa_key.bxKmOcF49P: Нет такого файла или каталога 

    , убедитесь, что каталог %programdata%\ssh создан.

  6. Включите автозапуск для SSHD и запустите его с помощью следующих команд управления PowerShell: Set-Service -Name sshd -StartupType 'Automatic'
    Start-Service sshd
  7. Используйте PowerShell, чтобы открыть входящий трафик на сервер SSH: New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH
  8. Откройте конфигурационный файл "C:\ProgramData\SSH\sshd_config" в любом текстовом редакторе, найдите и проверьте значение директивы Subsystem sftp .Файл должен быть введен здесь. sftp-сервер.exe . Рассмотрим полезные директивы в конфигурационном файле sshd_config:
     AllowGroups corp\admingroup # разрешить доступ к OpenSSH только пользователям данной группы AuthenticationMethods password # включить аутентификацию по паролю (SSH-ключи использовать нельзя) ForceCommand internal-sftp # ChrootDirectory C:\inetpub\ wwwroot\ftpfolder # каталог по умолчанию для SFTP-пользователей 

Тестирование SFTP-соединения с помощью WinSCP

Попробуем подключиться к SSH-серверу, который мы подобрали, по протоколу SFTP.Для этих целей мы используем бесплатный клиент Winscp .

В окне настройки подключения выберите протокол передачи файлов SFTP, укажите имя сервера и реквизиты учетной записи Windows, к которой устанавливается подключение (также можно настроить авторизацию по ключу).При первом подключении окно появится с предупреждением о том, что ключ хоста отсутствует в локальном кеше.

Если все настроено правильно, клиент должен подключиться к SFTP-серверу и просмотреть список файлов в домашнем каталоге пользователя (по умолчанию каталог профиля пользователя).

Используя привычный интерфейс файлового менеджера, вы можете безопасно копировать файлы между сервером и клиентом. Файлы будут загружены с использованием безопасного протокола SFTP.

Удаление службы Win32 OpenSSH

Чтобы правильно удалить службу Win32 OpenSSH из системы:

  1. Откройте консоль администрирования Powershell
  2. Остановите службу SSHD: Sshd Stop-Service 5 Удалить ключи: .\uninstall-sshlsa.ps1
     sshd успешно удален ssh-agent успешно удален 
.

Как установить OpenSSH в Windows 10

В более старых версиях Windows, таких как Windows Vista, 7 и 8/8.1, запустить SSH было непросто. Было много работы по его настройке. Это было верно для Windows 10 вплоть до обновления Creators. Однако обновление Fall Creators — это совсем другая история; теперь вы можете установить OpenSSH в Windows 10 в качестве дополнительной функции. Вы можете установить как клиент OpenSSH, так и сервер OpenSSH.

Установить OpenSSH

Откройте приложение «Настройки» и перейдите в группу настроек «Приложения».

Перейдите на вкладку «Приложения и функции» и нажмите «Управление дополнительными функциями».

На экране «Управление дополнительными функциями» отображаются только языковые пакеты. Чтобы просмотреть другие компоненты, которые можно установить, щелкните Добавить компонент.

Найдите функции клиента OpenSSH или сервера OpenSSH. Нажмите на него и нажмите кнопку Установить. Подождите, пока он установится, и все. Вы можете установить один или оба клиента OpenSSH и сервер OpenSSH одним и тем же способом.Следует отметить, что это бета-версия, поэтому ожидайте обычных ошибок, которые вы можете ожидать от Microsoft.

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

Удаление OpenSSH

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

Учитывая, что и клиент, и сервер OpenSSH находятся в стадии бета-тестирования, вы можете ожидать ошибок, но вы также должны быть готовы к меньшему предложению продукта.Большинство пользователей, скорее всего, сравнит его с Putty, но это еще не все.

Обновление Fall Creators Update вышло в октябре, так что эта функция более или менее очень ранняя, если хотите, она находится в зачаточном состоянии. Это и хорошо, и плохо. Плохо, потому что это означает ошибки и ограниченную функциональность, и хорошо, потому что это означает, что пользователи могут надеяться на улучшения и могут надеяться, что Putty когда-нибудь снова подключится.

У команды Microsoft, занимающейся разработкой OpenSSH, есть приблизительная дорожная карта, которая может дать вам представление о том, чего ожидать.Обратите внимание, что эта дорожная карта не является последней. Windows 10 некоторое время поддерживала SSH, но до обновления Fall Creators Update пользователям, которые хотели установить OpenSSH в Windows 10, приходилось устанавливать его через Github. Если вы еще не обновились до Fall Creators Update или хотите попробовать последние версии OpenSSH, вы можете сделать это на странице проекта Github.

.

OpenSSH для Windows - или как безопасно подключиться к Windows

1. Установка и настройка.
2. Первый запуск.
3. Подключаемся по ssh.
4. Проблемы со входом в систему
5. Создать туннель ssh.

Вся информация, содержащаяся в тексте, проверена и используется мной, однако я не несу ответственности за любой ущерб, возникший в результате неправильного использования следующих инструкций.

1. Установка и настройка программного обеспечения.

Устанавливаем OpenSSH для Windows, на момент написания этой статьи последней версией была версия 3.8.1p1-1 (http://www.openssh.com). При установке мы устанавливаем серверную версию (если хотим подключиться к этому компьютеру извне) или клиентскую (если хотим подключиться к другому компьютеру с этого компьютера) или обе версии.

Предполагаю, что мы устанавливаем в папку по умолчанию, т.е. C:\Program Files\OpenSSH.
В конце установки появится сообщение о том, что перед запуском ssh сервера нам следует отредактировать файл C:\Program Files\OpenSSH\etc\passwd - что мы также сделаем позже.
После завершения установки запустите командную строку CMD , затем перейдите в каталог с установленной программой « cd C:\Program Files\OpenSSH\bin ».
В командной строке введите команду mkgroup , чтобы добавить группы пользователей системы.

> mkgroup -l >> .. \ etc \ group (если мы хотим добавить локальные группы пользователей)
> mkgroup -d >> .. \ etc \ group (если мы хотим добавить группы пользователей домена )

Если все прошло успешно, группы пользователей сохранились в файле etc\group .
В командной строке введите команду mkpasswd , чтобы добавить пароли выбранных пользователей.

> mkpasswd -l -u имя пользователя >> .. \ etc \ passwd (если мы хотим добавить пароль локального пользователя)
> mkpasswd -d -u имя пользователя >> .. \ etc \ пароль (если хотим добавить пароль доменного пользователя)

Если все прошло успешно, пароли выбранных пользователей были сохранены в файле etc\passwd .
В директории \etc находится файл banner.txt в котором отображается текст приветствия при подключении к серверу.
Этот файл можно свободно редактировать, но это не обязательно.
Дополнительную информацию о настройке нашего ssh-сервера и клиента можно найти в файлах readme.txt и других файлах в каталоге \docs.

2. Первый пуск.

Я предполагаю, что все этапы установки прошли успешно и мы можем запускать наш сервер.
В командной строке CMD введите:
> net start opensshd

Наш ssh-сервер уже запущен и с этого момента мы можем подключаться к нашему серверу извне. Однако следует помнить, что сервер ssh прослушивает порт 22 TCP и он должен быть открыт.
Стандартная конфигурация брандмауэра в Windows XP - настройки порта ssh:

3. Подключитесь к серверу ssh.

В командной строке CMD введите:
> пользователь ssh @ ssh_server.domen.pl

где:
пользователь - означает имя учетной записи на удаленном сервере, к которому мы подключаемся.
server_ssh.domen.pl - адрес сервера к которому подключаемся (может быть IP адрес).


после подключения к серверу и мы будем проинформированы о ключе RSA и добавлении хоста к известным хостам и т. д. ... и спросят, хотим ли мы продолжить. Подтвердите, введя yes.
Затем появится текст приветствия и вам будет предложено ввести пароль.После подтверждения пароля мы можем удаленно работать на сервере. У нас есть только командные строки.

4. Проблемы со входом в систему

A) После ввода пароля появляется следующее сообщение:
Не удалось создать каталог '/home/konta_name/.ssh'.
Это означает, что ssh сервер не смог создать папку .ssh в директории "/home/имя_аккаунта /" где
"/home " - означает директорию " Documents and Settings " по умолчанию.
Указанный каталог, скорее всего, не существует в папке « Documents and Settings ».
Редактирование этих настроек можно произвести в файле "..\etc\passwd"

или в реестре изменив значения в ключах: " HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/ mounts v2 /":
"/"
"/home"
"/usr/bin"
Делайте резервную копию перед внесением изменений в реестр.

B) При попытке подключения появляется следующее сообщение:

@ ВНИМАНИЕ: ИДЕНТИФИКАЦИЯ УДАЛЕННОГО ХОСТА ИЗМЕНИЛАСЬ! @
ВОЗМОЖНО, ЧТО КТО-ТО ДЕЛАЕТ ЧТО-ТО ГРУСТНОЕ!
Прямо сейчас кто-то может подслушивать вас (атака «человек посередине»)!
Также возможно, что ключ хоста RSA был только что изменен.
Отпечаток ключа RSA, отправленный удаленным хостом:


Это означает, что в файле "./ssh/know_hosts" уже есть запись с этого компьютера. Это происходит, когда ранее был сгенерирован другой ключ (когда компьютер был подключен ранее и ключ был сгенерирован). Сервер ssh воспринимает это как попытку атаки и не разрешает подключение. Чтобы решить эту проблему, отредактируйте файл « ./ssh/know_hosts» и удалите запись для данного компьютера, или, если мы не знаем, что удалять, мы можем удалить весь файл.Однако надо учитывать, что после удаления файла ssh придется заново генерировать ключи для всех подключений.

5. Создайте ssh-туннель.

Я попытаюсь объяснить, как подключиться к удаленному рабочему столу в Windows XP, который работает на порту 3389 на компьютере с Windows XP с установленным программным обеспечением сервера ssh и открытым портом TCP 22 . Из имеющейся у меня информации служба удаленного рабочего стола зашифрована 128-битным ключом, однако дополнительная безопасность не помешает.Мы создадим туннель ssh, через который мы будем подключаться к службе удаленного рабочего стола на целевом компьютере.

Компьютер 1
- SSH-клиент Установлен
- Удаленный настольный Приложение

Стыревка:
SSH -L 1000: localhost: 3389 user@serwer_ssh.domena.pl

--------- 99 ------ -------------->

КОМПЬЮТЕР 2
(server_ssh.domen.pl) (Windows XP)
- TCP порт 22 открыт
- служба удаленного рабочего стола
- служба ssh сервера

В командной строке CMD введите:

> ssh -L 1000:localhost:3389 user@ssh_server.domen.pl

После подключения сервер запросит пароль. После ввода и подтверждения пароля туннель будет установлен и мы сможем его использовать.
Согласно тому, что мы ввели при подключении через ssh-туннель, транспортируем трафик порта 3389 целевого хоста через наш компьютер на порт 1000 . Таким образом, подключение к удаленному хосту, прослушивающему порт 3389, будет выглядеть так: 127.0.0.1:1000 или localhost: 1000

Если попытка подключения к удаленному рабочему столу успешна, значит все в порядке, и если он не может подключиться, это означает, что туннель не работает.В ssh-туннеле весь трафик шифруется, поэтому передача данных безопасна. Туннелирование также можно использовать для передачи других услуг, например, VNC или электронной почты с протоколами SMTP и POP3. Тогда вы можете быть уверены, что никто не заподозрит ваши данные.

Автор: 90 130 Марчин Мазурек 06.12.20090 90 134 4

.

Как включить и использовать новые встроенные команды SSH для Windows 10 (как)

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

Обновление : Встроенный клиент SSH теперь включен по умолчанию в обновлении Windows 10 от апреля 2018 г.Вот как получить обновление, если оно еще не установлено на вашем компьютере.

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

Как установить клиент SSH для Windows 10

Клиент SSH является частью Windows 10, но является «дополнительной функцией» и не устанавливается по умолчанию.

Чтобы установить его, перейдите в «Настройки»> «Приложения» и нажмите «Управление дополнительными функциями» в разделе «Приложения и функции».

Нажмите «Добавить компонент» вверху списка установленных компонентов. Если у вас уже установлен SSH-клиент, он появится здесь в списке.

Прокрутите вниз, нажмите «Клиент OpenSSH (бета)» и нажмите «Установить».

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

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

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

Чтобы быстро открыть окно PowerShell, щелкните правой кнопкой мыши кнопку «Пуск» или нажмите Windows + X и выберите «Windows PowerShell» в меню.

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

 ssh 

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

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

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

 ssh [email protected] 

По умолчанию команда пытается подключиться к запущенному SSH-серверу. на порт 22, который используется по умолчанию.Однако вам может потребоваться подключиться к серверу, работающему на другом порту. Вы делаете это, указав порт из коммутатора -p . Например, если сервер принимает соединения через порт 7777, вы должны запустить:

 ssh [email protected] -p 7777 

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

.

Настраиваем SSH в Windows

Сервер SSH отказывается работать; (

Совсем недавно мир облетела новость о том, что Microsoft незаметно выпустила пакет OpenSSH (в бета-версии) для своих операционных систем, о чем мы также сообщили читателям testhub.pl. SSH-клиент, кроме самой установки, не требует для работы никаких дополнительных действий и может быть использован сразу. С другой стороны, людей, которые после установки серверного пакета ожидали, что это все, что необходимо для его запуска, мог ожидать сюрприз.Также при попытке запустить системную службу sshd (сервер OpenSSH) выдает ошибку:

Предоставление полномочий

Первая связана с отсутствием необходимых разрешений для службы sshd , которую необходимо добавлять вручную. Для этой цели существует инструмент под названием Local Security Policy , который проще всего запустить, введя команду " secpol" . Вы можете сделать это из терминала, но с таким же успехом просто щелкните меню START и начните вводить команду.После открытия инструмента редактора Локальная политика безопасности найдите ключ Локальная политика , а затем откройте Назначение прав пользователя . В правом окне находим позицию Заменить токен на уровне процесса :

Открываем свойства этого пункта двойным щелчком по нему или выбором пункта Свойства из контекстного меню. В открывшемся окне нажмите кнопку Добавить пользователя или группу .В открывшемся окне в поле Введите названия объектов выбрать , это единственное активное поле для редактирования для удобства, ввести NT Service\sshd (обязательно с пробелом) и подтвердить изменения нажатием ОК .

Еще раз нажмите ОК, на этот раз в окне свойств правила Замените токен на уровне процесса и можете закрыть редактор Локальной политики безопасности .

Не так быстро

Нет, служба пока не может быть запущена, а кто хотел это сделать, ожидая результатов, столкнется с новым сообщением об ошибке:

Любознательным найти причину поможет сервисный лог в файле sshd.log в каталоге C:\Windows\System32\OpenSSH\Logs , содержащий записи следующего содержания:

Ошибка
: не удалось загрузить ключ хоста: ./ssh_host_rsa_key ошибка: не удалось загрузить ключ хоста: ./ssh_host_dsa_key ошибка: не удалось загрузить ключ хоста: ./ssh_host_ed25519_key sshd: нет доступных ключей хоста - выход. 

Генерируем

ключа шифрования

У нас есть виновник, наш SSH-сервер не имеет ключей для шифрования трафика между сервером и SSH-клиентом.Поэтому нам нужно сгенерировать их командой C:\Windows\System32\OpenSSH\ssh-keygen.exe -A , которую мы выдадим в терминале. Конечно, для этой операции требуются права администратора, и терминал следует запускать с такими правами (например, создав ярлык cmd.exe на рабочем столе и запустив его, выбрав Запуск от имени администратора в контекстном меню). Еще одно важное замечание - операции нужно производить в директории C:\Windows\System32\OpenSSH или туда же переносить сгенерированные ключи.

Это еще не все

К сожалению, это еще не все операции, которые нам предстоит сделать. Это связано с тем, что хотя у нас уже есть ключ, служба сервера SSH по-прежнему не может получить доступ к файлу ssh_host_ed25519_key , и нам нужно решить эту проблему. Поэтому из контекстного меню файла вызываем Свойства , переходим на вкладку Безопасность и вносим следующие изменения:

  • меняем владельца файла на NT Service\sshd ,
  • даем сервису NT Service\sshd доступ только на чтение к файлу,
  • убираем права на файл у других пользователей.

Убедившись, что изменения верны, вы можете закрыть окно свойств файла.

Мы запускаем

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

 ошибка: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ @@@@@@@@@@@ ошибка: @ ВНИМАНИЕ: НЕЗАЩИЩЕННЫЙ ФАЙЛ ЧАСТНОГО КЛЮЧА! @ ошибка: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@@@@@@@@@@ ошибка: Разрешения для './ssh_host_ed25519_key слишком открыты. error: Требуется, чтобы ваши файлы закрытых ключей НЕ были доступны другим. ошибка: этот закрытый ключ будет проигнорирован. 

После запуска SSH-сервера теперь вы можете удаленно подключаться к компьютеру с помощью SSH-клиента.

Замечания

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

.90 000 Microsoft любит Linux еще больше. Родной OpenSSH в Windows 10

Windows, как и Microsoft, за последние годы претерпел серьезные изменения. Американский гигант стал более открытым для конкурентоспособных решений не только в области создания отличных мобильных приложений для зарубежных платформ, но и в том числе в том, чтобы сделать свои продукты более доступными для пользователей. Linux (в основном из-за возможности установки своей подсистемы). Теперь можно реализовать еще одну интересную функцию.

Это SSH-сервер и клиент. До сих пор пользователи Windows 10 по-разному сталкивались с поддержкой SSH. Большинство заинтересованных в этом вопросе установили PuTTY, программу, известную своей простотой и прозрачностью. Конечно, для него есть несколько альтернатив, но наибольшую популярность приобрело именно упомянутое нами приложение. Однако очень возможно, что вскоре он начнет терять пользователей, потому что теперь можно установить встроенную поддержку клиента и сервер OpenSSH в бета-версии.

После успешной установки надстройки в Windows OpenSSH доступен в командной строке и PowerShell. Стоит помнить об использовании OpenSSH с повышенными привилегиями.

Как установить встроенную поддержку OpenSSH в Windows 10?

Прежде всего, эта функция может использоваться только пользователями Windows 10. Просто введите «Добавить функцию…» в поле поиска меню «Пуск» — вам будет предложено «Добавить дополнительную функцию».Идешь дальше, нажимаешь "Добавить функцию" над списком компонентов. Пожалуйста, подождите некоторое время, пока все доступные элементы загрузятся. После этого вы ищете «Клиент OpenSSH (бета) / Сервер OpenSSH (бета)» и нажимаете «Установить» на них.

После правильной установки надстроек все, что вам нужно сделать, это вызвать механизм OpenSSH в командной строке или PowerShell с помощью команды «ssh» с повышенными привилегиями. Если вы до сих пор использовали альтернативные клиенты, поддерживающие SSH, вам больше не нужно этого делать — в Windows наконец-то появилась функциональность, которая нужна многим пользователям.

.

Смотрите также

Только новые статьи

Введите свой e-mail

Видео-курс

Blender для новичков

Ваше имя:Ваш E-Mail: