Използване на интегрирания SSH клиент във Windows 10/11


Предполагам, че когато се каже SSH, повечето от вас се сещат на първо четене за PuTTY / KiTTY. Това, което е малко известно обаче е, че от Windows 10 build 1809 и следващите издания (вкл. Windows 11) са добавени като компоненти SSH клиент и сървър (портове на OpenSSH за Windows).

За целта на този урок ще трябват няколко неща:

  • OpenSSH клиента на Windows
  • Windows Terminal

1. Инсталиране на Windows Terminal

Windows Terminal се инсталира от магазина на Windows (Microsoft Store).

2. Инсталиране на OpenSSH клиента

Инсталацията може да стане по два начина:

  1. От компонентите на Windows - отваряте Settings, оттам Apps / Apps & Fetures, оттам линка Optional features, оттам Add a feature. Пишете в търсачката OpenSSH Client, маркирате го и натискате долу Install.
  2. Последната версия от GitHub (9.8.1.0p1-Preview към момента) - сваляте .msi файла, отговарящ на версията на Windows (32 или 64 бита) и инсталирате.

Няколко неща, които трябва да имате в предвид за втория начин:

  • Този пакет инсталира OpenSSH клиента и сървъра едновременно. Тъй като на този етап пакета няма потребителски интерфейс и всичко се случва "мълчаливо", за да се инсталира само клиента е необходимо да се изпълни през командния ред (стартиран като администратор):
msiexec /i <пътя до .msi файла> ADDLOCAL=Client
  • Тази инсталация на този етап НЕ добавя автоматично пътя до клиента в променливата PATH, което трябва да направите ръчно. Десен бутон на менюто Start, там избирате System, след това линка Advanced System Settings. В прозорчето натискате най-долу бутона Environment Variables, след което намирате Path в долния списък System Variables, натискате Edit, след това Browse,избирате пътя (C:\Program Files\OpenSSH или C:\Program Files (x86)\OpenSSH), след което OK във всички отворени прозорци.

3. Настройка на OpenSSH клиента

Почти всички необходими параметри, които са необходими на OpenSSH, могат да се задават от командния ред, но за целта на този урок (която е колкото се може по-малко работа с конзолата) това не е от особена полза. OpenSSH поддържа конфигурация във файл, която позволява да се правят нещо подобно на профили за всяка отделна SSH връзка.

Местонахождението на потребителската конфигурация на OpenSSH е C:\Users\<Потребител>\.ssh\config.

.ssh е папка, config е текстов файл. Ако ги нямате, ги създавате.

Ето извадка от моя config файл:

Host buildroot
    HostName 192.168.0.111
    Port 222
    User philip
    IdentityFile ~/.ssh/buildroot.ssh
  • Host е името, което ще се подава на командата ssh.
  • HostName e адреса на сървъра.
  • Port е номера на порта, на който работи SSH услугата. Този параметър не е необходим, когато порта е 22 (порта за SSH по подразбиране).
  • User e потребителя, с който ще се оторизирате на сървъра отсреща.

Само с първите три реда е достатъчно да се ползва команда е терминала:

ssh buildroot

за да се осъществи връзка, като ще има питане за потребител и парола. Питането за потребител може да се прескочи или чрез настройка на User в профила, или когато командата е:

ssh philip@buildroot
  • IdentityFile се ползва единствено в случаите, когато удостоверяването става в двойка публичен/частен ключ, което в днешно време е препоръчителния метод за SSH оторизация. В този пример, частния ключ се намира в същата папка, където е файла config и принципно е препоръчително всички ключове да се държат в тази папка.

Файловете с ключовете трябва да са в OpenSSH формат. ppk ключовете на PuTTY / KiTTY не работят с OpenSSH, но можете да ползвате примерно puttygen (от сайта на PuTTY) за да ги конвертирате от единия формат в другия.

config НЕ поддържа параметър за предварително задаване на парола за потребител по обясними причини - съхранение на парола в текстов файл си е никаква защита.

Пълният списък с параметри, които могат да се ползват за даден SSH профил можете да видите тук: SSH config file for OpenSSH client

4. Добавяне на SSH профил във Windows Terminal

Отваряте Windows Terminal, има една стрелка надолу горе до бутона с +. Там е менюто, от което избирате Settings, там Add a new profile :

VCR7lXR.png

oVQX7zP.png

След избор на New empty profile най-горе, ще видите това:

EGnQUyV.png

Необходимите полета, които се попълват са:

  • Name - име на профила, което ще излиза в списъка.
  • Command line - променя се по примера от config файла горе на:
ssh buildroot

Запазвате със Save, след което от менюто на Windows Terminal горе вече можете да избирате тази сесия:

6TsEJ2R.png

5YqJDaL.png


7


0 Comments

Няма коментари.

Създайте нов акаунт или се впишете, за да коментирате

За да коментирате, трябва да имате регистрация

Създайте акаунт

Присъединете се към нашата общност. Регистрацията става бързо!


Регистрация на нов акаунт

Вход

Имате акаунт? Впишете се оттук.


Вписване