Furnizorul de VPN NordVPN a anunțat deschiderea codului sursă pentru clientul său pe platforma Linux, biblioteca de rețea Libtelio și biblioteca pentru organizarea schimbului de fișiere Libdrop. Codul este disponibil sub licența GPLv3. În dezvoltare au fost folosite limbaje de programare precum Go, Rust, C și Python.
Clientul Linux oferă o interfață de linie de comandă pentru gestionarea conexiunii la serverele NordVPN, permite selectarea unui server dintr-o listă ținând cont de locația dorită, modificarea setărilor de protocol și activarea modului Kill Switch, care blochează accesul la rețea în cazul întreruperii conexiunii cu VPN-serverul. Clientul suportă utilizarea protocoalelor NordLynx (bazat pe WireGuard) și OpenVPN. Pentru modificarea setărilor de firewall se utilizează iptables, pentru rutare iproute, pentru tunelarea conexiunilor tuntap, iar pentru rezolvarea numelui în DNS — systemd-resolved. Funcționează pe distribuții precum Ubuntu, Fedora, Manjaro, Debian, Arch, Kali, CentOS și Raspbian.
Biblioteca Libtelio includ funcții de rețea standard și oferă implementarea unei rețele virtuale MeshNet, formată din sisteme utilizator care se conectează între ele. MeshNet permite stabilirea de tuneluri criptate între dispozitive și crearea unei rețele locale separate. Spre deosebire de VPN, conexiunile în MeshNet se stabilesc nu între dispozitive și serverul VPN, ci între dispozitivele finale care acționează și ca noduri pentru rutarea traficului.
Pentru întreaga rețea MeshNet poate fi definit un server comun pentru interacțiunea cu lumea exterioară (de exemplu, dacă nodul de ieșire este găzduit acasă de utilizator, indiferent de călătoriile și locurile în care utilizatorul se conectează la rețea cu dispozitivele conectate la MeshNet, activitatea de rețea va apărea pentru serviciile externe ca și cum utilizatorul s-ar conecta de acasă. adrese IP).
Pentru criptarea traficului în MeshNet pot fi utilizate diverse implementări ale Wireguard. Atât serverele VPN, cât și nodurile utilizatorilor din interiorul MeshNet pot fi folosite ca noduri de ieșire. Pentru controlul traficului în rețea există un filtrul de pachete configurabil, iar pentru identificarea gazdelor — un serviciu bazat pe DNS. Biblioteca publicată permite organizarea funcționării propriilor rețele MeshNet în aplicațiile proprii.
Biblioteca Libdrop oferă funcții pentru organizarea unui schimb securizat de fișiere între dispozitivele utilizatorului. Se suportă trimiterea și primirea directă a fișierelor peste MeshNet sau rețeaua globală, fără a implica servere externe.
Sursa: opennet.ro
