Ssh connection windows to linux

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

Если вы покупаете VPS сервер или продвинутый хостинг, обычно в письме вместе с другими данными авторизации есть данные доступа по SSH. В этой статье мы рассмотрим как подключиться по SSH к серверу из Linux или Windows.

Содержание статьи

  • Что такое SSH?
  • Как подключиться по SSH

  • Выводы

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

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

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

Для подключения по SSH нам необходимо знать такие данные:

  • ip адрес сервера, к которому мы собираемся подключится;
  • порт, на котором ожидает подключения SSH сервер, по умолчанию используется 22, но в целях безопасности порт подключения ssh часто изменяют;
  • имя и пароль пользователя на удаленном сервере.

Больше ничего не нужно, обычно эти данные присылают в письме вместе с описанием VPS. Теперь перейдем к практике.

1. Подключение через SSH в Linux

В Linux подключение по SSH выполняется с помощью утилиты ssh. Мы более подробно рассматривали работу с ней в статье как пользоваться ssh. Для подключения к удаленному компьютеру ее синтаксис будет выглядеть следующим образом:

$ ssh имя_пользователя@айпи_адрес

Это самый простой вариант, если вам также нужно задать порт, используйте опцию -p:

$ ssh имя_пользователя@айпи_адрес -p порт

Чтобы выполнить подключение по SSH Linux нажмите Ctrl+Alt+T для открытия терминала и наберите команду, заменив нужные значения:

ssh sergiy@192.168.1.2

Или, с нестандартным портом:

ssh sergiy@192.168.1.2 -p 2223

Если ip_адрес и порт правильные, то на следующем шаге программа попросит у вас ввести пароль:

Если пытаетесь подключится через SSH к этому серверу первый раз, то утилита также попросит подтвердить добавление нового устройства в свой список известных устройств, здесь нужно набрать yes и нажать Enter:

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

Если же произошла ошибка и IP адрес или порт введены неверно, то вы получите ошибку Connection Refused:

Просто убедитесь что порт введен верно. Если это ваш сервер, то, возможно на нем еще нужно разрешить подключение SSH в брандмауэре. В Ubuntu/Debian для этого на удаленном сервере выполните:

sudo ufw allow 22/tcp

А в CentOS/Fedora:

firewall-cmd --permanent --zone=public --add-port=22/tcp

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

Теперь вы знаете как подключиться по ssh linux и решить проблемы с подключением. А теперь перейдем к Windows.

2. Подключение через SSH в Windows

Раньше подключение по SSH из Windows выполнялось только с помощью сторонних утилит, например PuTTY. Но в Windows 10 был добавлен встроенный OpenSSH клиент и работает он точно так же, как и в Linux. По умолчанию этот компонент не активирован. Для его установки откройте Параметры -> Приложения:

Затем выберите Управление дополнительными компонентами:

Здесь нажмите добавить новый компонент и в открывлемся меню выберите OpenSSH Client и нажмите Установить:

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

После перезагрузки нажмите Win+R чтобы открыть окно запуска команд и наберите в нем cmd:

Далее нажмите Enter. Перед вами откроется командная строка Windows. Здесь можно использовать утилиту ssh. Синтаксис у нее абсолютно такой же, как и для Linux:

ssh имя_пользователя@айпи_адрес -p порт

Например, такой командой можно подключится по SSH к Raspberry Pi, который находится в вашей локальной сети по адресу 192.168.1.5:

ssh pi@192.168.1.5

Утилита предложит добавить устройство в список известных:

Затем предложит ввести пароль:

Все следующие команды будут выполняться уже на Raspberry Pi или другой удаленной машине, к которой вы подключились.

Теперь подключиться к серверу по ssh из этой операционной системы также просто как и из Linux.

Выводы

В этой статье мы рассмотрели как выполняется подключение к серверу по SSH из Linux или Windows. Как видите, это очень просто. А дальше, для работы с удаленным сервером вам понадобятся команды терминала Linux.

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

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

Запись видеоурока во ВКонтакте

Запись видеоурока на RuTuBe

Запись видеоурока на YouTuBe

