Sari la conținutul principal

Un blog de inginereală

Cum îți faci propriul VPN cu ușurință

Scenariul 1: Ti-ai făcut propriul server acasă, propriul tău “laborator”. Te poți conecta cu ușurință din rețeaua locală, însă ce faci dacă ai nevoie să te conectezi când ești plecat, de exemplu de pe telefon prin date mobile?! Sigur, ai putea să-ți faci tu propriul tunel, deschizi port la nivel de router…

Scenariul 2: Ești peste hotare și ai avea nevoie de un VPN ca să navighezi internetul, poate că vrei să vezi descarci un episod de pe filelist 😎, însă tu ești în Germania, nu vrei să ai probleme cu legea. Sau pur și simplu vrei să navighezi cu ip din altă zonă geografică. Sigur, ai putea să cumperi un abonament VPN din sutele disponibile…

Îți ofer o alternativă simplă, open-source unde datele tale nu sunt împărțite cu nimeni, WireGuard.

WireGuard Să presupunem că vrei să te conectezi la rețeaua de acasă de oriunde din lumea asta în siguranță. Prima dată ai nevoie să îți instalezi docker pe serverul tău linux:

curl -sSL https://get.docker.com | sh
sudo usermod -aG docker $(whoami)
exit

După care să instalezi următoarea imagine de docker ce conține WireGuard:

docker run -d \
  --name=wireguard \
  -e WG_HOST=<ip-ul/domeniul serverului tau> \
  -e PASSWORD=<parola pentru logare> \
  -v ~/.wg-easy:/etc/wireguard \
  -p 51820:51820/udp \
  -p 51821:51821/tcp \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --sysctl="net.ipv4.ip_forward=1" \
  --restart unless-stopped \
  weejewel/wg-easy

Mai multe detalii despre această imagine, explicații și setările WireGuard găsești în acest Github repo.

Asigură-te că portul 51820 este deschis la nivel de router. Apoi logheză-te în interfața WireGuard, <ip server:51821>, crează-ți un client, instalează-ți aplicația WireGuard pe telefonul mobil și scanează codul QR și voila, tocmai te-ai conectat la propriul tău VPN.

Folosind un serviciu de verificat adresa ip publică, vei putea observa că ai aceeași adresă ca în rețeaua locală deși te-ai conenctat prin date mobile.

Dacă vrei să navighezi sub un ip din altă țară, e de ajuns să închiriezi de la un serviciu cloud ce suportă acea țară, o mașină virtuală ieftină de linux și să procedezi exact la fel.

Succes!