Ghid esențial SSH: servere, clienți și chei criptografice

Folosirea codurilor de salvare (Escape Codes) pentru a controla conexiunea

Chiar și după stabilirea unei sesiuni SSH, este posibil să vă exercitați controlul asupra conexiunii din interiorul terminalului. Putem face asta cu ceva ce este denumit coduri de salvare SSH, care permit să interacționa cu software-ul SSH local din interiorul unei sesiuni.

Forțarea unei deconectări pe partea de client (sau cum să ieșiți dintr-o sesiune blocată sau care nu mai răspunde la nici o comandă)

Una dintre cele mai utile caracteristici ale OpenSSH care trece ușor neobservată este abilitatea de a controla anumite aspecte ale sesiunii din interiorul acesteia.

Aceste comenzi pot fi executate prin adăugarea la început a caracterului de control ~ într-o sesiune SSH. Comenzile de control vor fi interpretate numai dacă sunt primul lucru care este tastat la începerea unei linii noi,așa că întotdeauna apăsați ENTER o data sau de două ori înainte de a folosi o astfel de comandă.

Unul dintre cele mai utile controale este abilitatea de a iniția o deconectare din partea clientului. Sesiunile SSH sunt de regulă închise de server, dar uneori asta poate fi o problemă dacă acesta are probleme sau dacă respectiva conexiune se întrerupe. Prin folosirea unei deconectări pe parte de client, conexiunea poate fi închisă în siguranță.

Pentru a închide o conexiune de la client, folosiți caracterul de control . (~), cu un punct. Dacă conexiunea dvs. are probleme, vă veți găsi în ceea ce este denumit sub termenul de terminal blocat. Tastați comenzi comenzile în ciuda faptului ca nu va apărea nimic pe ecran pentru a executa o deconectare pe parte de client:

[ENTER]
~.

Conexiunea ar trebui să se închidă imediat, readucăndu-vă în sesiunea locală de terminal.

Plasarea unei sesiuni SSH în fundal

Una dintre cele mai folositoare caracteristici a aplicației OpenSSH, care este de multe ori ignorată este abilitatea de a controla diverse aspecte ale sesiunii direct din interiorul conexiunii.

Aceste comenzi pot fi executate începând cu caracterul de control ~ chiar din interiorul unei sesiuni SSH. Comenzile de control vor fi interpretate doar dacă acest caracter este primul tastat pe un nou rând al unei linii de comandă, așa că întotdeauna apăsați ENTER o dată sau de două ori înainte de a folosi aceasta comandă.

O caracteristică oferită este cea de a duce o sesiune SSH în fundal. Pentru a face asta, avem nevoie să introducem caracterul de control (~) și apoi să apasăm scurtături de taste convențională pentru a duce în fundal o aplicație, și anume (CTRL-z):

[ENTER]
~[CTRL-z]

Această comandă vă plasa conexiunea în fundal, practic întorcând-vă la sesiunea locală de terminal. Pentru a vă întoarce la sesiunea dvs. inițială SSH, puteți folosi mecanismele convenționale de control al proceselor.

Puteți imediat reactiva cea mai recentă aplicație (proces) pe care ați trimis-o în fundal, tastând:

fg

Dacă aveți multiple procese în fundal, le puteți vizualiza cu ajutorul următoarei comenzi:

$ jobs
Mesaj afișat:

[1]+  Stopped                 ssh username@prima_gazdă
[2]   Stopped                 ssh username@altă_gazdă

Apoi puteți să aduceți în prim plan oricare dintre aceste procese prin folosirea numărului de ordine din prima coloană cu ajutorul semnului de procentaj:

fg %2

Schimbarea opțiunilor portului de redirecționare la o conexiune SSH existență

Una dintre cele mai folositoare caracteristici a aplicației OpenSSH, care este de multe ori ignorată este abilitatea de a controla diverse aspecte ale sesiunii direct din interiorul conexiunii.

Aceste comenzi pot fi executate începând cu caracterul de control ~ chiar din interiorul unei sesiuni SSH. Comenzile de control vor fi interpretate doar dacă acest caracter este primul tastat pe un nou rând al unei linii de comandă, așa că întotdeauna apăsați ENTER o dată sau de două ori înainte de a folosi aceasta comandă.

Un lucru care face posibilă asta este posibilitatea unui utilizator de a modifica configurația portului de redirecționare după ce conexiunea a fost deja stabilită. Asta vă va permite să creați sau sa modificați regulile portului de redirecționare din mers.

Aceste capabilități sunt parte a interfeței SSH în linie de comandă, care poate fi accesată în timpul unei sesiuni cu ajutorul caracterului de control (~) și “C”:

[ENTER]
~C
ssh>

Veți vedea afișat un prompt de comandă SSH, care are un set limitat de comenzi valide. Pentru a vedea opțiunile disponibile, puteți tasta -h din cadrul acestui prompt. Dacă nu este afișat nimic, va trebui să creșteți nivelul de afișare al measjelor (verbozitatea) referitoare la SSH prin folosirea ~v de câteva ori:

[ENTER]
~v
~v
~v
~C
-h
Mesaj afișat:

Commands:
      -L[bind_address:]port:host:hostport    Request local forward
      -R[bind_address:]port:host:hostport    Request remote forward
      -D[bind_address:]port                  Request dynamic forward
      -KL[bind_address:]port                 Cancel local forward
      -KR[bind_address:]port                 Cancel remote forward
      -KD[bind_address:]port                 Cancel dynamic forward

După cum vedeți, puteți implementa ușor oricare dintre opțiunile de redirecționare folosind optiunile corecte (vezi secțiunea de redirecționare pentru mai multe informații). Deasemenea puteți distruge un tunel cu ajutorul comenzi “kill” invocată cu ajutorul literei “K” înaintea literei care specifica tipul de redirecționare. De exemplu, pentru a opri o redirecționare locală (-L), puteți folosi comanda  -KL. Va trebui doar să specificați portul asociat.

Deci, pentru a configura o redirecționare a unui port local, puteți tasta:

[ENTER]
~C
-L 8888:127.0.0.1:80

Portul 8888 de pe calculatorul dvs. local va fi capabil să comunice cu serverul web al gazdei la care vreți să vă conectați. Când ați terminat, puteți distruge acea redirecționare prin tastarea comenzii:

[ENTER]
~C
-KL 8888

Concluzie

Instrucțiunile de mai sus ar trebui să acopere majoritatea informațiilor de care cei mai mulți dintre utilizatori au nevoie să știe despre protocolul SSH pentru rutina zilnică. Dacă aveți alte sfaturi sau dacă doriți să împărtășiți din din configurabile și metodele voastre, sunteți mai mult decat bineveniți s-o faceți în comentariile de mai jos ale acestui articol.

root

Un entuziast pasionat de tot ceea ce înseamnă Linux și Open Source și un energic promotor. Deschis la orice proiecte bazate pe aceste tehnologii.

Faci un comentariu sau dai un răspuns?

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.