SSH (Secure Shell – Безопасная оболочка) – протокол позволяющий производить удаленное управление операционной системой и осуществлять передачу данных, таких как файлы, аудио и видео потоки. Преимущества данного протокола в том, что он шифрует весь передаваемый трафик, включая пароли.

PuTTY – программа, позволяющая подключаться к системам через протоколы удаленного доступа, такие как SSH, Telnet и другие. Однако, судя из нашей задачи мы будем её использовать для работы именно с через протокол SSH.

Установка и настройка сервера SSH

В процессе установки операционной системы мы указывали, что нам необходимо установить SSH сервер. Если вы этого не сделали, то запустите авторизуйтесь в консоли и запустите команду:

sudo apt install openssh-server

Как вы видите, система выдает нам сообщение, что сервер openssh уже установлен в системе.

Linux Ubuntu | Подключение по SSH через PuTTY с Windows

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

Установка и работа в программе PuTTY

Скачиваем программу PuTTY с официального сайта https://putty.org.ru \ Скачать \ Обычная версия: putty-0.73-ru-17.zip \ Разархивируем и устанавливаем.

У меня она уже установлена, поэтому я её запускаю и попадаю в основной раздел, с которым мы будем работать, это раздел Session (сессии), т.е. подключения к удаленным системам.

У вас здесь будет только пункт Default Settings (Настройки по умолчанию) \ Вводим ip адрес нашего сервера, 192.168.88.50 \ Port: 22 \ Connect type: SSH \ Сразу сохраним параметры подключения к данному серверу, чтобы не вводить их каждый раз \ Save sessions \ Ubunbu-srv \ Save. Теперь подключение с данным именем появилось у нас в списке сохраненных сеансов.

Linux Ubuntu | Подключение по SSH через PuTTY с Windows

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

Если вы забыли адрес сервера, то в консоли вводим команду:

ip ad

и видим настройки сетевых подключений присутствующих в системе

Linux Ubuntu | Подключение по SSH через PuTTY с Windows

Нажимаем Open, чтобы попытаться подключиться к нашему серверу через протокол защищенной оболочки SSH \ Вводим логин: it-skills \ Вводим пароль: ***** \

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

Строка it-skills@ubuntu-srv: говорит нам о том, что мы подключены к серверу ubuntu-srv под пользователем it-skills

Давайте перейдем в корневой каталог и отобразим его содержимое:

cd /

ls -la

Linux Ubuntu | Подключение по SSH через PuTTY с Windows

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

Команда ls -la выводит содержимое каталога, в котором мы сейчас находимся, т.е. содержимое корневого каталога.

Достоинства использования PuTTY

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

А удобство в следующем:

— удаленное подключение – как минимум мы поняли, как подключаться к серверу через SSH, хотя, сам по себе именно данный способ не доработан, так как с точки зрения безопасности тут нужно еще запретить прямое подключение из-под пользователя root, разрешить подключение только по сертификату и сменить порт по умолчанию. Мы этого делать не будем, так как в рамках нашего домашнего полигона в этом необходимости нет, однако, если вы выпускаете сервер в мир, т.е. он становится доступен через сеть интернет, то данные настройки должны быть выполнены обязательно.

 — наличие скрула  — если мы перейдем в каталог etc и просмотрим его содержимое то увидим большое количество файлов и папок

cd /etc/

ll

Через терминал на сервере мы не можем увидеть все содержимое, так как нам доступен только конец вывода на экран, а вверх мы не модем пролистать.

Если мы сделаем тоже самое через программу PuTTY, то мышкой можем пролистать весь вывод, так как здесь есть скрулл.

— копирование и вставка – через программу PuTTY очень удобно копировать и вставлять нужное содержимое. К примеру, мы можем легко выделить весь вывод, скопировать его Ctrl+C и вставить в какой-нибудь документ (Выполнить \ notepad \ Вставить). Как правило, это полезно, когда вам необходимо отправить какую-нибудь информацию техническому специалисту, если у вас появляются какие-то ошибки на сервере. Ну или вы пишите скрипт в одну строку и добавляете в него какие-то правки, довели его до правильной работы, потом просто выделили, скопировали и вставили себе в документ или отправили кому-нибудь. Т.е. не нужно заново его вводить вручную.

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

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

