Ssh что это за папка windows 10

В Windows 10 и Windows Server 2019 появился встроенный SSH клиент, который вы можете использовать для подключения к *Nix серверам, ESXi хостам и другим устройствам по защищенному протоколу, вместо Putty, MTPuTTY или других сторонних SSH клиентов. Встроенный SSH клиент Windows основан на порте OpenSSH и предустановлен в ОС, начиная с Windows 10 1809.

Установка клиента OpenSSH в Windows 10

Клиент OpenSSH входит в состав Features on Demand Windows 10 (как и RSAT). Клиент SSH установлен по умолчанию в Windows Server 2019 и Windows 10 1809 и более новых билдах.

Проверьте, что SSH клиент установлен:

В нашем примере клиент OpenSSH установлен (статус: State: Installed).

Если SSH клиент отсутствует (State: Not Present), его можно установить:

]Бинарные файлы OpenSSH находятся в каталоге c:\windows\system32\OpenSSH\.

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

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]]
destination [command]

Для подключения к удаленному серверу по SSH используется команда:

Если SSH сервер запущен на нестандартном порту, отличном от TCP/22, можно указать номер порта:

Например, чтобы подключиться к Linux хосту с IP адресом 192.168.1.202 под root, выполните:

Затем появится запрос пароля указанной учетной записи, укажите пароль root, после чего должна открытся консоль удаленного Linux сервера (в моем примере на удаленном сервере установлен CentOS 8).

Если вы используете SSH аутентификацию по RSA ключам (см. пример с настройкой SSH аутентификации по ключам в Windows), вы можете указать путь к файлу с закрытым ключом в клиенте SSH так:

Также вы можете добавить ваш закрытый ключ в SSH-Agent. Сначала нужно включить службу ssh-agent и настроить ее автозапуск:

set-service ssh-agent StartupType ‘Automatic’
Start-Service ssh-agent

Добавим ваш закрытый ключ в базу ssh-agent:

Теперь вы можете подключиться к серверу по SSH без указания пути к RSA ключу, он будет использоваться автоматически. Пароль для подключения не запрашивается (если только вы не защитили ваш RSA ключ отдельным паролем):

Еще несколько полезных аргументов SSH:

SCP: копирование файлов из/в Windows через SSH

С помощью утилиты scp.exe, которая входит в состав пакета клиента SSH, вы можете скопировать файл с вашего компьютера на SSH сервер:

scp.exe «E:\ISO\CentOS-8.1.1911-x86_64.iso» root@192.168.1.202:/home

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

И наоборот, вы можете скопировать файл с удаленного сервера на ваш компьютер:

scp.exe root@192.168.1.202:/home/CentOS-8.1.1911-x86_64.iso e:\tmp

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

Подключение к Windows по SSH как в Linux

Меня всегда удручало подключение к Windows машинам. Нет, я не противник и не сторонник Microsoft и их продуктов. Каждый продукт существует для своей цели, но речь не об этом.
Для меня всегда было мучительно больно подключаться к серверам с Windows, потому что эти подключения либо настраиваются через одно место (привет WinRM с HTTPS) либо работают не очень стабильно (здравствуй RDP к виртуалкам за океаном).

Поэтому, случайно натолкнувшись на проект Win32-OpenSSH, я решил поделиться опытом настройки. Возможно кому-нибудь эта тулза сэкономить кучу нервов.

Отмечу, что данный проект пока что находится на стадии beta, поэтому его не рекомендуют использовать в production.

Итак, скачиваем последний релиз, на текущий момент это 7.9.0.0p1-beta. Есть версии как для 32 так и для 64 битных систем.

Распаковываем в C:\Program Files\OpenSSH
Обязательный момент для корректной работы: права на запись в этой директории должны быть только у SYSTEM и у админской группы.

Устанавливаем сервисы скриптом install-sshd.ps1 находящимся в этой директории

Разрешаем входящие подключения на 22 порт:

Уточнение: апплет New-NetFirewallRule используется на Windows Server 2012 и новее. В наиболее старых системах (либо десктопных) можно воспользоваться командой:

При запуске будут автоматически сгенерированы хост-ключи (если отсутствуют) в %programdata%\ssh

Автозапуск сервиса при запуске системы мы можем включить командой:

Так же, можно сменить командную оболочку по умолчанию (после установки, по умолчанию — cmd):

Уточнение: Необходимо указывать абсолютный путь.

А дальше настраиваем sshd_config, который расположем в C:\ProgramData\ssh. Например:

И создаем в пользовательской папке директорию .ssh, а в ней файл authorized_keys. Туда записываем публичные ключи.

Важное уточнение: права на запись в этот файл, должен иметь только пользователь, в чьей директории лежит файл.

Но если у вас проблемы с этим, всегда можно выключить проверку прав в конфиге:

К слову, в C:\Program Files\OpenSSH лежат 2 скрипта (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), которые должны но не обязаны фиксить права, в том числе и с authorized_keys, но почему-то не фиксят.

Не забывайте перезапускать сервис sshd после для применения изменений.

CIFS over SSH штатными средствами Windows 10

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

Однажды потребовалось мне организовать доступ к серверу по протоколу SMB и в поиске решения я наткнулся на следующую статью: Mounting your Nikhef home directory using SSH for Windows 8. Это было простое и удобное решение, которое использовало Putty. Чуть позже мне пришлось настраивать это решение на другом компьютере и я понял, что Putty тут лишний с тех пор как в Windows 10 появился встроенный ssh-клиент на основе OpenSSH.

Под катом — идентичная схема, только с использованием OpenSSH под Windows 10.

У меня схема организована следующим образом:

Всё это автоматом – лень торжествует. Безопасно, быстро и нативно выглядит. Любым редактором могу открывать и править файлы на удаленном сервере как у себя на локальном — без проблем с загрузкой правленых файлов и установкой им необходимых разрешений. При этом нет проблем с безопасностью Samba.

Итак – сперва по шагам:

На стороне WINDOWS

Должен быть установлены OpenSSH. В Windows 10 и Windows Server 2019 появился встроенный SSH клиент на основе OpenSSH. Им мы и воспользуемся. Сначала убедимся что он установлен – наберем в командной строке

Если видим исполнение команды — все «Ок», клиент присутствует в системе.

Шаг 1. Настройка сетевого адаптера

Устанавливаем loopback-адаптер в системе. Мы будем обращаться по адресу к локальному адаптеру.

Запустится «Мастер установки оборудования» (Здесь я пользуюсь русской Windows 10 Pro).

Уверен, что эти шаги можно сделать из командной строки, но не нашел способ установки драйвера без devcon.exe, потому и не стал заморачиваться с автоматизацией этого шага.

Далее уже в CMD (от имени Администратора).

Видим появился второй адаптер. У меня он называется Ethernet 2.

Теперь настроим адрес для этого адаптера

Или из командной строки:

В результате у нас появился адаптер локально доступный по адресу 10.255.255.1

Теперь проблема в том, что нам необходимо получить доступ к общей папке через TCP-порт 445, но при загрузке Windows этот порт захватывается системным драйвером lanmanserver для всех интерфейсов. Отложив запуск драйвера lanmanserver и установив правило portproxy, мы можем обойти это.

Далее в командной строке от имени администратора меняем режим запуска сетевых служб (пробел после «start=» обязателен. ):

и настраиваем для адаптера с адресом 10.255.255.1 проксирование порта 44445 на локальный порт 445

Теперь необходимо перезагрузиться, чтобы схема перехвата порта у службы lanmanserver сработала.

Проверяем что прослушивание порта осуществляется нашим loopback-адаптером, просмотрев открытые в системе порты

значит все в порядке и порт прослушивается на нужном адресе. Если же мы видим «0.0.0.0:445» — значит в нашей схеме что-то не сработало правильно. Проверить правила переадресации портов можно командой

Шаг 2. Ключ и рабочий скрипт

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

Генерируем ключ для ssh-авторизации (назовем его, например: cifsoversshkey)

В результате будет сгенерирована пара открытого и закрытого ключа. Для того, чтобы OpenSSH не выдавал сообщение UNPROTECTED PRIVATE KEY FILE! нужно изменить права на файл ключа. Задачу мы будем запускать для одного пользователя, от имени которого мы собираемся работать в Windows. Можно через GUI, но мне показалось что картинок уже достаточно. В Windows это сделаем следующей командой:

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

Должны быть права только для текущего пользователя, иначе файл ключа не будет принят программой OpenSSH и соединение не будет подниматься!

Создадим в текущей папке пакетный файл cifsoverssh.cmd следующего содержания:

Где:
user@111.111.111.111пользователь на стороне linux сервера @ адрес удаленного сервера

Шаг 3. Ярлык или задача в планировщике

Для автоматизации запуска при входе в систему можно создать задачу в планировщике:

На стороне клиентского компьютера Windows все приготовления были закончены.

Настройка Linux сервера

Предполагается, что ssh-сервер был предварительно настроен и включена авторизация по ключу.

Подключаемся по ssh из командной строки на windows-машине

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

/.ssh/authorized_keys (если файл отсутствует – создадим его).

Теперь необходимо в этот файл вставить содержимое нашего файла публичного ключа, созданного на нашей windows-машине (файл %APPDATA%\CIFSoverSSH\cifsoversshkey.pub). Откроем его в любом редакторе и вставим цепочку ключа с новой строки. Если есть другие ключи, просто вставим его с новой строки.

Устанавливаем Samba (на примере Debian)

Переименовываем старый файл настроек и создаем новый файл

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

В последней секции мы настраиваем непосредственно шару. В названии секции указываем имя шары ShareName. Path = путь к файлам, которые мы хотим расшарить. В параметрах force user и force group указываем linux-пользователя, от имени которого будут сохраняться файлы при изменении и создании в шаре. Так как у меня там лежат файлы для веб-сервера – у меня пользователь www-data

Отключаемся и выходим в командную строку Windows

Всё готово. Теперь остается только запустить наш ярлык или выйти из профиля пользователя windows и снова войти (если вы создали задачу в планировщике).

После этого ваша удаленная шара будет доступна по адресу \\10.255.255.1\ShareName — Можно даже монтировать её как сетевой диск.

Ssh что это за папка windows 10

Использование встроенного SSH клиента в Windows 10

В Windows 10 и Windows Server 2019 появился встроенный SSH клиент, который вы можете использовать для подключения к *Nix серверам, ESXi хостам и другим устройствам по защищенному протоколу, вместо Putty, MTPuTTY или других сторонних SSH клиентов. Встроенный SSH клиент Windows основан на порте OpenSSH и предустановлен в ОС, начиная с Windows 10 1809.

Установка клиента OpenSSH в Windows 10

Клиент OpenSSH входит в состав Features on Demand Windows 10 (как и RSAT). Клиент SSH установлен по умолчанию в Windows Server 2019 и Windows 10 1809 и более новых билдах.

Проверьте, что SSH клиент установлен:

В нашем примере клиент OpenSSH установлен (статус: State: Installed).

Если SSH клиент отсутствует (State: Not Present), его можно установить:

]Бинарные файлы OpenSSH находятся в каталоге c:\windows\system32\OpenSSH\.

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

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 [[email protected]]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]]
destination [command]

Для подключения к удаленному серверу по SSH используется команда:

Если SSH сервер запущен на нестандартном порту, отличном от TCP/22, можно указать номер порта:

Например, чтобы подключиться к Linux хосту с IP адресом 192.168.1.202 под root, выполните:

Затем появится запрос пароля указанной учетной записи, укажите пароль root, после чего должна открытся консоль удаленного Linux сервера (в моем примере на удаленном сервере установлен CentOS 8).

Если вы используете SSH аутентификацию по RSA ключам (см. пример с настройкой SSH аутентификации по ключам в Windows), вы можете указать путь к файлу с закрытым ключом в клиенте SSH так:

