Dacă sunteți suficient de norocos să aveți furnizorul dvs. de servicii de internet (ISP) să vă furnizeze o adresă IP dedicată, puteți configura un server de acasă și îl puteți face disponibil pentru Internet adăugând câteva reguli de redirecționare a portului ( redirecționare ) la router. Dar dacă ISP-ul tău te obligă să partajezi acel IP cu vecinii tăi, redirecționarea portului nu te va ajuta. Alți furnizori blochează pur și simplu conexiunile de intrare prin regulile firewall.
Utilizatorii pot depăși toate aceste restricții cu ajutorul serverelor private virtuale. Totul va funcționa cu mai puțin de 512 MB de RAM, deoarece tot ce trebuie să facă este să redirecționeze traficul de rețea. Nu consumă mult RAM și CPU. Serverul va primi conexiuni de intrare și le va redirecționa către computer printr-un „ tunel SSH invers ”. Astfel poți configura orice tip de server de acasă, la un cost lunar foarte mic.
Imaginați-vă că creați un server NextCloud pentru a încărca sau sincroniza fișiere. Veți proteja confidențialitatea fișierelor dvs. atunci când acestea sunt pe serverul dvs. de acasă și, dacă este necesar, puteți cumpăra un hard disk de 6TB pentru a crește capacitatea de stocare. Factura lunară de energie electrică este mai mică de 5 USD/lună (115.000 VND) pentru un server privat virtual. Mai ieftin decât factura lunară pentru un server cu 6TB de capacitate.
Notă : Această metodă este utilizată numai pentru a redirecționa traficul de rețea TCP. TCP este folosit de serverul web (port 80/tcp). UDP este folosit de unele servere de jocuri (dar nu de toate), de exemplu Counter Strike (portul 27015/UDP). Tunnelul UDP este, de asemenea, posibil, dar necesită câteva trucuri.
Permite conexiunea externă la PC
Windows 10 are acum un client SSH încorporat
Nu mai este nevoie să utilizați PuTTY pentru a iniția conexiuni SSH. În acest tutorial, vom folosi clientul SSH încorporat pentru a configura tunelul. Citiți articolul: Cum să instalați OpenSSH pe Windows 10 de LuckyTemplates pentru a afla mai multe.
Pregătiți serverul privat virtual pentru conexiunea la tunel
Creează un server privat virtual cu furnizorul tău preferat. Cel mai important lucru este să alegeți o locație a serverului cât mai aproape posibil pentru a minimiza latența rețelei. Încercați să configurați serverul în așa fel încât să vă puteți conecta direct la contul root, de preferință cu o cheie SSH, deoarece este mai sigur. Acest lucru este necesar dacă doriți să faceți serverul să „asculte” conexiunile de intrare pe porturile sub 1024, cunoscute și ca porturi privilegiate.
Deschideți promptul de comandă (sau terminalul dacă utilizați Linux) și conectați-vă la server prin SSH.
Editați setările serverului OpenSSH:
nano /etc/ssh/sshd_config
Dacă nu sunteți autentificat ca root, ci ca utilizator obișnuit, va trebui să utilizați această comandă pentru a putea salva fișierul:
sudo nano /etc/ssh/sshd_config
Derulați în jos până când găsiți variabila numită GatewayPorts. Această linie ar putea arăta astfel:
#GatewayPorts no
Eliminați # (pentru a-l schimba dintr-un comentariu într-o parte a programului) și schimbați linia în:
GatewayPorts yes
Dacă nu găsiți această linie, derulați până în jos și adăugați singur linia:
GatewayPorts yes

Apăsați Ctrl + X , apoi apăsați y și în final Enter pentru a salva fișierul.
Reîncărcați demonul SSH, astfel încât să preia noile setări.
systemctl reload ssh.service
Ieșiți din sesiunea SSH.
exit
Cum se configurează un tunel SSH invers
Parametrii comenzii sunt aceiași pe Linux, Windows și chiar BSD. Sintaxa generală este:
ssh -R remote_port:host:localport your_username@IP-of-server
- remote_port îi spune serverului să redirecționeze conexiunile către acesta pe acel port.
- gazdă spune serverului adresa IP către care va fi redirecționată conexiunea. 127.0.0.1 va fi folosit aici pentru a redirecționa către propriul computer al utilizatorului.
- localport indică la ce port pachetele trebuie redirecționate. Aici, utilizatorul ar trebui să seteze numărul portului pe care „ascultă” aplicația instalată pe computerul local.
De exemplu, pentru a redirecționa toate conexiunile de pe portul 80 (la server) și a le trimite la portul 8080 de pe computerul local, comanda ar fi:
ssh -R 80:127.0.0.1:8080 root@203.0.113.1
Aceasta presupune că aveți un server web, cum ar fi Apache sau Nginx, care ascultă local pe portul 8080. Dar dacă Apache/Nginx ascultă pe portul implicit 80, atunci nu este nicio problemă să folosești același port de două ori în comanda anterioară (pentru că se referă la portul 80 pe alt server).
ssh -R 80:127.0.0.1:80 root@203.0.113.1
În acest moment, dacă cineva introduce adresa IP a serverului tău virtual privat în bara de adrese a browserului său, conexiunea sa va fi redirecționată și gestionată de computerul tău local.
![Cum să utilizați Reverse SSH Tunnel pentru a permite conexiuni externe la computer Cum să utilizați Reverse SSH Tunnel pentru a permite conexiuni externe la computer]()
În imaginea de mai sus, a fost folosit un server web simplu pentru Chrome, care ascultă implicit pe portul 8887. Utilizatorii pot încerca ei înșiși această configurare instalând aplicația și apoi folosind comanda, așa cum se arată în imagine.
Merită menționat că pentru a menține tunelul activ, sesiunea SSH trebuie să rămână activă. Pentru a închide tunelul, introduceți ieșire într-o fereastră Terminal sau Prompt de comandă.
După cum puteți vedea, nu este dificil să creați un tunel SSH invers, dar securizarea unui site web este diferită. Deci, dacă alegeți să implementați o idee, cum ar fi un server local NextCloud, izolați-l cel puțin într-o mașină virtuală. În acest fel, dacă site-ul este spart, cel puțin restul sistemului de operare nu va fi afectat.
Și un alt lucru important de reținut este să faceți întotdeauna backup pentru ceea ce nu doriți să riscați să pierdeți!
Sper că aveți succes.