OpenVPN - biztonságos kapcsolat
OpenVPN - biztonságos kapcsolat
Többek kérésére, "hogyan tudnék VPN kapcsolatot létrehozni 2 távoli számítógép között?" alábbiakban a leírás.
Re: OpenVPN - biztonságos kapcsolat
A megvalósításnak kétféle módja van: szoftveres és hardveres.
A hardveres megoldás költségesebb, mert mind a szerver, mind a kliens oldalon rendelkeznünk kell VPN routerrel.
A szoftveres megoldás is lehet többféle, hiszen a Windowsokban is megtalálható a VPN kapcsolathoz szükséges protokoll, valamint rendelkezésre állnak nyílt forráskódú, ingyenes szoftveres megoldások is.
Ezek közül legismertebb és legelterjedtebb az OpenVPN.
Ez utóbbira térnék most ki részletesebben, azon belül is a Windowsos változatára.
Bár laikusoknak elsőre kicsit ijesztő lehet, hogy a kulcsok és egyéb fájlok létrehozását parancssoros felületen, batch fájlok segítségével kell elvégezni, de egy kis gyakorlattal elsajátítható a beállítás.
Első lépésben töltsük le a Windowsos telepítő csomagot a http://www.openvpn.net honlapról, majd indítsuk el a telepítőt!
(Telepítéskor célszerű az összes választható komponenst kipipálni)
A program fájlokon kívül létrejön egy ún. "TAP-Win32 adapter" is, ami nem más, mint egy virtuális hálózati kártya. Ezen keresztül fog megvalósulni a VPN kapcsolat.
Tűzfal és router beállítás:
Az Open VPN alapesetben a 1194-es TCP/UDP portot használja.
Szerver oldali beállítás:
A tűzfalnál engedélyezni kell a 1194-es portot mindkét irányba (kifelé és befelé is), valamint a routeren a Port Forward résznél szintén a 1194-es portot kell a gépünk belső IP címére irányítani.
Kliens oldali beállítás:
Ha tűzfal mögött vagyunk, akkor itt szintén a 1194-es portot kell megnyitni, valamint az OpenVPN alkalmazást is engedélyezni kell.
Kliens oldalon egyéb beállítás nem szükséges.
Kulcsok generálása a szerveren:
Mint említettem, a batch fájlokat parancssorból kell futtatni. Az összes szükséges batch fájlt a Telepítési_könyvtár/easy-rsa könyvtárban találjuk meg.
Telepítés után ebben a könyvtárban többek között létrejön egy vars.bat.sample és egy openssl.cnf.sample nevű fájl.
Nevezzük át mindkettőt olyan módon, hogy a ".sample" részt hagyjuk le a végükről (vars.bat és openssl.cnf legyen a fájlok neve)!
A vars.bat-ban azokat beállításokat kell megadnunk, amelyet majd a többi batch fájl is használni fog.
A fájl tartalmának lényegi része így néz ki:
A megfelelő sorokat írjuk át a saját adatainkra, pl.:
A következő batch fájlokat feltétlenül ebben a sorrendben futtassuk!
vars.bat
clean-all.bat - ez törli a könyvtárból az összes korábban létrehozott kulcsot,
build-ca.bat - csak első alkalommal kell lefuttatani! Létrehozza a ca.crt fájlt, amely majd aláírja az összes többi kulcsot,
build-dh.bat - ez az RSA titkosításhoz szükséges algoritmus. Futtatása akár 1-2 percig is eltarthat! Ez hozza létre a dh1024.pem nevű fájlt,
build-key-server.bat <szervernév> - szerver oldali kulcs létrehozása,
build-key kliens1 - kliens kulcsok létrehozása
build-key kliens2
build-key kliens3
Ezzel a kulcsok elkészültek.
Ha mindent jól csináltunk, akkor az \easy-rsa\keys könyvtárban megtalálhatók a kulcsok.
Ha valamit elrontottunk, nincs semmi gond, futtassuk a clean-all.bat fájlt és kezdjük elölről a műveletet!
A szerver oldal beállítása:
A \config könyvtárba kell másolni a ca.crt, szerver.key, szerver.crt, dh1024.pem fájlokat, valamint egy megfelelően beállított szerver.ovpn konfigurációs állományt.
(Szerver és kliens oldali minta ovpn fájl a \sample-config könyvtárban található)
Ennek a részletezésére most nem térnék ki, mert elég hosszadalmas, de egy kis tanulmányozással rá lehet jönni a konfigurációs fájl beállítására.
A kliens oldal beállítása:
A szerverhez hasonlóan szükséges egy megfelelően beállított kliens.ovpn konfigurációs állomány!
A generált kliens kulcsokat (kliens1.crt, kliens1.key), valamint a ca.crt fájlt a kliens gép \config könyvtárába kell másolni a kliens.ovpn fájllal együtt!
A későbbiekben részletesen be fogok mutatni egy szerver és egy kliens oldali .ovpn fájl beállítást.
...
A hardveres megoldás költségesebb, mert mind a szerver, mind a kliens oldalon rendelkeznünk kell VPN routerrel.
A szoftveres megoldás is lehet többféle, hiszen a Windowsokban is megtalálható a VPN kapcsolathoz szükséges protokoll, valamint rendelkezésre állnak nyílt forráskódú, ingyenes szoftveres megoldások is.
Ezek közül legismertebb és legelterjedtebb az OpenVPN.
Ez utóbbira térnék most ki részletesebben, azon belül is a Windowsos változatára.
Bár laikusoknak elsőre kicsit ijesztő lehet, hogy a kulcsok és egyéb fájlok létrehozását parancssoros felületen, batch fájlok segítségével kell elvégezni, de egy kis gyakorlattal elsajátítható a beállítás.
Első lépésben töltsük le a Windowsos telepítő csomagot a http://www.openvpn.net honlapról, majd indítsuk el a telepítőt!
(Telepítéskor célszerű az összes választható komponenst kipipálni)
A program fájlokon kívül létrejön egy ún. "TAP-Win32 adapter" is, ami nem más, mint egy virtuális hálózati kártya. Ezen keresztül fog megvalósulni a VPN kapcsolat.
Tűzfal és router beállítás:
Az Open VPN alapesetben a 1194-es TCP/UDP portot használja.
Szerver oldali beállítás:
A tűzfalnál engedélyezni kell a 1194-es portot mindkét irányba (kifelé és befelé is), valamint a routeren a Port Forward résznél szintén a 1194-es portot kell a gépünk belső IP címére irányítani.
Kliens oldali beállítás:
Ha tűzfal mögött vagyunk, akkor itt szintén a 1194-es portot kell megnyitni, valamint az OpenVPN alkalmazást is engedélyezni kell.
Kliens oldalon egyéb beállítás nem szükséges.
Kulcsok generálása a szerveren:
Mint említettem, a batch fájlokat parancssorból kell futtatni. Az összes szükséges batch fájlt a Telepítési_könyvtár/easy-rsa könyvtárban találjuk meg.
Telepítés után ebben a könyvtárban többek között létrejön egy vars.bat.sample és egy openssl.cnf.sample nevű fájl.
Nevezzük át mindkettőt olyan módon, hogy a ".sample" részt hagyjuk le a végükről (vars.bat és openssl.cnf legyen a fájlok neve)!
A vars.bat-ban azokat beállításokat kell megadnunk, amelyet majd a többi batch fájl is használni fog.
A fájl tartalmának lényegi része így néz ki:
Kód: Egész kijelölése
set KEY_COUNTRY=US
set KEY_PROVINCE=CA
set KEY_CITY=SanFrancisco
set KEY_ORG=OpenVPN
set KEY_EMAIL=mail@host.domain
A megfelelő sorokat írjuk át a saját adatainkra, pl.:
Kód: Egész kijelölése
set KEY_COUNTRY=HU
set KEY_PROVINCE=HU
set KEY_CITY=Budapest
set KEY_ORG=Ceg_neve
set KEY_EMAIL= mail@cegneve.hu
A következő batch fájlokat feltétlenül ebben a sorrendben futtassuk!
vars.bat
clean-all.bat - ez törli a könyvtárból az összes korábban létrehozott kulcsot,
build-ca.bat - csak első alkalommal kell lefuttatani! Létrehozza a ca.crt fájlt, amely majd aláírja az összes többi kulcsot,
build-dh.bat - ez az RSA titkosításhoz szükséges algoritmus. Futtatása akár 1-2 percig is eltarthat! Ez hozza létre a dh1024.pem nevű fájlt,
build-key-server.bat <szervernév> - szerver oldali kulcs létrehozása,
build-key kliens1 - kliens kulcsok létrehozása
build-key kliens2
build-key kliens3
Ezzel a kulcsok elkészültek.
Ha mindent jól csináltunk, akkor az \easy-rsa\keys könyvtárban megtalálhatók a kulcsok.
Ha valamit elrontottunk, nincs semmi gond, futtassuk a clean-all.bat fájlt és kezdjük elölről a műveletet!
A szerver oldal beállítása:
A \config könyvtárba kell másolni a ca.crt, szerver.key, szerver.crt, dh1024.pem fájlokat, valamint egy megfelelően beállított szerver.ovpn konfigurációs állományt.
(Szerver és kliens oldali minta ovpn fájl a \sample-config könyvtárban található)
Ennek a részletezésére most nem térnék ki, mert elég hosszadalmas, de egy kis tanulmányozással rá lehet jönni a konfigurációs fájl beállítására.
A kliens oldal beállítása:
A szerverhez hasonlóan szükséges egy megfelelően beállított kliens.ovpn konfigurációs állomány!
A generált kliens kulcsokat (kliens1.crt, kliens1.key), valamint a ca.crt fájlt a kliens gép \config könyvtárába kell másolni a kliens.ovpn fájllal együtt!
A későbbiekben részletesen be fogok mutatni egy szerver és egy kliens oldali .ovpn fájl beállítást.
...