К примеру, эта же команда sudo apt install openssh-server по установке сервера ssh.

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

— размер шрифта – допустим мне так же удобно менять размер шрифта.

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

Однако, через PuTTY мы можем изменить размер шрифта, цвет и фон шрифта на тот, который вам удобнее (ПКМ по окну программы \ Change Settings «Изменить настройки» \ Windows \ Appearance \ Font settings \ Change \ 16 \ ОК \ Apply )

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

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

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

В прошлой статье я обещал рассмотреть механизм удаленного подключения с Windows на серверы под управлением *nix, и наоборот при помощи PowerShell. Обещанного обычно ждут три года, но я успел чуть раньше. Что ж, если хочется с верного макбука управлять гетерогенной инфраструктурой, или наоборот ― с Surface Pro рулить Linux-серверами без всяких putty, ― прошу под кат.

Microsoft Loves Linux

Еще в 2015 году Microsoft торжественно объявила о запуске программы «Microsoft Linux». Сюда вошла как банальная поддержка гостевых *nix-like OS на Hyper-V, так и встроенная в Windows 10 Ubuntu и возможность запуска в Docker продуктов Microsoft, таких как SQL Server.

Компания также опубликовала исходный код PowerShell, что позволило запускать «Ракушку Мощи» не только на Windows. Из-под одноименного аккаунта на Github, помимо исходного кода, выложены и бинарники под большинство современных систем (лицензия MIT).

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

Порой удобно совмещать традиционные консольные команды со вставками PowerShell:

cat /etc/passwd | ConvertFrom-Csv -Delimiter ':' -Header Name,Passwd,UID,GID,Description,Home,Shell | Sort-Object Name | Format-Table

Для подключения к Windows-машинам при помощи PowerShell используется протокол WS-Man. Для GNU\Linux привычен SSH. Так как сегодня становятся универсальными оба протокола, разберем их подробнее.

PowerShell 6.0 под Windows и *nix, пока еще находится в бете. Поэтому не рекомендую без хорошего тестирования применять на боевых серверах описанное ниже.

Магомед не идет к горе

Когда технология удаленного доступа при помощи PowerShell только набирала обороты, единственным универсальным способом подключения к разным системам был протокол WS-Man. Для тестового стенда я взял Windows Server 2016 и Centos 7, для которых и буду настраивать возможность удаленного подключения и выполнения команд при помощи этого протокола.

Для начала установим на Centos свежий PowerShell:

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/microsoft.repo

yum install -y powershell

pwsh

После установки появилась возможность запускать привычные Windows-администратору командлеты. Например, посмотрим версию PS и получим список запущенных процессов командлетами $PSVersionTable и Get-Process:

Работаем в консоли PowerShell на CentOS.

Чтобы подключаться к Linux-машине с консоли Windows, нам понадобится установить и настроить:

  • OMI (Open Management Infrastructure) ― адаптация WMI, которую также можно использовать для управления компьютерами с ОС, отличными от Windows;
  • PSRP (PowerShell Remoting Protocol) ― библиотека, необходимая для удаленного подключения PowerShell.

Подробно с работой и эволюцией OMI и PSRP можно ознакомиться в отличном материале от Matt Wrock, я же просто установлю OMI командой:

yum install omi

Далее нужно настроить порты и аутентификацию в конфигурационном файле /etc/opt/omi/conf/omiserver.conf, после чего перезапустить сервер командой:

/opt/omi/bin/service_control restart

Для упрощения эксперимента я не буду настраивать ни NTLM-аутентификацию, ни Kerberos. Еще и шифрование отключу ― разумеется, в боевой среде делать этого не стоит. Для включения текстовой аутентификации и шифрования на стороне Windows в работе winrm достаточно выполнить следующие команды:

winrm set winrm/config/client/auth @{Basic="true"}
winrm set winrm/config/client @{AllowUnencrypted="true"}
winrm set winrm/config/service/auth @{Basic="true"}
winrm set winrm/config/service @{AllowUnencrypted="true"}

