Клиент openssh в 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 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 kopirovanie fajlov cherez ssh

scp.exe «E:ISOCentOS-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 без установки сторонних приложений и утилит.

Безопасная оболочка (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)?

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

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

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

66835: 701634471

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

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

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

55404: 418860797

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

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

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

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

55251: 1977988440

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

94068: 1999080131

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

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

106718:1345237826

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

55251: 1977988440

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

Наивен тут ты, предлагаю прекратить несмешную клоунаду.

и перестать давать идиотские советы