Ce este acela un tunel ssh si la ce poate fi util

Configurare noua (How To)

Situatie

Sa presupunem ca folosesti un calculator la serviciu (work)  dintr-o retea in spatele unui router/firewall pe care calculator vrei sa-l accesezi de acasa (home) sau din alta parte (similar ceace faci cu teamviewer).

Nu ai acces pe router/firewall de la serviciu dar vrei sa te conectezi remote desktop sau sa faci ssh – adica sa te conectezi de acasa la calculatorul din spatele firewall-ului unde nu ai acces.

Nu mai ai teamviewer sau vrei sa folosesti resurse primare, fara se instalezi teamviewer sau anydesk.

Pentru a simplifica – sa presupunem ca acasa sau undeva ai un ip fix si rulezi un server ssh (openssh-server) – sa-l numim proxy.

 

Backup

Tunelul ssh se poate face pe linux cu comanda ssh sau pe windows cu putty. Comunicatia prin tunel ssh este deci criptata cu algoritmi folositi de ssh. Autentificarea se poate face si fara parola cu cheie criptata.

Tunelul ssh deschide un port local si forwardeaza tot traficul catre un port remote sau se poate deschide un port remote si forwarda tot traficul catre un port local.

Avem 3 tipuri de tunel:

  • Remote
  • Local
  • Dinamic

Local sau remote specifica punctul de intrare al tunelului – din punctul de vedere al clientului ssh (comanda ssh pe linux sau putty pe windows)

Solutie

Comanda pentru a deschide un tunel ssh pentru a accesa  serviciul ssh in spatele firewall este:

ssh -R 2223:localhost:22 user@server_ssh

Punctul de intrare al tunelului este remote (din punct de vedere al clientlui)

 

Pentru a rezolva accesul RDP  trebuie sa deschizi un tunel ssh REMOTE  de la portul  3389 (RDP) pe masina work la serverul ssh (Proxy) – sa zicem  pe portul 33389. Odata deschis tunelul daca te conectezi la serverul ssh pe portul 33389 tunelul te va duce la masina in spatele firewall-ului la remote desktop.

Pentru a accesa de pe un alt calculator din reteaua de acasa trebuie sa deschizi un tunel LOCAL 3389 si la serverul ssh pe portu 33389 pentru a-l lega cu portul remote.

Deci trebuie doua tuneluri HOME —> server_SSH —> WORK. Apoi este suficient sa lansezi RDC (remote desktop connection) la calculatorul de acasa catre localhost:3389

 

Tip solutie

Permanent

Impact colateral

Am reusit deci sa punem cap la cap doua tunele unul cu intrarea port REMOTE (-R) si unul cu intrarea port LOCAL (-L), sa forwardam porturi si sa conectam un pc la un alt pc pe remote desktop in spatele unui firewall traversand practic doua routere pe care nu avem acces si folosind doar un server de ssh (openssh-server) si doi clienti de ssh (putty).

De asemenea pentru windows exista si un client ssh in linie de comanda - plink.

Voteaza

(15 din 41 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?