Также вы можете добавить ваш закрытый ключ в SSH-Agent. Сначала нужно включить службу ssh-agent и настроить ее автозапуск:

set-service ssh-agent StartupType ‘Automatic’
Start-Service ssh-agent

Добавим ваш закрытый ключ в базу ssh-agent:

Теперь вы можете подключиться к серверу по SSH без указания пути к RSA ключу, он будет использоваться автоматически. Пароль для подключения не запрашивается (если только вы не защитили ваш RSA ключ отдельным паролем):

Еще несколько полезных аргументов SSH:

SCP: копирование файлов из/в Windows через SSH

С помощью утилиты scp.exe, которая входит в состав пакета клиента SSH, вы можете скопировать файл с вашего компьютера на SSH сервер:

scp.exe «E:\ISO\CentOS-8.1.1911-x86_64.iso» [email protected]:/home

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

И наоборот, вы можете скопировать файл с удаленного сервера на ваш компьютер:

scp.exe [email protected]:/home/CentOS-8.1.1911-x86_64.iso e:\tmp

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

Как подключиться по SSH из Windows 10

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

В этой инструкции мы рассмотрим процесс подключения к SSH из Windows 10. Первый способ будет актуален для Windows 10 версии 1809 и выше, а второй можно использовать как на Windows 10, так и на Windows 7.

Подключение по SSH с помощью OpenSSH

Раньше для подключения к Linux серверу по SSH из Windows компьютера требовалась установка программы PuTTy или какого-то другого SSH-клиента. Но, в операционной системе Windows 10 (начиная с версии 1809 ) доступен клиент OpenSSH, с помощью которого можно подключаться к Linux серверам по SSH. Это позволяет работать с терминалом Linux прямо из командной строки Windows 10, при этом не требуется установка никаких сторонних программ.

Перед тем как использовать данный способ подключения необходимо проверить версию Windows 10. Для этого нажмите комбинацию клавиш Win-R и выполните команду « winver ». Если на вашем компьютере установлена Windows 10 с версией 1809 или выше, то все нормально, в противном случае сначала нужно выполнить обновление.

Также нужно открыть меню « Параметры » и зайти в раздел « Приложения – Дополнительные возможности ».

Здесь нужно пролистать список установленных дополнительных компонентов и найти в нем « Клиент OpenSSH ». Если такой компонент присутствует, значит все нормально и можно переходить к следующему шагу. Если нет, то его нужно сначала установить с помощью меню « Добавить компонент ».

Обратите внимание, не нужно путать « Клиент OpenSSH » и « Сервер OpenSSH ». Для подключения по SSH вам нужен именно клиент.

Также клиент OpenSSH можно установить с помощью PowerShell. Для этого запустите консоль PowerShell с правами администратора и выполните следующую команду:

Более подробно об установке и удалении клиента OpenSSH можно почитать в официальной документации Майкрософт.

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

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

Где « user » — это имя пользователя на удаленном сервере, а « server » — это имя компьютера или его ip адрес.

Например, если наш сервер доступен по ip адресу « 192.168.1.214 », а имя пользователя это « aleks », то команда для подключения будет выглядеть так:

После ввода данной команды появится запрос пароля и после этого мы получим доступ к удаленному серверу. Также при первом подключении с помощью ssh будет появляться запрос на добавление сервера в список известных.

Более подробную информацию о команде « ssh » и ее параметрам можно получить на сайте man.openbsd.org/ssh или на opennet.ru (перевод).

Подключение по SSH черезPuTTY

В тех случаях, когда версия Windows 10 не поддерживает OpenSSH (или используется Windows 7) к SSH можно подключаться с помощью программы PyTTY. Скачать установщик данной программы можно на официальном сайте www.putty.org.

После установки программы PyTTY ее можно будет запустить с помощью поиска в меню « Пуск »

Сразу после запуска программы PuTTY появляется окно с настройками подключения. Основными параметры здесь находятся на вкладке « Session », здесь нужно ввести:

После ввода этих данных можно запускать подключение с помощью кнопки « Open ».

Если для подключения к SSH используются ключи, то путь к приватному ключу нужно указать в разделе « Connection – SSH – Auth ».

Обратите внимание, ключ должен быть сгенерирован программой PuTTYgen, которая устанавливается вместе с PuTTY. Если вы сгенерировали ключи с помощью OpenSSH, то их можно загрузить в PuTTYgen и сохранить в формате подходящем для PuTTy.

Если информация для подключения правильная, то вы увидите консоль с запросом на ввод имени пользователя пароля. Также при первом запуске появится запрос на добавление компьютера в список известных.

После ввода этих данных вы будете подключены к удаленному серверу по SSH.

Как подключиться по SSH к серверу — лучший ssh клиент для Windows

Windows 10 SSH vs PuTTY: что выбрать?

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

Однако благодаря Windows PowerShell вам может больше не понадобиться PuTTY. Давайте посмотрим, как настроить SSH-доступ в Windows 10 и могут ли новые инструменты вытеснить PuTTY.

Как установить SSH в Windows 10 (кратко)

Установка функциональности SSH в Windows 10 PowerShell достаточно проста, но пункты меню для нее несколько скрыты. Вот что вам нужно сделать:

После этого вы можете установить SSH-соединение с другими совместимыми компьютерами. Если SSH-сервер был установлен и настроен на удаленном компьютере, можно установить соединение.

Подробная инструкция по установке

Реализация SSH в Windows 10 в PowerShell является версией проекта OpenSSH. Вы можете найти страницу проекта на GitHub.

Вы можете обнаружить, что SSH уже установлен на вашем компьютере с Windows 10 (он был включен в обновление за апрель 2018 года), но если нет, его можно легко добавить.

Чтобы проверить, откройте меню «Опытный пользователь» (щелкните правой кнопкой мыши Пуск или нажмите клавишу Windows + X ) и выберите Windows PowerShell. Здесь введите команду «ssh». Если SSH еще не установлен, вы увидите такой экран:

Если вы не видите его, нажмите Добавить функцию, а затем прокрутите вниз, пока не увидите OpenSSH Client. Нажмите, чтобы развернуть и просмотреть описание.

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

Замечание о приложении SSH Server

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

Использование SSH в Windows PowerShell

После того, как SSH установлен и работает, вы можете использовать его для связи с другим компьютером. Например, вы можете использовать его для доступа к Raspberry Pi (один из нескольких вариантов об этом маленьком компьютере).

Использование простое. В PowerShell введите команду ssh, затем имя пользователя для учетной записи на удаленном устройстве и его IP-адрес.

Например, чтобы подключиться к моей коробке Raspberry Pi под управлением RetroPie, я использовал:

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

Через несколько минут вы будете подключены к удаленному устройству Linux, готовому выполнять любые необходимые вам задачи.

SSH-функции PowerShell и PuTTY

PuTTY долгое время был предпочтительным выбором для SSH на Windows. Будь то управление веб-серверами, доступ к Интернету вещей, устройства или удаленное администрирование ПК с Linux, это легкое и простое в использовании приложение.

Одной из причин стойкости PuTTY является широкий выбор функций. Итак, может ли SSH в Windows PowerShell конкурировать с PuTTY?

Ну, с точки зрения обеспечения функциональности SSH, да, это может. Вы можете узнать, как использовать некоторые расширенные функции SSH в Windows 10, введя команду ssh:

Результирующий список опций обрисовывает в общих чертах особенности. Например, вы можете указать порт:

Хотя вы можете связать адрес с OpenSSH в Windows, вы ограничены количеством адресов, которые можете сохранить.

Есть причина, почему PuTTY остается популярным. Приложение не только позволяет сохранять (и называть) ваши соединения, но и поддерживает соединения по Telnet, Serial и другим протоколам. Внешний вид PuTTY также настраивается, его можно быстро запустить с рабочего стола. В общем, PuTTY — это надежная утилита, которая обрабатывает практически все, что вы можете на нее бросить.

Почему SSH, когда вы можете использовать Linux?

Хотя удаленное управление Linux через SSH может быть жизненно важным, вам может даже не понадобиться SSH. В Windows 10 теперь есть подсистема Linux и командная строка в стиле Bash.

Это означает, что вы можете легко вводить команды Linux и получать реалистичные ответы. Хотя это может быть не идеально для всех сценариев, если вам нужен доступ к Linux для обучения в колледже или для обучения и у вас нет доступа по SSH (независимо от приложения) к устройству Linux, это может быть идеальным вариантом.

Конечно, это не единственный вариант. Если вам нужно практиковать команды Bash в Windows, вы всегда можете настроить виртуальную машину. Просто установите дистрибутив Linux в него и (если разрешить аппаратное обеспечение) у вас есть готовая к использованию ОС Linux.

Не пора ли отказаться от PuTTY в Windows 10?

SSH прост в использовании в Windows 10 PowerShell. Тем не менее, отсутствие функций, а также необходимость загрузки еще нескольких щелчков означает, что вы можете предпочесть использовать PuTTY. В любом случае, тот факт, что в Windows 10 есть два хороших варианта SSH, стоит отметить.

Нативный SSH клиент в Windows 10: как включить

С учетом того, что OpenSSH пока пребывает на этапе бета-тестирования, то нативный SSH клиент в Windows в настоящем его виде содержит уйму разнокалиберных багов (207 штук, по данным профильной странички на GitHub). Потому если экспериментировать недосуг, то лучше воспользоваться PuTTY.

А вот если тоже хочется наконец-то увидеть настоящий (т.е. почти такой же, как в macOS или Linux) SSH клиент на своем Windows-ПК, то тогда, конечно, вы зашли по адресу.

Тем не менее, повторимся, OpenSSH в стандартную комплектацию ОС Windows 10 пока не входит и устанавливать клиент нужно отдельно. Времени вся процедура занимает не много, однако требует внимательного к себе отношения.

Обязательным условием также является комп с Windows 10 в самой свежей версии, то бишь со всеми обновлениями. Их наличие лучше предварительно проверить, чтобы в процессе все работало должным образом. Проверяем и приступаем. Значит.

как активировать нативный SSH клиент в Windows 10

включаем Режим разработчика в Windows 10

Он нужен для того, чтобы загрузить новую фичу (которая, как мы уже сказали, пока является «бетой»). В Win 10 встроенный «Режим разработчика» включить можно следующим образом:

устанавливаем клиент OpenSSH-клиент

В это посте мы приведем два простых метода установки OpenSSH в Win 10: через графический интерфейс системы и через оболочку PowerShell. Первый способ проще (и привычнее для обычного юзера), второй — быстрее, но оба в данном случае подходят одинаково. Итак:

метод #1 — устанавливаем OpenSSH-клиент через интерфейс Windows 10

В поисковой строке системы пишем «Управление дополнительными компонентами» и затем переходим по соответствующей ссылке в результатах поиска (либо кликаем «Параметры», потом — «Приложения» и в окне «Приложения и возможности» жмем линк «Управление дополнительными компонентами»).

В следующем окне кликаем «Добавить компонент«, прокручиваем открывшийся список вниз (там в основном названия шрифтов) и выбираем пункт «OpenSSH Client (Beta)«.

К слову, тут же вы найдете и «OpenSSH Server (Beta)«, но в отличие от клиента он, во-первых, устанавливается и настраивается несколько иначе, а во-вторых, потом позволит вашему компу осуществлять потенциально небезопасные SSH-подключения. Потому оставим сосредотачиваемся на нашей задаче, кликаем «OpenSSH Client (Beta)» и запускаем процедуру установки.

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

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

Добавим также, что если вам понадобится удалить SSH, то для этого надо снова зайти в раздел «Управление дополнительными компонентами» настроек системы, в списке выбрать «OpenSSH Client (Beta)«, нажать кнопку «Удалить» и потом перезагрузить комп.

метод #2 — устанавливаем OpenSSH-клиент через Powershell

