Fix IP cím alternatíva VPN csomóponton keresztül

Fizetős, de megbízhatóbb DynDNS, NO-IP, stb. alternatíva sok-sok kézimunkával.

PPTP VPN szerver telepítése

Gyakran jól jöhet a fix / statikus IP cím, ha mondjuk az otthoni gépünket, vagy otthoni NAS-unkat szeretnénk távolról elérni; azonban az internet szolgáltatóknál nem mindig adnak erre lehetőséget. Az esetek többségében dinamikus, folyton változó IP címmel rendelkezünk. Erre a problémára adhat alternatív megoldást a VPN csomópont használata a DigitalOcean felhő szolgáltatásában, akár már 5$/hó-tól.

Tehát a szituáció adott: szeretnénk távolról elérni otthoni szerverünket / PC-nket például munkahelyről, vagy vidékről, szállodából stb., viszont dinamikus az IP címünk. Vannak erre megoldások, pl.: DynDNS, noip, ezek viszont nem elég megbízhatóak, továbbá nem működnek bizonyos esetekben. Jó példa, ha mondjuk NAT mögött vagyunk, az előbb felsorolt szolgáltatások biztosan nem fognak működni ebben az esetben. Ellenben a VPN csomópont használatával ez a probléma is elhárítható.

A DigitalOcean ([link]) VPS szolgáltatásának segítségével kialakítható a VPN hálózat, amin keresztül a gépek már fognak tudni kommunikálni egymással, akár NAT mögül is. Működni fog az RDP (távoli asztal), NAS szolgáltatások, fájl megosztások és minden egyéb szolgáltatás, ami helyi hálózaton keresztül is elérhető. A DigitalOcean mellett esett a választás, mert itt alacsony áron (már 5$/hó-tól) lehet virtuális linuxot bérelni. Ez a gép lesz a VPN szerver, ami jelenleg egy Ubuntu 16.04-es verzión fut. Mivel 5-6 különböző cikkből kellett összehalászni az utasításokat, ezért ebben a leírásban részletesen, pontról pontra leírom a telepítés lépéseit, hogy egy helyen összeszedetten meg legyen minden. A leírás Windows alapú gépekhez készült. Ez egy működő / tesztelt VPN hálózat, a cikk végére ez lesz az eredmény:

Ez a leírás a DigitalOcean Ubuntu 16.04 szerveréhez készült.

Első lépésként regisztráljunk a DigitalOceannél. Majd kezdésnek hozzunk létre egy 512MB/1CPU-s Ubuntu dropletet valamelyik Európai szerveren. Töltsük le a Bitvise Tunneliert ([link]), majd indítsuk el. A Client key managerrel generáljunk egy RSA típusú kulcsot a Generate New gombbal. A Size legyen 2048-as.

Ezután exportáljuk a publikus ssh kulcsot OpenSSH formátumban.

Nyissuk meg notepaddal a kiexportált SSH kulcsot és tegyük vágólapra a teljes tartalmát. A droplet létrehozásakor az Add new SSH keys menüpont alatt a New SSH key részhez illesszük be a vágólapról az SSH kulcsot és nevezzük el és válasszuk is ki.

Hozzuk létre a dropletet, a web-es felületen hozzunk létre egy Floating IP-t, ezt másoljuk ki egy notepadba, mert sűrűn lesz rá szükség. Ez lesz a Fix IP címe a VPN szervernek:

Bitvise-ban állítsuk be a Hosthoz a Floating IP-t, az autentikációt pedig az alábbiak szerint:

Próbáljunk meg bejelentkezni. Ha sikerült, akkor megnyílik egy fekete console felület és egy file böngésző ablak. A console-ba egymás után adjuk ki a következő utasításokat:

sudo apt-get update
sudo apt-get upgrade

Notepad++ telepítése

Szükség lesz a Notepad++ ([link]) programra, mert a sima notepad nem jól tördeli a linuxos fájlok sorait, a nano szövegszerkesztőt pedig nem akarjuk használni ("nem ezek azok a droidok amiket keresnek...").

pptpd telepítése:
Console-ba adjuk ki a következő utasítást:
sudo apt-get install pptpd

Helyi IP cím kiosztások
Bitvise böngészőben navigáljunk ide: /etc/ppdp.conf
Nyissuk meg a fájlt Notepad++-szal, és adjuk a legvégére az alábbi kódot:
localip 10.0.0.1
remoteip 10.0.0.100-200

Autentikáció a VPN szerverhez
Nyissuk meg a /etc/ppp/chap-secrets fájlt és adjunk hozzá 2db felhasználót a fájl végéhez. Az 1. oszlop a felhasználónév, a 2. a protokoll neve, a 3. a jelszó, a 4. az IP cím, amit fixen ki fog osztani a VPN szerver az adott felhasználóhoz:
server pptpd pass1 10.0.0.100
quest pptpd pass2 10.0.0.101

DNS szerver hozzáadása
Nyissuk meg a /etc/ppp/pptpd-options fájlt és adjuk hozzá következő kódot a jelölt helyen:
ms-dns 8.8.8.8
ms-dns 8.8.4.4

Forward engedélyezése IPv4-re
Nyissuk meg a /etc/sysctl.conf fájlt és szedjük ki a kommentet (#-ot), az alábbi helyen:
net.ipv4.ip_forward=1

NAT tűzfal beállítások, üzemelés routerként
A következő utasítások kiadása szükséges ahhoz, hogy a kliensek egymás között is tudjanak kommunikálni. Ezeket az utasításokat egymás után kell kiadni a Console-ban:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE && iptables-save
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
iptables -I INPUT -s 10.0.0.0/8 -i ppp0 -j ACCEPT
iptables --append FORWARD --in-interface eth0 -j ACCEPT

Már majdnem kész is a VPN szerver, de előtte még indítsuk újra a pptp daemon-t:
service pptpd restart

És a lényeg, amit minden leírásból ki szoktak hagyni:
sudo systemctl enable pptpd

A fenti kód arra szolgál, hogy a pptpd service automatikusan elinduljon bootoláskor. Ha ez nincs meg, akkor kereshetjük a problémát, hogy miért is nem megy a VPN szerverünk, ha esetleg menet közben újraindult az Ubuntu. Indítsuk is újra a szervert:

sudo reboot

Ezzel el is készült a VPN szerver és készen áll a hálózat tesztelésére. A következő oldalon leírom, hogyan kell tesztelni a magán hálózatot. Összegzés:

A cikk még nem ért véget, kérlek, lapozz!

Hirdetés

3 pénzügyi döntés, amit minden kisvállalkozónak érdemes átgondolnia az év végéig

PR Ahogy az év vége közeledik, itt az ideje, hogy egy pillanatra megálljunk és áttekintsük vállalkozásunk pénzügyi helyzetét. Ne hagyjuk, hogy az év utolsó hónapjai elússzanak a sürgető feladatok és elfeledett határidők között!

Azóta történt

Előzmények