Как установить ssh клиент на windows

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

Содержание:

  • Установка клиента OpenSSH в Windows 10
  • Как использовать SSH клиенте в Windows 10?
  • SCP: копирование файлов из/в Windows через SSH

Установка клиента 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.Client установка в windows 10

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

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

  • С помощью команды PowerShell:
    Add-WindowsCapability -Online -Name OpenSSH.Client*
  • С помощью DISM:
    dism /Online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0
  • Через Параметры -> Приложения -> Дополнительные возможности -> Добавить компонент. Найдите в списке Клиент OpenSSH и нажмите кнопку Установить.

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

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

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

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

Вы можете установить OpenSSH и в предыдущих версиях Windows – просто скачайте и установите Win32-OpenSSH с GitHub (есть пример в статье “Настройка SSH FTP в Windows”).

Как использовать 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 username@host

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

ssh username@host -p port

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

ssh [email protected]

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

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

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

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

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

ssh [email protected] -i "C:\Users\username\.ssh\id_rsa"

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

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

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

ssh-add "C:\Users\username\.ssh\id_rsa"

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

ssh [email protected]

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

  • -C
    – сжимать трафик между клиентом и сервером (полезно на медленных и нестабильных подключениях);
  • -v
    – вывод подробной информации обо всех действия клиента ssh;
  • -R
    /
    -L
    – можно использовать для проброса портов через SSH туннель.

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

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

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

scp.exe копирование файлов через ssh

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

scp -r E:\ISO\ [email protected]:/home

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

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

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

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

Прочитано: 3 770

В виду того факта, что теперь рабочая система на работе – это как правило Windows 10 Pro x64, то нужно как-то выходить из ситуации когда нужно подключаться к оборудованию или системам Ubuntu Bionic по безопасному каналу. Можно это делать, либо скачивать и использовать клиент Putty, либо же обойтись тем что имеет в своем распоряжении сама система Windows 7 Pro amd64

Текущая система:

  • Windows 10 Pro x64 Russian
  • Version 10.0.17134.112

Запускаю консоль PowerShell с правами локального администратора:

Win + X → Power Shell (Admin)

PS C:\Windows\system32> get-windowscapability -online | ? Name -like 'OpenSSH*'

Доступна клиентская часть SSH для установки если нужно

  • Name : OpenSSH.Client~~~~0.0.1.0
  • State : Installed

Доступна серверная часть SSH для установки если нужно

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

Мне нужен клиент, потому и устанавливаю:

PS C:\Windows\system32> Add-WindowsCapability -online -name OpenSSH.Client~~~~0.0.1.0

  • Path :
  • Online : True
  • RestartNeeded : False

Из вывода видно, что клиент SSH установлен, перезагружать систему не требуется:

PS C:\Windows\system32> 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]

Пробую подключиться к Ubuntu 18.04 Server amd64 с Windows 10 используя установленный нативный ssh клиент:

PS C:\Windows\system32> ssh -l ekzorchik 192.168.100.143 -p 22

The authenticity of host '192.168.100.143 (192.168.100.143)' can't be established.

ECDSA key fingerprint is SHA256:BQTN+Vc7LxC1zGeHc9oZRskg1ECaI/bELDUL8L3GJsw.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added '192.168.100.143' (ECDSA) to the list of known hosts.

ekzorchik@192.168.100.143's password:

Welcome to Ubuntu 18.04.1 LTS (GNU/Linux 4.15.0-29-generic x86_64)

* Documentation: https://help.ubuntu.com

* Management: https://landscape.canonical.com

* Support: https://ubuntu.com/advantage

System information as of Wed Oct 31 11:20:42 MSK 2018

System load: 0.16 Processes: 96

Usage of /: 7.6% of 48.02GB Users logged in: 1

Memory usage: 8% IP address for enp0s3: 192.168.100.143

Swap usage: 0%

28 packages can be updated.

7 updates are security updates.

Last login: Wed Oct 31 11:20:05 2018

ekzorchik@srv-bionic:~$