Этот метод времени занимает меньше, потому лучше подходит для ситуаций, когда, скажем, SSH нужно поставить сразу на несколько машин.

Первым делом запускаем PowerShell с правами администратора (жмём клавиши «Windows+X» и кликаем «Windows PowerShell (Администратор)«). Далее проверяем доступность OpenSSH для установки такой командой:

Система должна показать примерно такой ответ, как на этом скрине, где «NotPresent» означает, что запрашиваемый компонент не установлен:

Исходя из того, что нужный нам компонент доступен, запускаем его установку следующей командой (если он не доступен, то необходимо проапдейтить ОС и/или включить Режим разработчика):

По факту выполнения на экране вы увидите примерно такой ответ:

Кстати, после завершения процедуры установки OpenSSH-клиента комп надо перезагрузить (хотя система может показать RestartNeeded : false, т.е. перезагрузка не требуется). Требуется! Перезагружаем комп и переходим к завершающему этапу мероприятия.

запускаем нативный SSH клиент в Windows 10

Собственно, теперь остается только запустить SSH. Можно в PowerShell, можно через командную строку Windows 10. Если в PowerShell, то жмем Windows + X, в меню кликаем «Windows PowerShell» и вводим ssh.

В Win 10 эта команда работает точно так же, как и в macOS или Linux. Так что, детально описание каждого аргумента вы запросто найдете в Google. Например, для соединения с SSH-сервером evilserver.com с использованием имени «Hoid«, вводим команду:

При первом подключении вам будет предложено сначала принять ключ, а затем — войти в свою учетную запись на удаленном сервере. Только после этого вам будет разрешено запускать свои команды. Чтобы безопасно завершить текущий сеанс SSH просто введите exit.

Ну, и еще раз отметим, что по состоянию на сейчас OpenSSH еще не является полноценной функцией ОС Windows 10. PuTTy работает стабильнее и кроме того имеет более простой и понятный интерфейс. Но, как вы понимаете, как только нативный SSH в Microsoft доведут до ума, использование сторонних клиентов ограничат. Потому привыкать к OpenSSH так или иначе придется …

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

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

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

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

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

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

Прокрутите страницу вниз, нажмите кнопку «OpenSSH Client (Beta)» и нажмите «Установить».

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

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

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

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

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

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

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

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

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

Windows 10: is C:\ProgramData\ssh a windows folder?

Discus and support is C:\ProgramData\ssh a windows folder? in Windows 10 Ask Insider to solve the problem; Noticed this folder pop up and I’m not sure what its from the only thing I could think is of its from the last windows update since I think it was…
Discussion in ‘Windows 10 Ask Insider’ started by /u/nalaiio, Feb 18, 2020.

  1. is C:\ProgramData\ssh a windows folder?

    Noticed this folder pop up and I’m not sure what its from the only thing I could think is of its from the last windows update since I think it was created on the same day.

    submitted by /u/nalaiio
    [link] [comments]

    :)

  2. ProgramData-filder backup

    Hi,

    The ProgramData folder is usually located in the C: drive of your device. To locate the ProgramData folder, you can perform the following:

    • In File Explorer, click on the View tab.
    • Click on Options.
    • In the Folder Options window, click on the View tab.
    • Under the Hidden files and folders, select Show hidden files, folders, or drives.
    • Click on Apply.
    • Click on OK.

    Let us know how it goes after you’ve performed the steps.

  3. ProgramData folder what is it?

    Hi Kurtis,

    The ProgramData specifies the path to the program-data folder (normally C:\ProgramData). Unlike the Program Files folder, this folder can be used by applications to store data for standard users, because it does not require elevated permissions.

    The path can be on a volume other than the system drive and should not cause performance loss nor cause confusion to Windows , as long as it meets the following requirements:

    • It must be on an NTFS volume.
    • It can’t point to a drive that has a different copy of Windows on it.
    • It can’t contain any serviceable components

    Regards.

  4. is C:\ProgramData\ssh a windows folder?

    Programdata folder with USOPrivate and USOshared folder

    On Windows 10 under the C:\Programdata folder I keep seeing the following folders USOPrivate and USOshared. Any idea what they are? Some articles on the net suggest they are malware. please confirm.

Thema:

is C:\ProgramData\ssh a windows folder?

  1. is C:\ProgramData\ssh a windows folder? — Similar Threads — ProgramDatassh folder

  2. Why are these lines appearing on my folders in Windows 10?

    in Windows 10 Software and Apps

    Why are these lines appearing on my folders in Windows 10?: My PC was running well until yesterday, but today when I started it and opened my work files, I noticed that there were lines appearing on some folders, like a glitch. I don’t know why. Can you please help me get rid of these glitchy lines? These lines are only appearing on…
  3. Why are these lines appearing on my folders in Windows 10?

    in Windows 10 Network and Sharing

    Why are these lines appearing on my folders in Windows 10?: My PC was running well until yesterday, but today when I started it and opened my work files, I noticed that there were lines appearing on some folders, like a glitch. I don’t know why. Can you please help me get rid of these glitchy lines? These lines are only appearing on…
  4. Why are these lines appearing on my folders in Windows 10?

    in Windows 10 Gaming

    Why are these lines appearing on my folders in Windows 10?: My PC was running well until yesterday, but today when I started it and opened my work files, I noticed that there were lines appearing on some folders, like a glitch. I don’t know why. Can you please help me get rid of these glitchy lines? These lines are only appearing on…
  5. «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…

    in Windows 10 Software and Apps

    «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…: This started a couple of months ago. I don’t know if it was an anti-virus issue or if it happened because of a windows update.I was able to get a trial of WINzip and could zip files for a month, but I don’t want to rent their software. I just want the same old windows zip…
  6. «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…

    in Windows 10 Network and Sharing

    «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…: This started a couple of months ago. I don’t know if it was an anti-virus issue or if it happened because of a windows update.I was able to get a trial of WINzip and could zip files for a month, but I don’t want to rent their software. I just want the same old windows zip…
  7. «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…

    in Windows 10 Gaming

    «Send to» «Compressed Folder» has stopped working on my PC and none of the web advice I’ve…: This started a couple of months ago. I don’t know if it was an anti-virus issue or if it happened because of a windows update.I was able to get a trial of WINzip and could zip files for a month, but I don’t want to rent their software. I just want the same old windows zip…
  8. Xcopy /t /e folders not visible in Windows 11

    in Windows 10 Software and Apps

    Xcopy /t /e folders not visible in Windows 11: I have a substantial file tree that I back up regularly.In Windows 11 I did an xcopy /t /e to give me the file tree with no files in a different location. what I have done in Win7 and Win 10.Win11 hides the folder tree. I can see that the tree is in CMD dir but is not visible…
  9. Xcopy /t /e folders not visible in Windows 11

    in Windows 10 Gaming

    Xcopy /t /e folders not visible in Windows 11: I have a substantial file tree that I back up regularly.In Windows 11 I did an xcopy /t /e to give me the file tree with no files in a different location. what I have done in Win7 and Win 10.Win11 hides the folder tree. I can see that the tree is in CMD dir but is not visible…
  10. How do I stop a heavily used folder from «syncing» outdated files?

    in Windows 10 Software and Apps

    How do I stop a heavily used folder from «syncing» outdated files?: I have a game that requires installation in the Documents folder to function properly. This game has a subfolder that regularly is updated with new versions of files while older files are deleted. However, OneDrive automatically backs everything up and then syncs the old…

Users found this page by searching for:

  1. program data ssh folder

    ,

  2. programdata ssh

    ,

  3. www.windowsphoneinfo.com

    ,

  4. ssh program data,
  5. local disk programdata ssh foldsr,
  6. ssh folder in ProgramData,
  7. programdata ssh folder,
  8. what is ssh in program data,
  9. c: programdata ssh,
  10. c:\programdata\ssh folder


Windows 10 Forums

Open your Windows Explorer to check if the ./ssh directory already exists in your pc. Following this path should direct you there: C:\Users\[your user name]\. ssh (replace [your user name] with your user name).

How do I get to .ssh folder?

In the find file window, press Command-Shift-G. It’ll ask you what folder to navigate to. Enter ~/. ssh and press return.

How do I find ssh files?

Checking for existing SSH keys

  1. Open .
  2. Enter ls -al ~/. ssh to see if existing SSH keys are present. …
  3. Check the directory listing to see if you already have a public SSH key. By default, the filenames of supported public keys for GitHub are one of the following. …
  4. Either generate a new SSH key or upload an existing key.

How do I find my SSH key Windows 10?

  1. open command prompt (cmd)
  2. enter ssh-keygen and press enter.
  3. press enter to all settings. now your key is saved in c:\Users\. ssh\id_rsa. pub.
  4. Open your git client and set it to use open SSH.

Where is SSH public key in Windows?

pub from the file name (in any instance). Remember id_rsa is the private key and id_rsa. pub is the public key. And that’s all there is to viewing your SSH public and private keys on Linux, macOS, and Windows.

Learn SSH In 6 Minutes — Beginners Guide to SSH Tutorial

Where do I find my SSH public key?

By default, the private key is stored in ~/. ssh/id_rsa and the public key is stored in ~/. ssh/id_rsa.

What is the .SSH directory?

1. The . ssh directory is not by default created below your home directory. When you call ssh somehost (replace ‘somehost’ by the name or IP of a host running sshd), the directory and the file . ssh/known_hosts will be created.

How do I open an ssh file in Windows?

Start the service and/or configure automatic start:

  1. Go to Control Panel > System and Security > Administrative Tools and open Services. …
  2. If you want the server to start automatically when your machine is started: Go to Action > Properties. …
  3. Start the OpenSSH SSH Server service by clicking the Start the service.

How do I create a .ssh file in Windows?

Generating an SSH key

  1. Open the PuTTYgen program.
  2. For Type of key to generate, select SSH-2 RSA.
  3. Click the Generate button.
  4. Move your mouse in the area below the progress bar. …
  5. Type a passphrase in the Key passphrase field. …
  6. Click the Save private key button to save the private key.

Where is ssh config file on Windows 10?

For Windows, the default installation folder is %systemdrive%\Windows\System32\openssh. The following command shows the current path setting, and adds the default OpenSSH installation folder to it.

How do I create a .ssh file?

Generate an SSH Key Pair

  1. Run the ssh-keygen command. You can use the -t option to specify the type of key to create. …
  2. The command prompts you to enter the path to the file in which you want to save the key. …
  3. The command prompts you to enter a passphrase. …
  4. When prompted, enter the passphrase again to confirm it.

How do I find my SSH server?

How to Connect via SSH

  1. Open the SSH terminal on your machine and run the following command: ssh your_username@host_ip_address. …
  2. Type in your password and hit Enter. …
  3. When you are connecting to a server for the very first time, it will ask you if you want to continue connecting.

Can I delete SSH folder?

You can remove them, but I would err on the side of caution and leave them alone as they won’t do any harm or introduce any vulnerabilities — without the ssh or sshd binaries installed on your system having the leftover host ssh fingerprints and any leftover flat-file (text) configuration data in the folder is not …

Where are public and private keys stored?

Keys and certificates are stored in keystores and truststores. Private keys and personal certificates are stored in keystores. Public keys and CA certificates are stored in truststores. A truststore is a keystore that by convention contains only trusted keys and certificates.

How do I copy my SSH key?

Procedure

  1. In a terminal window, enter the following command: ssh-keygen -t rsa.
  2. Follow the prompts to generate the key. You must provide a file name and a passphrase. A public and a private key are generated. …
  3. Copy the public key to each node computer, by using the following command: ssh-copy-id username @ node_name.

Can I delete .SSH file?

Sometimes you would need to remove a file or a folder from the system. To do so using SSH, you would need to execute the appropriate command – rm. This will match all files starting with ‘myFile’ and ending in ‘. txt’ and delete them.

