Как включить ssh в windows 10
Перейти к содержимому

Как включить ssh в windows 10

  • автор:

Installing OpenSSH on Windows 10

We have Installed OpenSSH on Linux Ubuntu, now let’s install OpenSSH on Windows 10.

Installing OpenSSH

We can use the following choco command to install OpenSSH, see Installing Chocolatey on Windows 10 for a quick Chocolatey setup.

We can use the snippet below to install OpenSSH with Chocolatey

The choco command will download the OpenSSH package to ‘C:\ProgramData\chocolatey\lib’ by default. The Choco command will also execute it’s chocolateyinstall.ps1 script which will in turn install OpenSSH to ‘C:\Program Files\OpenSSH-Win64’. Here we can locate the install-sshd.ps1.

We can use the snippet below to execute the install.sshd.ps1

OpenSSH requires host keys and access to those hosts private keys.

We can use the snippet below to generate all the ‘host’ keys needed by sshd
We can use the snippet below to grant the ‘NT Service\sshd’ read access to the host private key files

We will also need to open port 22 in the firewall for inbound traffic for SSH.

We can use the snippet below to generate all the ‘host’ keys needed by sshd

We will need this service running after a reboot, so let’s set the SSHD and the SSH-Agent service to auto-start mode.

We can use the snippet below to set both services to autostart

Now that we have OpenSSH installed let’s configure the sshd_config file.

We can use the snippet below to modify the Password Authentication and add the Powershell Subsystem.

Finally for these configurations to take affect we need to restart the SSHD Service.

We can use the snippet below to restart the SSHD Service.

Now that we have a OpenSSH configured let’s use it to connect to our Linux Server via Powershell Remoting.

Setting up the Cygwin environment

After the installation is completed we can set up our Cygwin from the desktop shortcut. Start the application as administrator! We are now going to set up our SSH host and client configurations by executing the following commands in the Unix terminal:

$ ssh-host-config

“Should StrictModes be used” > yes

“New local accout ‘sshd’?” > yes

“Do you want to install sshd as a service” > yes

“CYGWIN for daemon” > ntsec

“Do you want to use different name” > no

(so we will use the default cyg_server)

“Create new privileged user account” > yes

Password > ******** (type something for a password and remember it)

We are done here! You can check the screenshot below to verify your inputs. Now we are going to configure the user by typing ssh-user-config.

$ ssh-user-config

Create SSH2 RSA identity file > yes

type a password *****

Select ‘yes’ when prompted for connecting this machine with this identity.

SSH2 DSA identity > yes

type a password *****

Use this identity > yes

Do the same for ECDSA algorithm!

SSH1 RSA identity > no

Very important step before we continue is to execute the following command: $ net start sshd (to start the service). Now that we have everything set up in Cygwin, in order to make our SSH connection work on Windows we need to perform a few more crucial steps in configuring the Windows security policy. Within the Cygwin bash we can write > $ ssh -v localhost

On the prompts that follows, we answer with ‘yes’ and enter the password.

Now we started the ssh locally but if we try to start it remotely from our host machine we will get an error message with connection refused. To prevent this, we go to Control Panel, Users and select Change User Account Control settings (UAC). We set the bar to the minimum protection. (This could be just a temporary setting. We do this because the UAC policy is preventing remote connections to be done). This is the best time to run my registry file “Disable UAC”. Now we can go to our host computer and install PuTTY. After the installation is done we can open it and type our IP address of the remote machine with the SSH configuration.

We can click Open and establish a connection. For the security authentication we can select ‘yes’. Our username now is cyg_server and the password we specified. Whatever you try to attempt will always result in “Access Denied” so don’t be upset. Your password is right but there are a few more things that needs to be done… On the remote machine open Cygwin bash terminal and write these two commands just to be sure that they are not causing troubles in future:

$ mkpasswd.exe -l > /etc/passwd

$ mkgroup — local > /etc/group

Now run > $ cyglsa-config (This is optional Local Security Authority) Okay, let’s move on! Click the Windows Start button and select run (hold start + r). Type there gpedit.msc

Now read careful!

You can also delete the user account name from “Deny log on through remote desktop services” as well. However, it doesn’t affect much our login.

Okay get out of there quickly! We can now go to Control Panel and go to Users > Manage Accounts and we will see our User Account “cyg_server” appearing there and we don’t want this. On the next restart of the remote machine we will be held on the Windows Log on Welcome screen to choose which username we are going to use. Most probably we don’t want this as well. We can run Microsoft’s netplwiz application to set our main user to login automatically but this is pretty unprofessional. Now is the time to run the regkey that I provided in my Toolbox which is “HideUserOnWelcomeScreen”. Run that or write it manually! It will hide the username cyg_server and we won’t see it again, but we will be able to still use it in our remote login!

After all of this is done… We can go back to the host machine and run PuTTY again! Type the IP address 192.168.2.50 on port 22. Type username cyg_server and the password.

CONGRATULATIONS!

If you performed everything step by step it should have brought you here!

Now we got a great SSH remote connection!

Keep reading and I will show you how to make SSH Tunnels with PuTTY and how to establish a remote VNC connection. You will learn how to execute commands from our Unix terminal on the remote machine, how to start and close system processes with GUI or without a GUI. I will teach you how to control the remote system sound levels with just a console and much more.

Bonus to this chapter

In a real situation, we would definitely want our remote machine to keep its Firewall on. In this matter go to Control Panel -> Windows Firewall and fully activate it. While you are still in Windows Firewall, on the left side you will see Advanced Settings. Go there and it will open a new window. Select Inbound Rules and from the right side of the window choose New Rule… Select Port and click next. For specific ports write 21–23 and click next. Allow the connection and go next. Click next again and on the last window type a name SSH and description CYGWIN. If you want to have a terminal package manager so you can install any future apps with an ease, follow the instructions bellow!

Name already in use

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

  • Go to file T
  • Go to line L
  • Copy path
  • Copy permalink
  • Open with Desktop
  • View raw
  • Copy raw contents Copy raw contents

Copy raw contents

Copy raw contents

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

date24.11.2020
useritpro
directoryWindows 10, Windows Server 2019
commentsкомментарий 21

В 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 клиент установлен:

Get-WindowsCapability -Online | ? Name -like ‘OpenSSH.Client*’

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

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

  • С помощью команды PowerShell: Add-WindowsCapability -Online -Name OpenSSH.Client*
  • С помощью DISM: dism /Online /Add-Capability /CapabilityName:OpenSSH.Client

клиент openssh установить компонент

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

  • ssh.exe – это исполняемый файл клиента SSH;
  • scp.exe – утилита для копирования файлов в SSH сессии;
  • ssh-keygen.exe – утилита для генерации ключей аутентификации;
  • ssh-agent.exe – используется для управления ключами;
  • ssh-add.exe – добавление ключа в базу ssh-агента.

исполняемые файлы OpenSSH

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

Чтобы запустить SSH клиент, запустите командную строку PowerShell или cmd.exe . Выведите доступные параметры и синтаксис утилиты ssh.exe, набрав команду:

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 клиента в windows

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

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

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

При первом подключении появится запрос на добавление ключа хоста в доверенные, наберите yes -> Enter (при этом отпечаток ключа хоста добавляется в файл C:\Users\username\.ssh\known_hosts).

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

подключение из windows 10 в linux с помощью встроенного ssh клиента

Если вы используете 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 копирование файлов через ssh

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

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

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

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

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *