Kvě 082022
 

VPN tedy Virtual Private Network je technologie pro vytvoření lokální sítě mezi několika PC prostřednctvím internetu. Lze ji využít například:

  • Přístup do firemní sítě z prostředí internetu
  • Přístup ke vzdáleným počítačům, které jsou jinak schované za NAT
  • Anonymní přístup do internetu

Tu třetí variantu já spíše nazývám „Anonymizer“ a nepovažuji to za VPN.

Už je to nějaká doba, co jsem psal o VPN n2n. Jeden článek je už staršího data. Druhý článek je novější. Od toho data už vyšla další stabilní verze mého oblíbeného N2N.

K tomu všemu vždy ale potřebujeme VPN server, tzv. SUPERNODE. Tento supernode slouží jako prostředník, aby se klienti, kteří se na něj připojí, mohli „seznámit“. Další provoz je již napřímo. Jako supernode můžeme využít nějaký dostupný. Našel jsem čínské stránky, které se tomuto tématu věnují, a kde je i nějaký seznam dostupných serverů. Nějaký čas jsem používal italský ntop.org, pak zase chvíli lucktu.com. Ale pak jsem si udělal vlastní supernode.

Server

Potřebujete server, trvale běžící počítač s přístuperm do internetu. Na firewallu si povolíme port. Většinou se používá 7777. Na serveru si nakofigurujeme /etc/n2n/supernode.conf:

-p=7777

-c=/etc/n2n/community.list

Parametr -p určuje port, na kterém supernode poslouchá. Parametr -c definuje txt soubor s dalšími parametry jednotlivých komunit. A to je právě další síla N2N:

atari 172.16.0.0/24
c64 172.16.1.0/24
speccy 192.168.128.0/24

Každý řádek definuje název komunity a rozsah sítě. Klient pak musí zadat do parametru název sítě/komunity (a heslo). Pokud zadá nějaký název komunty, který je z tohoto seznamu, dostane přiřazenou IP adresu, pokud ji nemá nastavenou statickou. Začal jsem si postupně do vlastní VPN přidávat další a další kompy, a už jsem se začal ztrácet, jaké IPky jsou volné.

Pak celý server nahodíme. Pokud je to ubuntu jako ten můj, pak:

systemctl enable supernode.service

systemctl start supernode.service

Na serveru lze ještě definovat záložní server parametrem -l společně s parametrem -F. Čti dokumentaci.

Klient

Existuje N2N klient pro Windows, Linux, Android a viděl jsem i pro Mac (s Intel).

Na Linux i na Windows používám trvale běžícího klienta. Na linux musíme opět editovat /etc/n2n/edge.conf:

-d=n2n0
-c=speccy
-k=speccyisthebest
-a=172.16.0.1/16
#-r -a=dhcp:0.0.0.0
-l=myserver.org:7777

Parametr -d definuje název síťového rozhraní v systému. Jak správně vidíte, parametr -c je onen název skupiny, sítě. Může být i mimo definované community.list, ale pak nedostane žádnou IP adresu, pokud ji nebude mít nastavenou statickou. Heslo dané komunty (sítě) je pomocí -k. Pokud někdo zadá chybé heslo, připojí se. Ale vytvoří se nová síť, plně oddělená od té se správným heslem. Prostě do jména a hesla je možné napsat cokoliv, ale jen ti dva klienti, co mají stejné údaje, se navzájem propojí.

Pak je tu IP adresa. Na příkladu je definovaná staticky, pokud se uvede: -r -a=dhcp:0.0.0.0, pak IP dostane (nebo nedostane), jestli je daná komunita definovaná na serveru (viz. výše). Na hesle nezáleží.

Nejvíce důležité je i definice, kdo je vlastně onen supernode. Po -l (malé L) je nutné definovat vlastní server, nebo nějaký veřejný a port, na kterém naslouchá.

A nakonec můžeme nahodit i klienta na PC:

systemctl enable edge.service

systemctl start edge.service

Ve výpisu systemctl status edge by mělo být vidět:

[OK] edge <<< ================ >>> supernode

Chcete vyzkoušet můj supernode a nastavit nějakou komunitu a rozsah sítě? Ozvěte se mi. Server se víceméně fláká.

Nakonec zkusím ještě najít odkaz na klienty pro:

Linux – https://github.com/ntop/n2n/releases/tag/3.0

Windows – https://github.com/lucktu/n2n/tree/master/Windows

Android – https://github.com/lucktu/n2n/tree/master/Android/Client

  Jeden komentář na “Virtuální privátní síť N2N potřetí”

  1. Ahoj Luďku, bylo by možné požádat o zřízení komunity na supertnode N2N serveru u tebe? Chtel bych to vyzkouset, jak se to bude chovat atd. děkuji. ozvi se mi prosim na muj email michal (tecka) siman (tady zavinac) gmailteckacom – klasika. moc diky.

Je nám líto, ale formulář pro přidávání komentářů je momentálně uzavřen.