How do I uninstall SSH?

Delete SSH Key

  1. SSH to your server.
  2. Edit ~/. ssh/authorized_keys.
  3. Remove the line containing your key.
  4. Save and exit.

What is SSH add command?

The ssh-add command prompts the user for a private key password and adds it to the list maintained by ssh-agent . Once you add a password to ssh-agent , you will not be prompted for it when using SSH or scp to connect to hosts with your public key.

How do I know if SSH is installed?

How to check if SSH is running on Linux?

  1. First Check if the process sshd is running: ps aux | grep sshd. …
  2. Second, check if the process sshd is listening on port 22: netstat -plant | grep :22.

How do I connect to a SSH server in Windows?

Windows operating systems

  1. Start PuTTY.
  2. In the Host Name (or IP address) text box, type the hostname or IP address of the server where your account is located.
  3. In the Port text box, type 7822. …
  4. Confirm that the Connection type radio button is set to SSH.
  5. Click Open.

How do I run SSH on Windows 10?

How to Use SSH Commands in Windows 10

  1. Open Command Prompt (or PowerShell) Press Start and then type “Command Prompt”. …
  2. Run the SSH command to view its usage guide. Command Prompt will return a full list of options and syntax for you to use as you require.
  3. Connect to your server via your Windows Open SSH client.

What is the SSH config file?

Your SSH config file allows you to define specific settings for each SSH host that makes connecting to that host far easier. By defining many of these common, or uncommon, properties within the file, it eliminates the need to remember this parameter set each and every time a connection is needed.

How configure SSH config in Windows?

2 Answers

  1. Go to the . ssh directory /c/Users/PC_USER_NAME/. ssh/ , click right mouse button and choose «Git Bash Here»
  2. Create a file named «config» with the following command:

How do I edit a config file in SSH?

To modify the configuration files:

  1. Log on to the Linux machine as «root» with a SSH client such as PuTTy.
  2. Back up the configuration file you would like to edit in /var/tmp with the command «cp». For example: # cp /etc/iscan/intscan.ini /var/tmp.
  3. Edit the file with vim: Open the file in vim with the command «vim».

How do I access SSH config?

The ssh program on a host receives its configuration from either the command line or from configuration files ~/. ssh/config and /etc/ssh/ssh_config . Command-line options take precedence over configuration files. The user-specific configuration file ~/.

Содержание

  1. Использование встроенного SSH клиента в Windows 10
  2. Установка клиента OpenSSH в Windows 10
  3. Как использовать SSH клиенте в Windows 10?
  4. SCP: копирование файлов из/в Windows через SSH
  5. Безопасная оболочка (SSH)
  6. использование клиента Windows 10 OpenSSH
  7. Использование PuTTY
  8. Скачивание SSH-клиента
  9. Подключение к устройству
  10. Обновление пароля учетной записи
  11. настройка устройства Windows IoT Core
  12. Часто используемые служебные программы
  13. Установка OpenSSH
  14. Установка OpenSSH с помощью приложения «Параметры» в Windows
  15. Установка OpenSSH с помощью PowerShell
  16. Запуск и настройка OpenSSH Server
  17. Подключение к OpenSSH Server
  18. Удаление OpenSSH с помощью приложения «Параметры» в Windows
  19. Удаление OpenSSH с помощью PowerShell
  20. OpenSSH Что это такое, и с чем это едят
  21. Авторизация по SSH ключу
  22. Шифрованное копирование файлов
  23. Удаляем openssh, 100% защита от ботнета, миф?

В Windows 10 и Windows Server 2019 появился встроенный SSH клиент, который вы можете использовать для подключения к *Nix серверам, ESXi хостам и другим устройствам по защищенному протоколу, вместо Putty, MTPuTTY или других сторонних SSH клиентов. Встроенный SSH клиент Windows основан на порте OpenSSH и предустановлен в ОС, начиная с Windows 10 1809.

Установка клиента OpenSSH в Windows 10

Клиент OpenSSH входит в состав Features on Demand Windows 10 (как и RSAT). Клиент SSH установлен по умолчанию в Windows Server 2019 и Windows 10 1809 и более новых билдах.

Проверьте, что SSH клиент установлен:

openssh client ustanovka v windows 10

В нашем примере клиент OpenSSH установлен (статус: State: Installed).

Если SSH клиент отсутствует (State: Not Present), его можно установить:

klient openssh ustanovit komponent

]Бинарные файлы OpenSSH находятся в каталоге c:windowssystem32OpenSSH.

ispolnyaemye fajly openssh

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

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]]
destination [command]

parametry ssh klienta v windows

Для подключения к удаленному серверу по SSH используется команда:

Если SSH сервер запущен на нестандартном порту, отличном от TCP/22, можно указать номер порта:

Например, чтобы подключиться к Linux хосту с IP адресом 192.168.1.202 под root, выполните:

Затем появится запрос пароля указанной учетной записи, укажите пароль root, после чего должна открытся консоль удаленного Linux сервера (в моем примере на удаленном сервере установлен CentOS 8).

podklyuchenie iz windows 10 v linux s pomoshyu vstroe

Если вы используете SSH аутентификацию по RSA ключам (см. пример с настройкой SSH аутентификации по ключам в Windows), вы можете указать путь к файлу с закрытым ключом в клиенте SSH так:

Также вы можете добавить ваш закрытый ключ в SSH-Agent. Сначала нужно включить службу ssh-agent и настроить ее автозапуск:

set-service ssh-agent StartupType ‘Automatic’
Start-Service ssh-agent

Добавим ваш закрытый ключ в базу ssh-agent:

Теперь вы можете подключиться к серверу по SSH без указания пути к RSA ключу, он будет использоваться автоматически. Пароль для подключения не запрашивается (если только вы не защитили ваш RSA ключ отдельным паролем):

Еще несколько полезных аргументов SSH:

SCP: копирование файлов из/в Windows через SSH

С помощью утилиты scp.exe, которая входит в состав пакета клиента SSH, вы можете скопировать файл с вашего компьютера на SSH сервер:

scp.exe «E:ISOCentOS-8.1.1911-x86_64.iso» root@192.168.1.202:/home
scp exe kopirovanie fajlov cherez ssh

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

И наоборот, вы можете скопировать файл с удаленного сервера на ваш компьютер:

scp.exe root@192.168.1.202:/home/CentOS-8.1.1911-x86_64.iso e:tmp

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

Источник

Безопасная оболочка (SSH)

Secure Shell (SSH) позволяет удаленно администрировать и настраивать Windows устройства IoT Core.

использование клиента Windows 10 OpenSSH

клиент Windows OpenSSH требует, чтобы ос узла клиента SSH была Windows 10 версии 1803 (17134). кроме того, устройство Windows 10 IoT Базовая должно работать под RS5 Windows Insider Preview выпуска 17723 или более поздней версии.

клиент OpenSSH был добавлен в Windows 10 в 1803 (сборка 17134) как дополнительный компонент. чтобы установить клиент, можно выполнить поиск по запросу управление дополнительными компонентами в параметрах Windows 10. Если клиент OpenSSH не указан в списке установленных компонентов, выберите Добавить компонент.

add a feature

Затем выберите в списке клиент OpenSSH и нажмите кнопку установить.

optional features

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

где host — это IP-адрес Windows устройства IoT Core или имя устройства.

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

Введите Да и нажмите клавишу Ввод.

Если необходимо войти как Дефаултаккаунт, а не как администратор, потребуется создать ключ и использовать его для входа. На рабочем столе, с которого планируется подключиться к устройству IoT, откройте окно PowerShell и перейдите в папку личных данных (например, CD

Зарегистрируйте ключ с помощью ssh-агента (необязательно, для интерфейса единого входа). Обратите внимание, что SSH-Add необходимо выполнять из папки, которая является ACL, в качестве пользователя, выполнившего вход в систему (Builtin администраторы NT_AUTHORITY system также ОК). По умолчанию компакт-диск

из PowerShell должен быть достаточно, как показано ниже.

Если ключ не зарегистрирован в ssh-agent, он должен быть указан в командной строке для входа:

Если закрытый ключ зарегистрирован в ssh-agent, необходимо указать только DefaultAccount@host :

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

Введите Да и нажмите клавишу Ввод.

Теперь вы должны подключиться как дефаултаккаунт

Кроме того, необходимо задать список ACL для administrators_authorized_keys в соответствии с ACL ssh_host_dsa_key в том же каталоге.

Настройка ACL с помощью PowerShell

Использование PuTTY

Скачивание SSH-клиента

Чтобы подключиться к устройству с помощью SSH, сначала необходимо скачать клиент SSH, например, выполнив.

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

Чтобы подключиться к устройству, сначала необходимо получить IP-адрес устройства. после загрузки устройства Windows IoT Core на экране, подключенном к устройству, будет отображаться IP-адрес:

defaultapp

putty config

putty security prompt

Если соединение прошло успешно, login as: на экране появится запрос на вход.
Введите Administrator и нажмите клавишу ВВОД. Затем введите пароль по умолчанию в p@ssw0rd качестве пароля и нажмите клавишу ВВОД.

putty login

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

putty console

Обновление пароля учетной записи

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

Для этого введите следующую команду в консоли выводимых команд, заменив [new password] строгим паролем:

настройка устройства Windows IoT Core

чтобы иметь возможность развертывать приложения из Visual Studio 2017, необходимо убедиться, что Удаленный отладчик Visual Studio запущена на устройстве Windows IoT Core. Удаленный отладчик должен запускаться автоматически во время загрузки компьютера. Чтобы дважды проверить, используйте команду TList, чтобы вывести список всех запущенных процессов из PowerShell. На устройстве должно быть открыто два экземпляра msvsmon.exe.

время ожидания Удаленный отладчик Visual Studio может истекает после длительных периодов бездействия. если Visual Studio не удается подключиться к устройству Windows IoT Core, попробуйте перезагрузить устройство.

При необходимости можно также переименовать устройство. Чтобы изменить имя компьютера, используйте setcomputername программу:

Чтобы изменения вступили в силу, необходимо перезагрузить устройство. Команду можно использовать shutdown следующим образом:

Часто используемые служебные программы

Источник

Установка OpenSSH

Область применения 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, сделайте следующее:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

OpenSSH Что это такое, и с чем это едят

OpenSSH 1В данной статье я хотел бы рассмотреть продвинутые функции OpenSSH. Мы рассмотрим как теоретическую часть, так и практическую. Зачем.

На одном из моих серверов, в логах я заметил не очень позитивную активность, а именно китайцев, которые перебирали пароли, пытаясь авторизоваться под «админом», «рутом» и прочими логинами. Ок, я бы понял, если бы у меня был бы стандартный порт, но порт у меня был не стандартный, сервер вообще был в качестве тестовой среды и, короче, было странно, я заблокировал пол Китая и забил.

Далее меня откровенно стала надоедать необходимость постоянно вводить пароль для авторизации на серверах. Не, ну а если у меня двадцать серверов — нужно знать двадцать паролей, причем разных, потому что ставить один и тот же пароль на весь зоопарк глупо.

Авторизация по SSH ключу

Собственно в OpenSSH есть такая интересная возможность, как авторизация по ключам. Для корректной работы этого метода используется два ключа, открытый (который publik_key) и закрытый (privat_key соответственно). Открытый ключ должен находится в домашней каталоге пользователя, на сервере, на который мы будем заходить, а закрытый ключ должен обитать в домашнем каталоге пользователя, на ноутбуке (или ПК, смартфоне, телефоне, холодильнике, космическом шатле и т.д.) с которого мы будем ломиться на сервер. Далее, при авторизации, грубо говоря, эти ключи сравниваются, клиент авторизуется на сервер, сервер авторизуется у клиента, и клиент попадает на сервер. Само преимущество этого метода заключается в том, что его нельзя украсть, так как при авторизации ключ не передается на сервер, а только доказывает серверу, что у него есть этот ключ.

Ну если, username, мы смогли тебя убедить в том, что это необходимо, то начнем с генерации ключа. Заходим на наш сервер и генерируем ключ из под обычного пользователя (не root):

Далее в ответ «генератор» задаст нам несколько вопросов:

На этом вопросы заканчиваются, а ключи генерируются. Кстати, непонимающие «гуглочитатели» могут задать вопрос, почему я ввел ключ rsa, а не dsa? Все просто, dsa используется только для цифровой подписи, и не используется для шифрования. Так что смело вводите rsa.

В папке, в которой вы находитесь (или той,которую могли указать) вы найдете два файла, по названиям которых вы поймёте сто там публичное, а что там приватное.

Теперь, установим ключ на сервере:

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

приведем некоторые параметры к подобному виду:

и перезапустим службу openssh:

Но с сервера пока не выходите, особенно если он далеко от вас..

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

Для этого скопируем файл закрытого ключа с сервера при помощи такой прекрасной утилиты, как scp:

и добавим ключ для своего ssh клиента:

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

Но мне это не особо удобно. Что я имею в виду? Например мы можем авторизовываться на сервер набрав в терминале

Для этого достаточно в файл

/.ssh/config добавить эти строки:

Это называется Алиасом. Подробно ознакомиться с ключами вы можете на OpenNet.ru или набрав команду man ssh_config.

И еще, если вы собираетесь заходить на серверы с операционной системы Windows при помощи Putty, то вам понадобится утилита PuttyGen.

Шифрованное копирование файлов

Да, что то я ранее упоминал про такую штуку, как scp. Это не то, что вы, возможно, прочли на лурке, а это протокол RCP копирования файлов, использующий в качестве транспорта не RSH, а SSH.

При помощи этого протокола вы сможете копировать файл site1.zip на сервер со своего компьютера, в папку

/my_sites вот такой командой:

Можно скопировать файл sites22.zip с сервера на свой ноутбук в папку sites вот такой командой:

А если, вдруг, ваш ssh работает на другом порту, то делаем копирование вот такой командой:

Ну а в нашем случае, при настроенном алиасе в файле

/.ssh/config, скопировать файл мы сможем такой командой:

Удобненько, не правда ли?

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

В написании этого шедевра мне помогли следующие ресурсы:

Источник

Удаляем openssh, 100% защита от ботнета, миф?

Чем чревато удаление ssh (и клиент и сервер), в случае если удаленный доступ не требуется?

upd: как закрыть все порты кроме 80, и порт, используемый для обновления системы (к примеру у debian)?

45855: 581501832

половина софта работать не будет, которая от них зависит

например все, что требует удаленного управления? (оно как раз нам и ненадо, все верно)

любопытно, насколько это безопасно, если ботнеты будут ломится в 22 порт.

94068: 1999080131

Уаление openssh / openssl, 100% от ботнета, миф?

Чем чревато удаление ssh, в случае если удаленный доступ не требуется?

upd: как закрыть все порты кроме 80, и порт, используемый для обновления системы (к примеру у debian)?

94068: 1999080131

любопытно, насколько это безопасно, если ботнеты будут ломится в 22 порт.

При сложном пароле или настроенных ключах ничем, только логи будут замусориваться. И с этим можно бороться фильтрами, fail2ban всякими и т.п. А ещё можно тупо убрать sshd со стандартного порта на любой другой повыше и не париться совсем.

94068: 1999080131

Нет, неадекватное. Скорее всего сломается вообще всё хоть как то связанное с сетью.

ну, вопрос в другом ключе ведь, безопасно ли именно удалить и то и другое, и удалить из iptables исключение для порта 22)