Работает. Можно и не ставить/скачивать клиент Putty. Правда в Putty больше возможностей чем в средствах операционной системы Windows 10 Pro или я не прав и это только по моему не знанию. Ладно, заметка имеет место быть, как расширение кругозора. На этом я прощаюсь, с уважением автор блога Олло Александр aka ekzorchik.

  • OpenSSH for Windows allows you to securely access remote computers with Windows-native tools using the command line interface.
  • To install OpenSSH Client and Server on Windows, go to Settings > System > Optional features > View features, search for “OpenSSH“, and continue to install the components.

Windows users normally use the Remote Desktop Protocol to access other Windows devices remotely. As RDP offers a remote graphical user interface (GUI), it is a convenient method for remote access. However, it offers limited functionality, especially if you are a sysadmin. For that purpose, some people prefer to use the Secure Socket Shell (SSH) protocol.

SSH provides a command-line interface to remote computers and servers, and therefore, a more granular control over them. Previously, we used third-party apps like “PuTTY” and “MobaXterm” to develop an SSH connection with the remote devices. However, Microsoft has made a Windows-native SSH client available which can be used instead.

OpenSSH for Windows is a Feature on Demand (FoD) add-on for the Windows operating system. This means that although it is free, it is not installed by default, and needs to be installed manually. If you install it, you can use the SSH protocol through the native command line to access and control the remote computers, provided that your user account has the required privileges.

This guide will show you how to install and use OpenSSH for Windows. These will work on both Windows 11 and Windows 10 (version 1809 and above). Using this guide, you can install both OpenSSH Client and OpenSSH Server in a few easy steps.

Table of Contents

What is OpenSSH

The Secure Socket Shell, or Secure Shell is a networking protocol that allows a remote connection with another device securely. SSH uses a client-server model to communicate with remote computers and ensures data integrity through encryption. It uses multiple layers of the OSI reference model to make sure that the communicated data between the devices is secure.

Originally, OpenSSH was a tool used for remote connection with other devices which comes preinstalled in Linux-based operating systems. Since it is an open-source utility, it has been modified for other platforms, including Windows.

Microsoft has now made “OpenSSH for Windows” available that you can install with a small update package.

Before installing OpenSSH, your system needs to meet a few requirements.

Requirements for OpenSSH for Windows

Before proceeding to install either OpenSSH Client or Server, you must make sure that your PC satisfies the prerequisites, which are:

  • OS should be Windows 10 version 1809 or later.
  • The PowerShell version should be 5.1 or above
  • The user account must be a member of the Administrators group.

To check the OS version, run the following command in the Run Command box:

WinVer

To check the PowerShell version, run the following command in PowerShell:

$PSVersionTable.PSVersion

To check if your user is a member of the Administrators group, run the following command in PowerShell. If it returns “True“, it means that you are a member of the Administrator group.

(New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)

Once you have made sure that your PC satisfies these requirements, you may continue to install OpenSSH Client, OpenSSH Server, or both.

Install OpenSSH on Windows

Implement the following steps to install OpenSSH on your Windows computer to access it remotely. Optionally, you can also install “OpenSSH Server” to access this device from another PC using the SSH protocol.

  1. Press the Windows key + i to open the Settings app.

  2. Click System.

  3. Go to “Optional Features“.

    Open the optional features settings page

    Open the optional features settings page
  4. Click “View features“.

    View optional features

    View optional features
  5. Search for “OpenSSH“.

  6. Select “OpenSSH Client” and optionally, “OpenSSH Server“, and then click Next.

    Select OpenSSH Client and Server

    Select OpenSSH Client and Server
  7. Click Install.

    Install OpenSSH Client and Server on Windows

    Install OpenSSH Client and Server on Windows

After performing these steps, OpenSSH Client (and Server) will be installed on your computer.

Note: These features can take some time to install.

Alternative to the steps above, you can also run the following command in an elevated PowerShell instance to install OpenSSH for Windows:

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

This command will install both OpenSSH Client and OpenSSH Server.

Using OpenSSH Client for Windows

Once OpenSSH Client for Windows has been installed, you can begin using it to connect with remote PCs on the network. Of course, OpenSSH has to be configured on the remote PC first, the method for which has been given below in this post.