После настройки можно проверить работу OMI из консоли Windows:

winrm enumerate http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/OMI_Identify?__cimnamespace=root/omi -r:http://server:5985 -auth:Basic -u:root -p:"password" -skipcncheck -skipcacheck -encoding:utf-8 -unencrypted

Подключаемся к CentOS из cmd.

Теперь проверим работу обратным подключением ― из Linux к Windows:

/opt/omi/bin/omicli ei root/cimv2 Win32_Environment --auth Basic --hostname server -u username -p password --port 5985 

… а затем с CentOS подключаемся к Windows.

После того, как WMI\OMI заработал, нужно установить и настроить PSRP. К сожалению и вопреки инструкции, бинарник отсутствует. Библиотеку пришлось компилировать, долго и нудно исправляя возникающие ошибки зависимостей:

yum groupinstall 'Development Tools'
yum install openssl-devel pam-devel
git clone --recursive [https://github.com/PowerShell/psl-omi-provider.git](https://github.com/PowerShell/psl-omi-provider.git)

cd psl-omi-provider/
make release
rpm -ihv target/Linux_ULINUX_1.0_x64_64_Release/psrp-1.4.1-0.universal.x64.rpm

Теперь мы сможем подключаться с Windows на Linux и наоборот при помощи PowerShell. Начнем с Windows на Linux:

$cred = Get-Credential

#пропустим проверку сертификата для нашей тестовой лаборатории
$o = New-PSSessionOption -SkipCACheck -SkipRevocationCheck -SkipCNCheck

#выполнение команды:
Invoke-Command -ComputerName server -ScriptBlock { Get-Process } -Authentication Basic -SessionOption $o -Credential $cred -UseSSL | Select-Object -First 5

#подключение к консоли
Enter-PSSession -ComputerName 'server' -Credential $cred -Authentication basic -UseSSL -SessionOption $o

С Windows на Linux.

Аналогичным образом можно провести и обратное подключение.

Invoke-Command можно «натравить» на список компьютеров, и с рабочей станции Windows создать пользователя на всех серверах Linux командой вида:

 Invoke-Command -ComputerName server1,server2,server3  -ScriptBlock { adduser admin;echo admin:password | chpasswd
 }

Надо сказать, что способ не самый удобный и эффективный. Минусов добавляет компиляция библиотек, разнообразные баги ― например, на момент написания статьи PSRP не позволял нормально подключиться из Linux в Windows.

Да и сами разработчики рекомендуют не плясать вокруг WS-Man, а обратиться к проверенному способу ― SSH. Что ж, попробуем и его.

Гора идет к Магомету

На этот раз машина с Windows получит чуть больше специфической подготовки ― нужно установить свежий PowerShell и OpenSSH.

После можно проверить синтаксис командлета New-PSSession. Если все произошло как надо, то командлет, помимо привычного параметра ComputerName, будет поддерживать и HostName.

PowerShell 6.0.0-beta.9 и обновленный синтаксис командлета.

Установка OpenSSH описана в отдельной инструкции.

Но под спойлером вы найдете все основные моменты.

Качаем последний релиз или используем пакет из репозитория Chocolatey. Все это разархивируем в \Program Files\OpenSSH.

В консоли с правами администратора переходим в папку с разархивированным содержимым и запускаем установку командой:

powershell -ExecutionPolicy Bypass -File install-sshd.ps1

Теперь генерируем ключи:

.\ssh-keygen.exe -A
.\FixHostFilePermissions.ps1 -Confirm:$false

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

```bash
PasswordAuthentication yes
```

Если вы также хотите автоматически запускать PowerShell при подключении по SSH, то в параметре subsystem нужно прописать путь к желаемой версии PS:

Subsystem   powershell C:/Program Files (x86)/PowerShell/6.0.0-beta.9/pwsh.exe -sshs -NoLogo -NoProfile

Для работы клиента SSH нужно добавить директорию в %PATH% любым удобным способом. Например, таким:

setx path "%path%;C:\Program Files\OpenSSH"

Остается только настроить и запустить службы:

Set-Service sshd -StartupType Automatic
Set-Service ssh-agent -StartupType Automatic
net start sshd

После установки уже можно наслаждаться подключением к серверу Windows по ssh.

C Windows через Putty на Linux, с Linux обратно на Windows по SSH.

На достигнутом останавливаться не будем и перейдем к настройке Linux. При настройке сервера SSH по умолчанию достаточно прописать PowerShell в Subsystem:

Subsystem powershell /usr/bin/pwsh -sshs -NoLogo -NoProfile

Теперь проверим подключение через командлет New-PSSession и Invoke-Command.

Сначала Windows:

Работаем из PowerShell с Linux-сервером.

Теперь подключимся из Linux к Windows:

Работаем из PowerShell с Windows-сервером.

В отличие от WS-Man, SSH настраивается намного проще и работает стабильнее. Да и беспарольное подключение по ключам настраивать привычнее.

В хозяйстве пригодится

С однозначным «советом потребителю» все опять сложно: SSH проще в настройке и стабильнее, но WS-Man использует API и позволяет применять инструменты вроде JEA. На боевых серверах использовать WS-Man я бы не стал однозначно, а вот реализация OpenSSH в Windows как сервера, так и клиента мне понравилась. Для самопальной автоматизации вполне подойдет даже без PowerShell.

В любом случае, границы между Linux и Windows хоть и медленно, но начинают стираться, что безусловно радует.

This tutorial is going to show you 3 ways to log into Linux server on Windows via SSH.

What’s SSH?

SSH stands for Secure Shell, which was invented in 1995 to replace the insecure Telnet (Telecommunication Network). It’s now the primary way for system administrators to securely log into remote Linux servers over the public Internet. Although it looks and acts the same as Telnet, all communications over the SSH protocol is encrypted to prevent packet sniffing.

If you are running a Linux or Mac computer, SSH client is installed by default. You can open up a terminal window and run the ssh command like below to connect to a remote Linux server.

ssh [email protected]

Now let’s discuss how to use SSH on Windows.

Method 1: Windows 10’s Built-in SSH Client

The Microsoft PowerShell team decided to port OpenSSH (both the client and the server) to Windows in 2015. It finally arrived in Windows 10’s Fall Creator Update in 2017 and is enabled by default in the April 2018 Update.

To use the OpenSSH client on Windows 10, simply open a PowerShell window or a command prompt window and run the ssh command.  For example, if I want to connect to my Ubuntu desktop in the LAN, I would run

ssh [email protected]

linuxbabe is the username on my Ubuntu desktop and 192.168.0.101 is the private IP address for my Ubuntu desktop. The first time you connect to a Linux computer, you will be prompted to accept the host key. Then enter your password to login. After login, you can run Linux commands to do administrative tasks.

Note that if you want to paste a password into the PowerShell window, you need to right-click the mouse and press Enter.

ssh windows

To log out from the Linux box, run the exit command or press Ctrl+D.

The default font size in PowerShell Window is very small. To change it, right-click the titlebar and select properties, then you can change the font size, and the background color.

windows powershell change font size and background

Method 2: Use SSH in Windows Subsystem for Linux

Windows Subsystem for Linux (WSL) enables you to run native Linux command-line tools directly on Windows 10. If you are a system administrator, WSL is probably an overkill for just using SSH because it would install and run a Linux distro (without graphical user interface) on your Windows 10 desktop. WSL is created for web developers or those who need to work on open-source projects. You can use not only SSH but also other Linux command line tools (Bash, sed, awk, etc).

Open the Microsoft Store and enter WSL in the search box. Select Run Linux on Windows and install a Linux distro of your choice.

wsl windows subsystem for linux

For example, I choose Ubuntu and click the Get button to install it.

ubuntu windows subsystem for linux

Once your Linux distro is installed, open the Control Panel and select Programs -> Turn Windows features on or off. Tick on the checkbox of Windows Subsystem for Linux to enable this feature. (You may need to reboot your Windows PC for this change to take effect.)

Next, you can launch the Linux distro from the start menu by search the distro’s name. The first time you launch it, you need to create a user and set a password.

ssh windows 10

After that, you can use the ssh command like below to connect to a Linux server or PC that runs a SSH server.

ssh [email protected]

Method 3: Use Putty

Putty is a well-known and the most popular SSH client on Windows before the arrival of Windows OpenSSH client and Windows Subsystem for Linux. To use SSH with Putty, you need to download the Putty program from the official website and install it.

Launch Putty from the Start menu. Then enter the IP address or hostname of the Linux box and click the Open button to connect to it.

ssh windows command line

Accept the host key and you will be prompted to enter the username and password.

ssh windows 10 command line

Please note that when you type in your password, the cursor doesn’t move, but it’s actually accepting your password.  To paste text into Putty, first press Ctrl+C to copy the text, then go to Putty window and press the right button of your mouse.

How to Set Up SSH Key on Windows 10 (Optional)

There’re mainly two ways of authenticating user login with OpenSSH server:

  • password authentication
  • public-key authentication: also known as passwordless SSH login because you don’t need to enter your password.

To set up public-key authentication on Windows 10, follow the instructions below.

Open Windows Powershell, and run the following command to generate SSH keypair.

ssh-keygen -t rsa -b 4096

Where:

  • -t stands for type. The above command generates an RSA type keypair. RSA is the default type.
  • -b stands for bits. By default, the key is 3072 bits long. We use a 4096 bits key for stronger security.

When asked which file to save the key, you can simply press Enter to use the default file. Next, you can enter a passphrase to encrypt the private key, but you will need to enter this passphrase every time when you log into the Linux server. If you don’t want it, you can press Enter, so it will have no passphrase.

ssh key windows

  • The private key (your identification) will be saved in the .ssh/id_rsa file under your user directory.
  • The public key will be saved in the .ssh/id_rsa.pub file.

Now we need to upload the public key to remote Linux server. You can display the public key in the Powershell with the following command.

cat .ssh/id_rsa.pub

Then log in to your server via password authentication, and run the following command to create a .ssh directory under your home directory.

sudo mkdir ~/.ssh

Create the authorized_hosts file

sudo nano ~/.ssh/authorized_keys

Copy your SSH public key and paste it to this file. Save and close the file. To save a file in Nano text editor, press Ctrl+O, then press Enter to confirm. To close a file, press Ctrl+X.

Next, change the permission of this file.

sudo chmod 600 ~/.ssh/authorized_keys

Log out of your Linux server.

exit

Now you can SSH into your server without entering a password.

Next Step

I hope this article helped you use SSH on Windows. You might also want to protect SSH service from hacking, I recommend setting up public-key authentication or two-factor authentication.

  • 2 Simple Steps to Set up Passwordless SSH Login on Ubuntu
  • Set Up SSH Two-Factor Authentication (2FA) on Ubuntu Server

Also, you can enable automatic security updates on your Linux server to patch vulnerabilities.

  • Set Up Automatic Security Update (Unattended Upgrades) on Ubuntu

If you want FTP access to the Ubuntu server, you can set up pure-FTPd server.

  • How to Set Up a Secure FTP Server with Pure-FTPd on Ubuntu

As always, if you found this post useful, then subscribe to our free newsletter to get more tips and tricks. Take care 🙂

Что такое SSH

SSH — также известный как “Secure Socket Shell”, представляет собой протокол, который предоставляет пользователям безопасный способ доступа к удаленном серверу Linux. “SSH” используется всеми, кому необходимо безопасно удаленно управлять компьютером, а также системными и сетевыми администраторами. “Secure Shell” (SSH) обеспечивает аутентификацию с открытым ключом и аутентификацию по паролю, а также зашифрованную передачу данных между двумя компьютерами, подключенными через открытую сеть Интернет. Программное обеспечение состоит из сервера SSH, который стоит на VDS и клиента который стоит на локальном компьютере пользователя. Программное обеспечение обеспечивает весь нужный функционал работы с Linux VDS сервером начиная от удаленного доступа, передачи файлов и заканчивая перенаправлением tсp портов. Является де факто стандратом удаленного взаимодействия с Linux серверами. Серверная и клиентская часть SSH всегда входят в забовую установку Linux. Остается только подключиться удаленно.

Подключение к серверу по SSH из Windows

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

Что такое PuTTY

PuTTY — это SSH-клиент, доступный для Windows и доступный на компьютерах Windows с поддержкой MCECS. Кроме того, он находится в свободном доступе в Интернете и его можете скачать для использования на вашем персональном компьютере с: http://www.chiark.greenend.org.uk/~sgtatham/putty/

Запустите PuTTY и появится окно, т.е. сама программа. Это выглядит как на скриншоте ниже.

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

Чтобы подключиться на сервер:

1. Введите имя хоста машины, к которой вы хотите подключиться.
2. Нажмите кнопку Open.
3. Если вы впервые пытаетесь подключиться к этому хосту, PuTTY предупредит вас, что не может гарантировать, что компьютер, к которому вы подключаетесь, является тем, за кого он себя выдает. Нажмите «Да», чтобы сохранить ключ в кеше PuTTY.
4. Введите логин и пароль. При заказе сервера у нас, вы получаете доступ к пользователю root. Соответственно вы должны указать логин root и его пароль который находиться в разделе “Инструкция” в личном кабинете..
Важно!!! Не бойтесь, при вводе пароля, звездочки или точки обозначающие пароль, не видны!

Подключение к серверу по SSH протоколу из Windows, Linux и macOS с встроенным SSH клиентом

Чтобы подключиться из Windows, Linux или macOS мы должны открыть:
1. CMD (командую строку в Windows)
2. Или терминал в Linux ОС и macOS.

Дальше вводим следующую команду, принимаем условия, пишем “yes” и нажимаем Enter.

ssh [email protected]
Как подключиться к Linux серверу по SSH

По умолчанию SSH порт всегда 22. Он прописан сразу в терминале, CMD также определяет его сам.

После того как мы написали «yes», нажали Enter и продолжили, указываем пароль, заново нажимаем на Enter и входим на сервер.

Подключение к серверу по SSH протоколу из Windows, Linux и macOS с Termius

Что такое Termius

Termius — отличный бесплатный SSH-клиент, с помощью которого вы можете легко управлять всеми своими серверами. Вы подключаетесь прямо к серверу обычным способом (ssh root@ipaddress) или можете добавить их в “Termius”, чтобы запомнить и легко подключаться к каждому из них в будущем всего одним щелчком мыши.

Его преимущество – доступность на всех системах: Windows, macOS, Linux, iOS и Android, и для большинства из них есть бесплатная версия. Платная версия тоже довольно хороша, но не обязательна к покупке. Для регулярного пользования бесплатная версия отлично подойдёт.

Шаг один. Мы должны скачать и установить “Termius”.
Скачать можете по ссылке: https://www.termius.com/download

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

После того как мы скачали и запустили “Termius” он будет автоматический установлен.
Теперь вам нужно создать учетную запись, так как это требуется. Указываем данные и нажимаем на “Singup with email”

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

После регистрации в начальной странице указываем IP, затем нажимаем на кнопку “Create host”

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

После перехода мы указываем:

  • Название сервера, чтобы было легко распознать о какой услуге идет речь — если у вас их несколько.
  • IP адрес сервера.
  • Порт — по умолчанию 22.
  • Логин — в вашем случае – «root».
  • Пароль.
  • Нажимаем на галочку и сохраняем.
Как подключиться к Linux серверу по SSH

После этого щелкаем два раза на конфиг, который сохранили, затем нажимаем «Add and continue»

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

Мы подключились на сервер и можем начать работать.

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

Большой плюс данного SSH клиента – встроенный SFTP клиент. Вам не нужно будет в таком случае пользоваться WinSCP, FileZilla или другим ПО.

Услуги

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

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как посмотреть список ошибок windows 10
  • Как создать файл сценария windows 10
  • Как узнать имя пользователя компьютера windows 10 через командную строку
  • Настройка bios для установки windows 10 с флешки на ssd
  • Как пользователю получить права администратора в windows 10