94068: 1999080131

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

55251: 1977988440

убрать sshd со стандартного порта

и что мешает злоумышленнику подключиться на нестандартный? их не так уж и много, чтобы было сложно перебрать

Согласен, скурил пару мануалов по openssl, удалю из шапки темы упоминание о нем вообще, вдруг какой борец с ZOG снесет его ненароком))) ломает вообще все что связанно с сетью, все правильно.

121714:922829503

В случае серверов «ломают» как правило именно через 80 порт, а точнее через то похапешное дерьмо, что на нем висит. Так что вперед и с песней, пионер.

94068: 1999080131

и что мешает злоумышленнику подключиться на нестандартный? их не так уж и много, чтобы было сложно перебрать

Зайти помешает длинный сложный пароль или ключ. Речь не о злоумышленнике, а о тупых ботах, которые портов не перебирают, просто чтобы логи не пухли. Злоумышленнику придётся порты сканировать и искать ssh, это не есть вежливое и ожидаемое поведение от хоста и для таких ситуаци есть древний как копролит и надёжный как шотган portsentry например, не считая множества других IDS. Серьёзного дядю и это не испугает конечно, но 99% остальных будут зобанены на этом этапе.

60498: 1572548029

насколько это безопасно, если ботнеты будут ломится в 22 порт.

Это очень опасно и приводит к износу порта

55541: 1800678090

upd: как закрыть все порты кроме 80, и порт, используемый для обновления системы (к примеру у debian)?

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

143793:930442776

и как это поможет от уязвимости к примеру в движке сайта предоставляющему eval? В том то и дело что никак.

Просто через iptables закрой вх. соединения на 22 порт если конечно тебе самому доступ не нужен. И да, почитай теорию про iptables. Для обновления системы используются исх. соединения, а для доступа к данному пк по ssh вх.

66835: 701634471

если не веришь openssl (и правильно) libressl твой выбор

p

в случае если удаленный доступ не требуется?

Можно конкретный юз-кейс? Не могу себе представить ситуацию, когда доступ в интернет есть, а удалённый доступ в том или ином виде при этом не нужен и не снимает кучу лишнего геморроя.

55404: 418860797

Если у тебя CLI к серверу и так под рукой, или сервер под кроватью, то конечно тебе ssh не нужен.

p

Чем чревато удаление ssh (и клиент и сервер), в случае если удаленный доступ не требуется?

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

как закрыть все порты кроме 80, и порт, используемый для обновления системы (к примеру у debian)?

55251: 1977988440

ты наивно считаешь что если в боте реализован перебор паролей, там будет сложно реализовать перебор портов, если 22 не отвечает?

94068: 1999080131

ты наивно считаешь что если в боте реализован перебор паролей, там будет сложно реализовать перебор портов, если 22 не отвечает?

Потому что это тупо невыгодно. Стратегически лучше сразу после отлупа идти дальше по диапазону чем упорно высканивать неведомый порт ssh, который вполне может вообще отсутствовать, и тем самым беспокоить IDS. Сканирующий все порты в IP диапазоне в поисках неведомо чего ботнет долго не проживёт, быстро спалится и будет массово зобанен. Наивен тут ты, предлагаю прекратить несмешную клоунаду.

106718:1345237826

Зачем удалять? Просто останови sshd.

55251: 1977988440

почему это не выгодно? пока люди считают смену порта «защитой» по советам таких местных «аналитиков», такая атака имеет смысл. Ведь боты делают допущение, что существуют клоуны которые пользуются паролями для аутентификации SSH. Порт же перебрать дешевле чем пароли. К тому же никто не говорит, что сбор адресов, которые отвечают на 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:windowssystem32Openssh. Помимо клиентских приложений 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:windowssystem32Openssh
  1. Здесь запустите команду для создания ключей безопасности для сервера sshd:
ssh-keygen -A

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

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

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

  1. Нажмите кнопку «Добавить» и добавьте разрешение «Чтение» для пользователя «NT Servicesshd».
  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, поэтому в будущем он должен стать, более интересным и полезным.

I feel like I am missing some fundamental concept as to how the .ssh directory works in windows. I have had no issues when working in OSX/Linux like I am having now. My end goal is simply to move my existing ssh key into the default ~/.ssh directory, and update the config if I so choose (you know, normal ssh key related tasks).

However, any time I have tried to move my existing SSH key over to the ~/.ssh directory, or open it, or even create a config file I just get the following error (in either gitbash, puttygen, etc…):

Puttygen (saving the key to disk):

Overwrite existing file C:Usersme.ssh?

or in gitbash (attempting to do anything, including just create the config file):

touch: creating `/c/Users/me/.ssh/config': No such file or directory

cd ~/.ssh

sh.exe": cd: /c/Users/me/.ssh: Not a directory

What am I missing/not understanding?

Kind Regards,
u353

asked Apr 14, 2014 at 15:27

u353's user avatar

u353u353

9502 gold badges8 silver badges16 bronze badges

5

This answer for Windows environment:

At the beginning, Windows didn’t have .ssh folder.
Create an ssh key file pair like this (ssh-keygen is nowadays a native Windows command, that comes with Windows 10+11):

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" (must run your terminal as administrator).

Your is_rsa and id_rsa.pub files will be placed under C:Usersyour_username

So, you need to create the folder C:Usersyour_username.ssh then copy your ssh files (the extensionless private key and the public key ending in .pub) to there.

You also have to create file C:Usersyour_username.sshconfig and edit it for the first time.

Next ssh will be placed in the .ssh folder automatically.

Note: ~/ under Linux is the equivalent of C:Usersyour_username on Windows

Frank N's user avatar

Frank N

9,2984 gold badges76 silver badges107 bronze badges

answered Oct 9, 2019 at 3:44

dqthe's user avatar

dqthedqthe

6455 silver badges8 bronze badges

I have created and regularly use a «.ssh» directory on Windows 7; as mentioned in the above comments, Windows Explorer doesn’t support them, or more specifically, the error-checking in Windows Explorer does not allow you to give a file name that starts with a period. That same restriction does not exist in the command prompt or powershell.

Also, as mentioned above, it appears you have a file called «.ssh» in your home directory, which must be removed before you can create a folder named «.ssh».

Once such a folder exists, you can open it and change/create files in it using Windows Explorer; it just won’t let you name a folder/file «.ssh» directly.

Gitbash should directly allow you to run «rm .ssh» and «mkdir .ssh», at which point everything else should work.

answered Nov 10, 2015 at 7:58

Bryson's user avatar

BrysonBryson

811 silver badge3 bronze badges

It is quite possible to add a . in the beginning of a directories name using File Explorer, it can be easily done by adding a . at the end of the directory name as well. For example:

To create a directory named .shh, just add the name as .ssh. and it will be created without any error.

And as @Bryson mentioned, this can be done from the cli as well, without appending a . at the end.

answered Oct 17, 2018 at 13:59

mega6382's user avatar

mega6382mega6382

9,03117 gold badges48 silver badges69 bronze badges

Coming to this in 2018, given that on Windows 10 you have the Optional Feature OpenSSH client installed it appears that on Windows a .ssh folder is created for you under C:Users<your_username>.ssh

This is a feature that allows you to use PowerShell to SSH into remote hosts, and seems to be pretty similar in usage to the Linux/Unix equivalent. It was already installed for me when I setup my computer, but you can read the following for how to verify it’s installed or install it:

You can check if it’s installed by going to Settings -> Manage Optional Features, and then checking if you see OpenSSH in the list. If it is then your .ssh folder is probably in your home directory C:Users<your_username>.ssh. If you need to install it then click «Add a feature», locate OpenSSH Client, click it and click install to install it.

answered Nov 28, 2018 at 16:15

cody.codes's user avatar

cody.codescody.codes

1,2241 gold badge14 silver badges22 bronze badges

Use git bash on windows
go to home directory as

$ cd

then to check .ssh folder on home directory use

$ ls -A 

you will be able to see a ./ssh folder there

$ cd ./ssh
$ ls

you will be able to see the config files if exists

To transfer any key-pair or any files to this folder use below command
First to that directory in which you already have key-pair

$ cp name_of_key-pair_file.pem ~/.ssh/

answered Jun 28, 2020 at 5:56

Kartik Punjabi's user avatar

2

First of all, if you want to generate SSH files, all you need to do is run this command:

ssh-keygen

Once you did, .ssh folder will be generated in this path:

C:Usersyour_username

For checking what files are in .ssh folder you can easily run this command:

ls ~/.ssh

with this above command, you can see all your ssh files which would be like this:

id_rsa   id-rsa.pub

Please note that:

id_rsa : It’s a private file and
id-rsa.pub : It’s a public file

so, if you like to see inside of that file or whatever you like just type this command :

cat ~/.ssh/id_rsa.pub

answered Nov 9, 2021 at 16:41

Babak's user avatar

BabakBabak

832 silver badges3 bronze badges

To solve this problem I used git batsh console

answered May 11, 2021 at 23:06

Joselin Ceron's user avatar

This isn’t supported as Windows doesn’t recognize dot files as directories.

answered Apr 16, 2014 at 17:03

u353's user avatar

u353u353

9502 gold badges8 silver badges16 bronze badges

1

I feel like I am missing some fundamental concept as to how the .ssh directory works in windows. I have had no issues when working in OSX/Linux like I am having now. My end goal is simply to move my existing ssh key into the default ~/.ssh directory, and update the config if I so choose (you know, normal ssh key related tasks).

However, any time I have tried to move my existing SSH key over to the ~/.ssh directory, or open it, or even create a config file I just get the following error (in either gitbash, puttygen, etc…):

Puttygen (saving the key to disk):

Overwrite existing file C:Usersme.ssh?

or in gitbash (attempting to do anything, including just create the config file):

touch: creating `/c/Users/me/.ssh/config': No such file or directory