First, confirm that it has been installed successfully by running the following command in Command Prompt:

ssh
Confirm OpenSSH installation

Confirm OpenSSH installation

Once confirmed, you can access a remote PC on the network which has SSH configured using this command:

ssh [Username]@[ServerName]
Connect to remote PC using SSH

Connect to remote PC using SSH

Note: You may be asked for user credentials if connecting for the first time.

Note that the command above will try to connect to the remote device using the default port, which is 22. If you want to use a different port, then you will need to use this command instead:

ssh [Username]@[ServerName] -p [PortNumber]
Connect to remote PC using SSH using specific port

Connect to remote PC using SSH using specific port

Configuring OpenSSH Server for Windows

If you have installed the OpenSSH Server on your Windows PC, you will need to configure it before you can connect to this PC using the SSH protocol.

Configuring the OpenSSH server can be a bit thicker. You need to make sure that it is allowed through the firewall and the proper ports. Therefore, it involves a few steps. Here is what you need to do:

  1. First, run the following command in an elevated PowerShell to run the “sshd” service automatically.

    Set-Service -Name sshd -StartupType 'Automatic'
  2. Now start the service with this command:

    Start-Service sshd
  3. Now use the following command to ensure that the SSH server is running and waiting for the connections on port 22:

    netstat -na| find ":22"
  4. Now ensure that the Windows Defender Firewall allows inbound connections to Windows through the TCP port 22 with this command:

    Get-NetFirewallRule -Name *OpenSSH-Server* |select Name, DisplayName, Description, Enabled
    Confirm rules for SSH server connecton

    Confirm rules for SSH server connection
  5. [Conditional] If you find that the rule is missing or disabled, run the following command to create a new inbound rule:

    New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
  6. To change the default rules for the SSH connection, run the following command in PowerShell which will open the respective OpenSSH file in Notepad:

    start-process notepad C:\Programdata\ssh\sshd_config
  7. Make the necessary changes in the file to manage the permissions, and then save the file using the CTRL + S shortcut keys.

    Here are a few examples of the rules:

    • Deny domain user: DenyUsers itt\administrator@192.168.10.10
    • Allow a domain group: AllowGroups itt\sshadmins
    • Allow local groups: AllowGroups Administrators
    Manage SSH permissions

    Manage SSH permissions
  8. After making the changes, run the following command in PowerShell:

    restart-service sshd

After performing the steps above, you should be able to connect to this PC using the SSH protocol. For that purpose, use the command ssh [Username]@[ServerName] as discussed above.

Conclusion

With SSH, you do not need to perform a long string of operations to perform a simple task. Instead, you can access it with Windows-native OpenSSH and continue to manage the remote PC using commands. This makes OpenSSH for Windows an excellent utility for network and system administrators.

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

На компьютерах с Windows, бесплатное ПО PuTTY является стандартом де-факто, когда дело доходит до SSH и Telnet. В Windows 10 Microsoft, наконец, прислушалась к просьбам пользователей после нескольких лет ожиданий, Microsoft добавила поддержку протокола OpenSSH в версии обновления Fall Creators.

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

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

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

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

Справа нажмите «Управление дополнительными компонентами».

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

«Добавить компонент»

  1. В списке компонентов выберите OpenSSH Client и нажмите кнопку «Установить».

В списке компонентов выберите OpenSSH Client и нажмите кнопку «Установить».

Включить клиент OpenSSH в Windows 10

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

  • scp.exe
  • sftp.exe
  • SSH-add.exe
  • SSH-agent.exe
  • SSH-keygen.exe
  • ssh.exe
  • и конфигурационный файл «sshd_config».
  1. Перезагрузите Windows 10, В противном случае вам придется ввести полный путь к этим файлам, чтобы использовать их.

Попытка запустить ssh без перезапуска приводит к этой типичной ошибке.