cd ~/.ssh

sh.exe": cd: /c/Users/me/.ssh: Not a directory

What am I missing/not understanding?

Kind Regards,
u353

asked Apr 14, 2014 at 15:27

u353's user avatar

u353u353

9502 gold badges8 silver badges16 bronze badges

5

This answer for Windows environment:

At the beginning, Windows didn’t have .ssh folder.
Create an ssh key file pair like this (ssh-keygen is nowadays a native Windows command, that comes with Windows 10+11):

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" (must run your terminal as administrator).

Your is_rsa and id_rsa.pub files will be placed under C:Usersyour_username

So, you need to create the folder C:Usersyour_username.ssh then copy your ssh files (the extensionless private key and the public key ending in .pub) to there.

You also have to create file C:Usersyour_username.sshconfig and edit it for the first time.

Next ssh will be placed in the .ssh folder automatically.

Note: ~/ under Linux is the equivalent of C:Usersyour_username on Windows

Frank N's user avatar

Frank N

9,2984 gold badges76 silver badges107 bronze badges

answered Oct 9, 2019 at 3:44

dqthe's user avatar

dqthedqthe

6455 silver badges8 bronze badges

I have created and regularly use a «.ssh» directory on Windows 7; as mentioned in the above comments, Windows Explorer doesn’t support them, or more specifically, the error-checking in Windows Explorer does not allow you to give a file name that starts with a period. That same restriction does not exist in the command prompt or powershell.

Also, as mentioned above, it appears you have a file called «.ssh» in your home directory, which must be removed before you can create a folder named «.ssh».

Once such a folder exists, you can open it and change/create files in it using Windows Explorer; it just won’t let you name a folder/file «.ssh» directly.

Gitbash should directly allow you to run «rm .ssh» and «mkdir .ssh», at which point everything else should work.

answered Nov 10, 2015 at 7:58

Bryson's user avatar

BrysonBryson

811 silver badge3 bronze badges

It is quite possible to add a . in the beginning of a directories name using File Explorer, it can be easily done by adding a . at the end of the directory name as well. For example:

To create a directory named .shh, just add the name as .ssh. and it will be created without any error.

And as @Bryson mentioned, this can be done from the cli as well, without appending a . at the end.

answered Oct 17, 2018 at 13:59

mega6382's user avatar

mega6382mega6382

9,03117 gold badges48 silver badges69 bronze badges

Coming to this in 2018, given that on Windows 10 you have the Optional Feature OpenSSH client installed it appears that on Windows a .ssh folder is created for you under C:Users<your_username>.ssh

This is a feature that allows you to use PowerShell to SSH into remote hosts, and seems to be pretty similar in usage to the Linux/Unix equivalent. It was already installed for me when I setup my computer, but you can read the following for how to verify it’s installed or install it:

You can check if it’s installed by going to Settings -> Manage Optional Features, and then checking if you see OpenSSH in the list. If it is then your .ssh folder is probably in your home directory C:Users<your_username>.ssh. If you need to install it then click «Add a feature», locate OpenSSH Client, click it and click install to install it.

answered Nov 28, 2018 at 16:15

cody.codes's user avatar

cody.codescody.codes

1,2241 gold badge14 silver badges22 bronze badges

Use git bash on windows
go to home directory as

$ cd

then to check .ssh folder on home directory use

$ ls -A 

you will be able to see a ./ssh folder there

$ cd ./ssh
$ ls

you will be able to see the config files if exists

To transfer any key-pair or any files to this folder use below command
First to that directory in which you already have key-pair

$ cp name_of_key-pair_file.pem ~/.ssh/

answered Jun 28, 2020 at 5:56

Kartik Punjabi's user avatar

2

First of all, if you want to generate SSH files, all you need to do is run this command:

ssh-keygen

Once you did, .ssh folder will be generated in this path:

C:Usersyour_username

For checking what files are in .ssh folder you can easily run this command:

ls ~/.ssh

with this above command, you can see all your ssh files which would be like this:

id_rsa   id-rsa.pub

Please note that:

id_rsa : It’s a private file and
id-rsa.pub : It’s a public file

so, if you like to see inside of that file or whatever you like just type this command :

cat ~/.ssh/id_rsa.pub

answered Nov 9, 2021 at 16:41

Babak's user avatar

BabakBabak

832 silver badges3 bronze badges

To solve this problem I used git batsh console

answered May 11, 2021 at 23:06

Joselin Ceron's user avatar

This isn’t supported as Windows doesn’t recognize dot files as directories.

answered Apr 16, 2014 at 17:03

u353's user avatar

u353u353

9502 gold badges8 silver badges16 bronze badges

1

Зачем нужен протокол SSH?

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

Datacenter
Источник: securityboulevard.com.

Специально для таких случаев существуют протоколы удаленного доступа. Они позволяют подключиться к удаленному компьютеру и работать на нем так же, как вы обычно работаете на локальной физической машине. Такие протоколы разделяются на графические и текстовые. Графические протоколы, например, RDP (remote desktop protocol) передают по сети изображение графического интерфейса в одну сторону, движения мыши и события клавиатуры — в другую. Текстовые протоколы, такие как Telnet или SSH, передают только текстовую информацию и позволяют работать в терминале удаленной машины. Здесь мы рассмотрим самый популярный текстовый протокол удаленного доступа — SSH.

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

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

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

Используя SSH можно подключиться к любой удаленной машине при соблюдении некоторых условий. Ни параметры удаленной машины, ни расстояние не имеют значения. Также можно подключаться как к физическим, так и к виртуальным машинам. При подключении, вы даже можете не знать, к чему вы подключаетесь, к физическому компьютеру или к виртуальной машине в датацентре какой-то компании. При работе никакой разницы вы не заметите.

Как и большинство сетевых протоколов, SSH работает по клиент-серверному принципу. То есть на вашем компьютере, за которым вы работаете физически должна быть установлена специальная программа — ssh клиент. С ее помощью вы и будете подключаться к другим машинам. А на удаленной машине, то есть той, к которой вы подключаетесь должна работать другая программа — ssh сервер. Она будет принимать ваше подключение, выполнять ваши команды, следить за правами доступа и так далее. Как настроить и клиент и сервер мы поговорим далее.

Выводы:

  1. При работе часто возникает потребность выполнять операции на разных удаленных хостах.
  2. Обычное незащищенное соединение для этого не подходит из-за проблем с безопасностью.
  3. Протокол SSH позволяет выполнять команды терминала на удаленной машине.
  4. Протокол SSH начинает шифровать соединение еще до ввода пароля пользователя.
  5. Таким образом можно подключаться к любым машинам, физическим и виртуальным.
  6. SSH является клиент-серверным протоколом. На локальной машине работает клиент ssh, на удаленной — сервер.

Что нужно для успешного удаленного доступа?

SSH client and server
Источник: Wikimedia.

Для того, чтобы иметь возможность подключиться к удаленной машине нужно соблюдение нескольких условий. Во-первых, как мы уже говорили, на ней должен быть установлен и работать ssh сервер. Существуют разные сервера, но самым распространенным является свободный и бесплатный сервер openssh. Он существует и для Linux и для Windows и для других операционных систем. Во многие дистрибутивы Linux, ориентированные на серверную работу он устанавливается по умолчанию. Если же его нет, то установить его очень просто командой:

1
$ sudo apt install openssh-server

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

Обратите внимание, что удаленная машина не должна быть скрыта NAT’ом или каким-либо сетевым экраном, блокирующим входящие соединения. Кстати, домание компьютеры, выходящие в интернет через обычного провайдера, как правило, как раз скрыты за NAT. Поэтому, находясь в своей домашней сети, вы сможете подключиться к другому компьютеру в ней, а извне — нет.

Протокол ssh никак не связан с интернетом. Вы можете подключаться к машинам, которые подключены в общую локальную сеть, независимо от того, есть ли выход в интернет. В любом случае, вы должны знать адрес удаленной машины, чтобы к ней подключиться. Обычно используется IP-адрес. Но если у сервера есть назначенное доменное имя — можете использовать его.

Кроме IP-адреса нужно знать номер сетевого порта, который прослушивает сервер ssh. По умолчанию любая служба ssh использует порт 22. Однако, администраторам при настройке сервера рекомендуется ради безопасности изменить порт на случайный. Поэтому для подключения надо знать, был ли переназначен стандартный порт и, если да, то на какой.

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

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

Как мы уже говорили, на локальной машине должне быть установле ssh-клиент. В *nix-подобных системах (Linux, macOS) клиент обычно установлен в системе по умолчанию, и достаточно открыть терминал и воспользоваться командой ssh. В Windows нужно скачать сторонний клиент, например, Putty. SSH-клиентов тоже существует много разных. Есть даже графические клиенты. Но даже в них придется работать в командной строке — ведь сам протокол ssh — чисто текстовый.

Выводы:

  1. Для подключения нужно знать адрес сервера, логин и пароль, порт подключения (по умолчанию, 22) .
  2. Еще нужно, чтобы сетевая инфраструктура была правильно настроена.
  3. Нужно, чтобы на удаленной машине работал сервер SSH.
  4. Самый распространенный сервер — OpenSSH — бесплатный и открытый.
  5. Нужно, чтобы удаленная машина была доступна по сети.
  6. Системные администраторы могут заблокировать доступ к порту ssh.
  7. По умолчанию, порты обычно закрыты, нужно их открыть.
  8. На локальной машине должен быть установлен клиент ssh.
  9. Есть консольные и графические клиенты ssh, но работать все равно придется в терминале.

Как подключиться к серверу из командной строки?

Для подключения нужно воспользоваться командой ssh. при запуске нужно указать адрес сервера, имя пользователя и, опционально, порт подключения. Вот как выглядит команда при использовании консольного клиента (в терминале):

1
$ ssh username@remote_host -p port

Например, для подключения к серверу 52.307.149.244 в аккаунт user нужно ввести:

1
$ ssh user@52.307.149.244

Если не указывать порт, то будет использован порт SSH по умолчанию — 22. Используемый порт задается при настройке SSH-сервера.

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

1
2
3
The authenticity of host '52.307.149.244 (52.307.149.244)' can't be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Введите yes в первый раз.

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

Простейший вариант — подключение по паролю. После ввода команды ssh система запросит пароль:

1
2
$ ssh ivan@52.307.149.244
password: 

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

После подключения вы войдете в командную строку удаленной машины. В командной строке немного чего изменится.

styled-image

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

Теперь можно вводить любые команды и они будут выполнены на удаленном компьютере. Порядок работы такой же, как и в обычной командной строке.

Для выхода из удаленного сеанса необходимо нажать комбинацию клавиш Ctrl + D. Либо можно ввести команду exit.

Выводы:

  1. Команда ssh username@remote_host осуществляет подключение к удаленному терминалу.
  2. Если вы подключились к этому компьютеру первый раз, нужно будет подтвердить его.
  3. Опция -p позволяет подключиться по любому номеру порта.
  4. После установки соединения вам нужно будет ввести пароль от удаленной учетной записи.
  5. После этого вы сможете работать в командной строке так же, как и на локальной машине.
  6. Для выхода из удаленного сеанса есть команда exit или сочетание Ctrl + D.

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

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

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

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

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

Итак, чтобы использовать авторизацию по ключу надо первым делом сгенерировать свою собственную пару ключей. Для этого используется программа ssh-keygen, которая включена в пакет ssh-клиента.

Создадим пару ключей:

Программа запустится и спросит, куда сохранять ключи:

1
2
Generating public/private rsa key pair.
Enter file in which to save the key (/home/demo/.ssh/id_rsa):

Нажмите Enter для сохранения в стандартное место — директорию .ssh/id_rsa в вашей домашней директории.

Программа запросит passphrase. Это вроде пароля для ключа. Пароль используется для дополнительной защиты — его надо будет вводить каждый раз при использовании ключа. Идея в том, что вместо разных паролей придется запомнить только один — от ключа. Можно просто нажать Enter и пропустить этот шаг.

1
2
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Ключи созданы:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Your identification has been saved in /home/demo/.ssh/id_rsa.
Your public key has been saved in /home/demo/.ssh/id_rsa.pub.
The key fingerprint is:
8c:e9:7c:fa:bf:c4:e5:9c:c9:b8:60:1f:fe:1c:d3:8a root@here
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|       +         |
|      o S   .    |
|     o   . * +   |
|      o + = O .  |
|       + = = +   |
|      ....Eo+    |
+-----------------+

Теперь у вас есть два файла:

  • ~/.ssh/id_rsa — приватный ключ. Никогда никому и никуда не передавайте его!
  • ~/.ssh/id_rsa.pub — публичный ключ. Спокойно распространяйте его.

В Windows можно использовать ssh-gen в подсистеме Ubuntu for Windows или в командной строке Git for Windows. Или создавать ключи графической утилитой вроде PuTTYgen.

После генерации необходимо скопировать ключ на удаленный сервер. Нужно добавить публичный ключ на сервер в файл ~/.ssh/authorized_keys. Самый простой способ — запустить на локальной машине команду для копирования ключа:

1
$ ssh-copy-id -i /home/demo/.ssh/id_rsa ivan@52.307.149.244

Обратите внимание, что при этом придется обязательно ввести пароль от учетки на сервере. Таким образом скопированный ключ подтверждает, что его владелец знает пароль, поэтому в будущем можно его пускать без проверки.

Другой способ — подключиться по паролю, открыть в редакторе файл ~/.ssh/authorized_keys и добавить в конец текст из вашего файла ~/.ssh/id_rsa.pub.

Теперь при подключении пароль запрашиваться не будет. После включения соединений по ключу рекомендуется отключить подключение по паролю в настройках ssh сервера.

Один и тот же публичный ключ можно использовать для авторизации на разных серверах. Просто скопируйте его туда, куда часто заходите. Кроме обычных компьютеров, авторизация через SSH по ключу используется и на многих публичных сервисах. Например, популярный хостинг программных репозиториев GitHub заставляет использовать именно доступ по ключу для синхронизации проектов. Многие облачные сервисы так же имеют возможность авторизации по ключу.

Только заметьте, что если вы скомпрометировали ваш приватный ключ, придется генерировать новую пару ключей. А затем придется рассылать новый публичный ключ по всем свои серверам. Причем, компрометация — это не когда вы его по ошибке где-то опубликовали, это когда возникает малейшее подозрение, что третьи лица могли получить к нему доступ.

Выводы:

  1. Запоминать много паролей от серверов часто неудобно и небезопасно.
  2. Асимметричное шифрование позволяет избежать ввода пароля каждый раз.
  3. Команда ssh-keygen позволяет сгенерировать пару ключей — приватный и публичный.
  4. Приватный ключ надо хранить в секрете. Если он скомпрометирован, придется создавать новую пару.
  5. Публичный ключ может удостоверять подлинность отправителя.
  6. Можно скопировать публичный ключ на сервер командой ssh-copy-id -i.
  7. Ключ может быть разослан на несколько серверов, и на них можно заходить без пароля.
  8. Ключ тоже можно защитить паролем.

Как запомнить частые подключения?

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

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

Этот файл имеет довольно простую структуру. В нем прописывается символьное имя подключения, которые вы будете использовать вместо строки подключения в команде ssh. После этого могут идти несколько опций, например — имя пользователя, адрес хоста, номер порта, адрес публичного ключа, который будет использоваться при подключении. Выглядит это примерно так:

1
2
3
4
5
6
7
8
9
10
11
12
Host targaryen
    HostName 192.168.1.10
    User daenerys
    Port 7654
    IdentityFile ~/.ssh/targaryen.key

Host tyrell
    HostName 192.168.10.20
    user oberyn

Host martell
    HostName 192.168.10.50

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

Все остальные параметры клиент подставит сам.

Выводы:

  1. Файл ~/.ssh/config используется, чтобы запомнить часто использующиеся подключения.
  2. Можно присвоить символьное имя и связать его с адресом, именем пользователя.
  3. В этом файле можно прописать использование определенного файла ключа.
  4. Файл приватного ключа в таком случае выступает идентификацией (identity).

Зачем нужна программа Tmux?

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

Чтобы обойти это ограничение, существуют специальные программы. Они не входят в стандартные дистрибутивы, так что их придется устанавливать отдельно. Такие программы работают резидентно, то есть в режиме сетевой службы и поэтому могут поддерживать сеанс даже после того, как пользователь отключился.

Tmux (terminal multiplexor) — популярная программа, значительно
облегчающая работы в терминале на удаленной машине. Среди
возможностей данной программы:

  • разделение экрана на несколько консолей
  • создание нескольких экранов
  • сохранение выполняющихся процессов на удаленной машине после выхода из сессии
  • расшаривание ssh сессий нескольким пользователям

То есть кроме поддержания сессии tmux сильно “прокачивает” стандартную командную строчку. Это очень упрощает и ускоряет сложную работу на сервере.

Для начала работы необходимо подключиться к удаленной машине по ssh.
Конечно, можно использовать программу tmux на локальной машине для
расширения возможностей терминала, но здесь мы рассмотрим возможности
этой программы при удаленном доступе к терминалу.

При необходимости нужно установить tmux, введя команду

Обратите внимание, что эта программа должна быть установлена именно на той машине, на которой вы будете выполнять команды. То есть, если вы планируете использовать ее для работы на удаленном сервере, то именно в нем она и должна быть установлена. Если она есть только на вашей локальной машине, на сервере она не заработает.

Теперь можно запустить tmux, введя одноименную команду:

На экране мы видим главное окно программы tmux:

Сочетание клавиш <Ctrl>+B позволяет вводить команды tmux. Наиболее
применимые команды:

  • ctrl-b c — запуск нового окна;
  • ctrl-b , — переименование окна;
  • ctlb-b p — переключение к предыдущему окну;
  • ctlb-b n — переключение к следующему окну;
  • ctlb-b w — вывести список окон;
  • ctlb-b % — разделение окна вертикально на две панели;
  • ctlb-b “ — разделение окна горизонтально;
  • ctlb-b d — отсоединиться от сессии;

Обратите внимание, сначала надо зажать <Ctrl>+B именно как комбинацию клавиш. Потом отпустить и сразу нажать клавишу, соответствующую нужной команде. Поначалу такая работа покажется очень неудобной, но со временем вы привыкните к такому оригинальному методу ввода команд.

Обратите внимание на нижнюю строчку. Здесь перечислены открытые окна
терминала. Можно воспринимать их как вкладки, по которым можно
перемещаться. Мы можем создать новое окно (ctrl-b c):

Теперь мы видим, что в нижней строке появилось окно 1. Звездочкой
обозначено текущее окно.

Мы можем также переименовать окно (ctrl-b ,), чтобы лучше ориентироваться. Это бывает полезно для организации рабочего пространства.

Теперь мы имеем второе окно (под номером 1, так как нумерация начинается с 0) с именем window1.

Давайте для иллюстрации запустим в первом окне команду htop:

Tmux позволяет вывести список всех созданных окон (ctrl-b w), в котором можно
перемещаться между ними. Также доступен предварительный просмотр
содержимого каждого окна:

Работая в этой программе можно также разделять пространство в отдельно
взятом окне на две панели. В каждой панели можно работать независимо,
вводить команды и наблюдать результат одновременно.

Текущее окно или панель можно разбить на две панели как вертикально (ctrl-b %), так и горизонтально (ctrl-b «). Панели можно дробить неограниченное число раз:

При выполнении команды exit (или ctrl-d) панель закрывается.

Если эта панель была единственной в окне — то закроется все окно, а если окно было единственным — программа tmux завершится.

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

Для запуска сессии необходимо запустить tmux со специальным параметром, указав имя сессии:

Запустим в этой сессии какой-нибудь интерактивный процесс:

Нажав сочетание клавиш ctrl-b d, отсоединимся от сессии:

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

Можно даже выйти из подключения к удаленной машине и спустя некоторое
время зайти обратно.

При запуске tmux можно вывести список всех открытых сессий:

Соответственно, можно вместо запуска нового терминала подключиться к
одной из существующих сессий:

Как мы можем наблюдать, терминал остался в том же состоянии, в котором мы его оставили, когда выходили из сессии:

Выводы:

  1. При отключении от удаленного хоста все запущенные процессы завершатся.
  2. Иногда нужно запустить процесс так, чтобы он продолжался на сервере после отключения.
  3. Для этого существуют специальные резидентные программы, например, tmux.
  4. Tmux организует сессии, которые продолжаются даже после отключения пользователя.
  5. Также вы можете продолжать работу с того места, с которого отключились.
  6. Tmux позволяет создавать несколько вкладок, разбивать окно терминала на области.
  7. Tmux сильно упрощает работу с терминалом и с удаленными серверами.
  8. Для работы tmux должен быть установлен на удаленном сервере.

Как включить и настройка SSH клиента, как применять в ОС Windows 10

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

Как включить SSH клиент в Windows 10

Функционал включен в загружаемый комплекс операционки, но считается дополнительной опцией. Необходима процедура отдельного запуска программы – в режиме «По умолчанию» процесс отключен. Этапы действий юзера:

  • кликнуть по кнопке «Пуск» на Рабочем столе персонального устройства;
  • выбрать раздел «Параметры». Внимание! Раздел обязательный для операционной системы Виндовс. Найти можно другими способами – через поисковую строку, запуск дополнительного окна «Выполнить»;

screenshot_1

  • перейти к подразделу «Приложения и возможности»;

screenshot_2

  • нажать на строку «Управление дополнительными компонентами»;

screenshot_3

  • в верхней части представленного списка предустановленных возможностей выбрать пункт «Добавить компонент» (если необходимый элемент уже установлен на персональном устройстве, его наименование будет отображено в перечне);

screenshot_4

  • прокрутить страницу колесиком мышки, в нижней части выбрать строку «Open SSH Client (Beta)», затем пункт «Установить».

screenshot_5

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