PS C:\> ssh
sshd : The term ‘ssh’ is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ sshd
+ ~~~~
    + CategoryInfo          : ObjectNotFound: (ssh:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

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

PS C:\> ssh
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
       [-D [bind_address:]port] [-E log_file] [-e escape_char]
       [-F configfile] [-I pkcs11] [-i identity_file]
       [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec]
       [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
       [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]
       [user@]hostname [command]

клиент SSH windows 10

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

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

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

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

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

  1. Откройте новое окно командной строки.
  1. Введите команду ssh, используя следующий синтаксис:

​Например подключение к серверу CentOS 7

ssh username@171.16.1.10

Результат будет следующим:

ssh username@171.16.1.10
The authenticity of host ‘171.16.1.10 (171.16.1.10)’ can’t be established.
ED42519 key fingerprint is SHA256:REMOVED.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘171.16.1.10’ (ED42519) to the list of known hosts.
username@171.16.1.10’s password:
Last login: Tue Oct 31 00:23:33 2017 from 10.22.202.6
[username@centos ~]$ uname -a
Linux centos 3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

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

Тем не менее, есть еще много ситуаций, когда добрый старый PuTTY выигрывает гонку. Как по мне, встроенное ПО OpenSSH хорошо работает для базовых функций, если вы не хотите устанавливать PuTTY на ПК. Это также полезно, если вы профессиональный пользователь Linux, который наизусть знает все параметры клиента SSH.

Уровень сложностиПростой

Время на прочтение5 мин

Количество просмотров307K

Программистов, сисадминов, devops’ов, тестировщиков часто объединяет использование некоторых общих технологий. Например, возможность иметь удалённый доступ к серверу пригодилось бы любому из указанной выше анекдотичной компании. Поэтому в этой статье мы рассмотрим основы работы с протоколом SSH на базовом уровня (без генерации ключей, подписей, мам, пап и кредитов). «Продвинутое» использование посмотрим уже отдельно, в следующий раз. Материал подготовил Макс, автор YouTube-канала PyLounge. Поехали!

Введение

SSH (Secure SHell — защищенная оболочка) — сетевой протокол прикладного уровня, предназначенный для безопасного удаленного доступа к различным системам (Linux, Windows, Mac).

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

Эта служба была создана в качестве замены не зашифрованному Telnet и использует криптографические техники, чтобы обеспечить, что всё сообщение между сервером и пользователем было зашифровано.

Чтобы установить SSH-соединение, необходимы два компонента: SSH-сервер и SSH-клиент. Сервер прослушивает определенный порт (по умолчанию это порт 22) и при успешной аутентификации дает доступ пользователю. Все команды, которые используются на SSH-клиенте, отправляются через защищенный канал связи на SSH-сервер, на котором они выполняются и откуда отправляют результат работы обратно клиенту.

SSH-сервер

Устанавливается на управляемой операционной системе и принимает входящие подключения от клиентских машин, проверяя соединение одним из способов:

  • по IP-адресу клиента, что не слишком безопасно из-за риска подмены;

  • по публичному ключу клиента и имени пользователя. Нужно создать приватный (закрытый) и публичный (открытый) ключ. Зашифровав информацию одним ключом, можно расшифровать ее только другим;

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

Платные и бесплатные SSH-серверы есть для всех распространенных ОС:

  • BSD — OpenSSH;

  • Linux — dropbear, lsh-server, openssh-server;

  • Windows — freeSSHd, copssh, WinSSHD, OpenSSH и т. д.

SSH-клиент

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

SSH-клиенты разработаны для всех ОС. Имеют платные и бесплатные версии:

  • Linux/BSD — openssh-client, putty, ssh, Vinagre;

  • Windows — PuTTY, SecureCRT, ShellGuard;

  • Android — connectBot.

Встроенный SSH-клиент Windows, основанный на OpenSSH, предустановлен в ОС, начиная с Windows 10 1809.

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

Установка с помощью менеджера пакетов apt-get:

sudo apt-get install openssh-server

Проверка SELinux

Security Enhanced Linux, или SELinux – это усовершенствованный механизм контроля доступа, встроенный в большинство современных дистрибутивов Linux. Первоначально он был разработан Агентством национальной безопасности США для защиты компьютерных систем от вторжения злоумышленников и взлома. SELinux также может помешать работе с ssh. Поэтому необходимо убедиться, что он отключен, либо отключить его.

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

sudo apt-get install policycoreutils
sudo apt-get install net-tools

Проверяем статус SELinux. Состояние должно быть disable.

sestatus

Подключение к виртуальной машине с типом подключения NAT

Если виртуальная машина использует тип сетевого подключения NAT, то первоначально необходимо настроить проброс портов. Пробросим порт хоста 2222 (или любой свободный) на гостевой порт виртуальной машины номер 22 (порт ssh по умолчанию).

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

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

Т.к. в качестве сетевого подключения у виртуальной машины используется NAT, при подключении мы будем указывать петлевой адрес localhost (127.0.0.1) c портом, на который был назначен проброс.

После этого вводим имя пользователя (пользователь должен существовать в linux!!!) и пароль от этого пользователя.

Подключение по ssh через Командную строку Windows (cmd)

Запускаем командную строку сочетанием клавиш Win + R . В открывшемся окне указываем cmd. Нажимаем OK.

В общем видео подключение по ssh имеет вид:

ssh имя_пользователя@ip_адрес_компьютера_к_которому_подключаемся -p порт

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

В открывшемся окне вводим команду:

ssh student@127.0.0.1 -p 2222

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

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

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

Установка статического ip

Начиная с выпуска Ubuntu 17.10 NetPlan теперь это инструмент настройки сети по умолчанию для управления настройками сети, заменяющий файл конфигурации /etc/network/interfaces, который использовался в предыдущих версиях.

Файлы конфигурации для Netplan находятся в каталоге /etc/netplan и написаны на языке YAML. В этом каталоге вы найдете файлы конфигурации YAML.

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

sudo nano /etc/netplan/*.yaml

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

network:  
  version: 2
  renderer: NetworkManager
  ethernets:
      enp0s3:
          dhcp4: false
          addresses: [10.40.0.224/24]
          gateway4: 10.40.0.1
          nameservers:
              addresses: [10.2.0.8, 10.2.0.3]

Здесь:

  • ethernets — указывает на проводное Ethernet подключение;

  • enp0s3 — имя сетевого интерфейса (можно узнать командой ifconfig);

  • dhcp4 — автоматическая выдача ipv4-адреса с помощью службы dhcp (для ipv6 указывать dhcp6);

  • addresses — ip-адрес и маска сети, которые назначаются компьютеру;

  • gateway4 — шлюз по умолчанию;

  • nameservers — список dns-серверов.

Посмотреть настройки можно с хостовой машины на Windows с помощью команды ipconfig /all.

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

sudo netplan apply

Подключение по ssh

Запускаем командную строку сочетанием клавиш Win + R . В открывшемся окне указываем cmd. Нажимаем OK.

В открывшемся окне вводим команду:

ssh student@10.40.0.224

Вводим пароль пользователя. Всё. Вы великолепны (2)!

Заключение

Несмотря на высокую защиту протокола, использование стандартного порта значительно повышает риск взлома сервера. Например, это можно сделать при помощи brute-force (атака полным перебором). Порт 22 — открытый, поэтому злоумышленнику нужно только подобрать логин и пароль к серверу. Это сложно, но возможно. Чтобы максимально ограничить доступ к серверу для злоумышленников (настроить брандмауэр, iptables), можно сменить SSH-порты.

Ресурсы, которые использовал

  1. Как включить SSH в Ubuntu 20.04 (Routerus):https://routerus.com/how-to-enable-ssh-on-ubuntu-20-04/

  2. Коротко об SSH / Хабр: https://habr.com/ru/sandbox/166705/

  3. Что такое SSH (блог REG.RU): https://help.reg.ru/support/hosting/dostupy-i-podklyucheniye-panel-upravleniya-ftp-ssh/chto-takoye-ssh

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как проверить ssd на компьютере windows 10
  • Что делать если файл занят другой программой windows 10
  • Изменение переключения раскладки клавиатуры windows 10
  • Копирование ключа ssh windows
  • Driver для интернета windows 10