Настройка

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

  • главные пункты, необходимые для работы – название хоста, обозначение для пользователя и порта, через который был запущен SSH;

screenshot_6

  • запись данных можно осуществить любым подходящим способом (с использованием флагов -о или -р);
  • список команд для изменения параметров можно отобразить с помощью команды «man ssh_config»;
  • в момент запуска потребуется также ввести псевдоним для обновленного сервера;
  • в продолжение потребуется определить детали корректировок конфигурации.

screenshot_7

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

Как его применить

Для активации установленных корректировок используют отдельные команды. Этапы работы:

  • для стандартного подключения запускают наименование «$ ssh user@host». Внимание! В стандартном режиме необходимо сначала запустить подключение к серверу, а затем начинать вводить сочетания кодированных символов. Встроенный инструмент позволяет выполнять нужные действия без открытия удаленного блока;

screenshot_8

  • для перенаправления скрипта действий с помощью интерпретатора bash запускают комбинацию «- $ ssh user@host `bash -s` ˂ script.sh»;

screenshot_9

  • для запуска бекапа к удаленному сервису и восстановления сбившихся настроек используют символику «$ sudo dd if=/dev/sda | ssh user@host `dd of=sda.img`, затем $ ssh user@host `dd if=sda.img` | dd of=/dev/sda».

Кроме того, пользователь может выполнить запуск удаленного доступа без пароля командой «$ ssh-keygen -t rsa». Операция позволит создать ключ. В процессе потребуется ответить на предложенные ОС вопросы, поле Passphare необходимо оставить пустым.

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

Информационный портал IT Техник

Вам помогло? Поделитесь с друзьями — помогите и нам!

Начиная с Windows 10 1809 и Windows Server 2019 в операционной системе имеется встроенный SSH сервер, основанный на OpenSSH. В этой статье мы покажем, как установить и настроить OpenSSH сервер в Windows 10 и подключиться к нему удаленно по защищенному SSH протоколу (ну прям как в Linux 🙂 ).

Установка сервера OpenSSH в Windows

Рассмотрим, как установить компонент OpenSSH Server в Windows 10 1903 (Windows Server 2019 все выполняется аналогично).

Пакет OpenSSH (как и RSAT) уже включен в данные версии Windows в виде Feature on Demand (FoD).

При наличии прямого Интернет-подключения вы можете установить сервер OpenSSH с помощью PowerShell

Add-WindowsCapability -Online -Name OpenSSH.Server*

Или при помощи DISM:

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

В Windows 10 этот компонент также можно установить через панель Параметры (Приложения -> Управление дополнительными компонентами -> Добавить компонент). Найдите в списке Open SSH Server и нажмите кнопку Install).

Чтобы проверить, что OpenSSH сервер установлен, выполните:
Get-WindowsCapability -Online | ? Name -like ‘OpenSSH.Ser*’

Настройка SSH сервера в Windows

После уставной сервера OpenSSH в Windows вам нужно изменить тип запуска службы sshd на автоматический и запустить службу с помощью PowerShell:

Set-Service -Name sshd -StartupType ‘Automatic’
Start-Service sshd

С помощью nestat убедитесь, что теперь в системе запущен SSH сервер и ждет подключений на 22 порту:

netstat -na| find «:22»

Проверьте, что включено правило брандмауэра (Windows Defender Firewall), разрешающее входящие подключения к Windows по порту TCP/22.

Get-NetFirewallRule -Name *OpenSSH-Server* |select Name, DisplayName, Description, Enabled

Если правило отключено (состоянии Enabled=False) или отсутствует, вы можете создать новое входящее правило командой New-NetFirewallRule:

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

По умолчанию важным компоненты OpenSSH хранятся в следующих каталогах:

  • Исполняемые файлы OpenSSH Server: C:WindowsSystem32OpenSSH
  • Конфигурационный файл sshd_config (создается после первого запуска службы): C:ProgramDatassh
  • Журнал OpenSSH: C:windowssystem32OpenSSHlogssshd.log
  • Файл authorized_keys и ключи: %USERPROFILE%.ssh

При установке OpenSSH сервера в системе создается новый локальный пользователь sshd.

Sshd_config: Конфигурационный файл сервера OpenSSH

Вы можете изменить настройки сервере OpenSSH в конфигурационном файле %programdata%sshsshd_config.

Например, чтобы запретить SSH подключение для определенного доменного пользователя (и всех пользователей указанного домена), добавьте в конце файле директивы:

Чтобы разрешить подключение только для определенной доменной группы:

Либо можете разрешить доступ для локальной группы:

Можно запретить вход под учетными записями с правами администратора, в этом случае для выполнения привилегированных действий в SSH сессии нужно делать runas.

Следующие директивы разрешают SSH доступ по ключам (доступ к Windows через SSH по ключам рассмотрим подробно в следующей статье) и по паролю:

Вы можете изменить порт, на котором принимает подключения OpenSSH в конфигурационном файле sshd_config в директиве Port.

Подключение к Windows 10 через SSH

Теперь вы можете попробовать подключиться к своей Windows 10 через SSH клиент (я использую putty, но можно пользоваться встроенным ssh клиентом Windows).

При первом подключении появится стандартный запрос на добавление узла в список известных SSH хостов.

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

При успешном подключении запускается командная оболочка cmd.exe со строкой-приглашением.

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

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

Чтобы изменить Shell по умолчанию в OpenSSH с cmd.exe на PowerShell, внесите изменение в реестр такой командой:

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

Осталось перезапустить SSH подключение и убедиться, что при подключении используется командный интерпретатор PowerShell (об этом свидетельствует приглашение PS C:Usersadmin> ).

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

Клиент OpenSSH и сервер OpenSSH являются отдельными устанавливаемыми компонентами в Windows Server 2019 и Windows 10 1809. The OpenSSH Client and OpenSSH Server are separately installable components in Windows Server 2019 and Windows 10 1809. Пользователи с этими версиями Windows должны использовать приведенные ниже инструкции для установки и настройки OpenSSH. Users with these Windows versions should use the instructions that follow to install and configure OpenSSH.

Пользователи, получившие OpenSSH из репозитория GitHub PowerShell (https://github.com/PowerShell/OpenSSH-Portable) должны использовать инструкции из него и не должны использовать эти инструкции). Users who acquired OpenSSH from the PowerShell Github repo (https://github.com/PowerShell/OpenSSH-Portable) should use the instructions from there, and should not use these instructions.

Установка OpenSSH из пользовательского интерфейса параметров в Windows Server 2019 или Windows 10 1809 Installing OpenSSH from the Settings UI on Windows Server 2019 or Windows 10 1809

Клиент OpenSSH и сервер являются устанавливаемыми компонентами Windows 10 1809. OpenSSH client and server are installable features of Windows 10 1809.

Чтобы установить OpenSSH, запустите параметры и перейдите к разделу приложения > приложения и компоненты > Управление дополнительными функциями. To install OpenSSH, start Settings then go to Apps > Apps and Features > Manage Optional Features.

Просмотрите этот список, чтобы узнать, установлен ли клиент OpenSSH. Scan this list to see if OpenSSH client is already installed. В противном случае в верхней части страницы выберите «добавить компонент», а затем: If not, then at the top of the page select «Add a feature», then:

  • Чтобы установить клиент OpenSSH, найдите «клиент OpenSSH» и нажмите кнопку «установить». To install the OpenSSH client, locate «OpenSSH Client», then click «Install».
  • Чтобы установить сервер OpenSSH, найдите «сервер OpenSSH» и нажмите кнопку «установить». To install the OpenSSH server, locate «OpenSSH Server», then click «Install».

После завершения установки вернитесь в раздел приложения > приложения и компоненты > управления дополнительными компонентами, и вы увидите список компонентов OpenSSH. Once the installation completes, return to Apps > Apps and Features > Manage Optional Features and you should see the OpenSSH component(s) listed.

Установка сервера OpenSSH создаст и включит правило брандмауэра с именем OpenSSH-Server-in-TCP. Installing OpenSSH Server will create and enable a firewall rule named «OpenSSH-Server-In-TCP». Это разрешает входящий трафик SSH через порт 22. This allows inbound SSH traffic on port 22.

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

Чтобы установить OpenSSH с помощью PowerShell, сначала запустите PowerShell от имени администратора. To install OpenSSH using PowerShell, first launch PowerShell as an Administrator. Чтобы убедиться, что функции OpenSSH доступны для установки, выполните следующие действия. To make sure that the OpenSSH features are available for install:

Затем установите серверные и/или клиентские компоненты. Then, install the server and/or client features:

Удаление OpenSSH Uninstalling OpenSSH

Чтобы удалить OpenSSH с помощью параметров Windows, запустите параметры, а затем последовательно выберите приложения > приложения и компоненты > Управление дополнительными компонентами. To uninstall OpenSSH using the Windows Settings, start Settings then go to Apps > Apps and Features > Manage Optional Features. В списке установленных компонентов выберите компонент Клиент OpenSSH или сервер OpenSSH, а затем щелкните Удалить. In the list of installed features, select the OpenSSH Client or OpenSSH Server component, then select Uninstall.

Чтобы удалить OpenSSH с помощью PowerShell, выполните одну из следующих команд: To uninstall OpenSSH using PowerShell, use one of the following commands:

После удаления OpenSSH может потребоваться перезагрузка Windows, если служба используется в то время, когда она была удалена. A Windows restart may be required after removing OpenSSH, if the service is in use at the time it was uninstalled.

Начальная настройка SSH-сервера Initial Configuration of SSH Server

Чтобы настроить сервер OpenSSH для первоначального использования в Windows, запустите PowerShell от имени администратора, а затем выполните следующие команды, чтобы запустить службу SSHD: To configure the OpenSSH server for initial use on Windows, launch PowerShell as an administrator, then run the following commands to start the SSHD service:

Начальное использование SSH Initial use of SSH

После установки сервера OpenSSH в Windows можно быстро протестировать его с помощью PowerShell на любом устройстве Windows с установленным клиентом SSH. Once you have installed the OpenSSH Server on Windows, you can quickly test it using PowerShell from any Windows device with the SSH Client installed. В PowerShell введите следующую команду: In PowerShell type the following command:

Первое подключение к любому серверу приведет к появлению примерно следующего сообщения: The first connection to any server will result in a message similar to the following:

Ответ должен иметь значение «Да» или «нет». The answer must be either “yes” or “no”. Ответ да приведет к добавлению этого сервера в список известных узлов SSH в локальной системе. Answering Yes will add that server to the local system’s list of known ssh hosts.

На этом этапе вам будет предложено ввести пароль. You will be prompted for the password at this point. В целях безопасности пароль не будет отображаться при вводе. As a security precaution, your password will not be displayed as you type.

После подключения вы увидите командную оболочку, аналогичную следующей: Once you connect you will see a command shell prompt similar to the following:

Оболочкой по умолчанию, используемой сервером Windows OpenSSH, является Командная оболочка Windows. The default shell used by Windows OpenSSH server is the Windows command shell.

Как вы уже знаете, из предыдущей статьи, 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 от имени Администратора и выполните следующую команду и перезагрузите систему:

Файлы OpenSSH Server находятся в папке c:windowssystem32Openssh. Помимо клиентских приложений 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

  1. Здесь запустите команду для создания ключей безопасности для сервера sshd:

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

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

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

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

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

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

  1. Теперь необходимо разрешить использование SSH-порта в брандмауэре Windows. По умолчанию сервер использует порт 22. Запустите эту команду в командной строке или PowerShell от имени администратора:

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

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

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

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

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

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

Где 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 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, поэтому в будущем он должен стать, более интересным и полезным.

  • Start black windows 10 скачать
  • Stalker зов припяти не запускается на windows 10
  • Start all back скачать для windows 10
  • Ssh сервер для windows что это
  • Stalker shadow of chernobyl скачать торрент для windows 10