Ero sivun ”VPN” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(→‎OpenVPN: Esimerkkikonfigurointi staattisella avaimella)
 
(Yhtä välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 1: Rivi 1:
VPN eli ''Virtual Private Network'' tarkoittaa kahden yksityisen verkon yhdistämistä julkisen, turvattoman verkon (yleensä Internet) yli yhdeksi kokonaisuudeksi. VPN-tekniikan tavallisin käyttökohde on yrityksen haarakonttorin tai etätyöntekijän turvallinen liittäminen sisäiseen verkkoon Internetin yli.
'''VPN''' eli ''Virtual Private Network'' tarkoittaa kahden yksityisen verkon yhdistämistä julkisen, turvattoman verkon (yleensä Internet) yli yhdeksi kokonaisuudeksi. VPN-tekniikan tavallisin käyttökohde on yrityksen haarakonttorin tai etätyöntekijän turvallinen liittäminen sisäiseen verkkoon Internetin yli.


==Tekniikoita==
==Tekniikoita==
===Hamachi===
===Hamachi===
Hamachi on Windowsille, Linuxille ja Mac OS X:lle saatavilla oleva, keskitettyyn palvelimeen pohjautuva, freewarena julkaistava VPN-ohjelmisto. Hamachia käytetään erityisesti lähiverkkojen yhdistämiseen pelaamisessa sekä etähallintaan. Hamachi-protokolla ei ole julkinen.
Hamachi on suljetun lähdekoodin Windowsille, Linuxille ja Mac OS X:lle saatavilla oleva, keskitettyyn palvelimeen pohjautuva, freewarena julkaistava VPN-ohjelmisto. Hamachia käytetään erityisesti lähiverkkojen yhdistämiseen pelaamisessa sekä etähallintaan. Hamachi-protokolla ei ole julkinen, eikä sen turvallisuudelle ole mitään takeita.
*[[wikipedia:Hamachi|Hamachi englanninkielisessä Wikipediassa]]
*[[wikipedia:Hamachi|Hamachi englanninkielisessä Wikipediassa]]


Rivi 13: Rivi 13:
====FreeS/WAN====
====FreeS/WAN====
FreeS/WAN on ensimmäinen Linuxille kehitetty kokonainen IPSec-toteutus. Sen kehitys päättyi 2004. Projektia jatkamaan on perustettu Openswan ja strongSwan.
FreeS/WAN on ensimmäinen Linuxille kehitetty kokonainen IPSec-toteutus. Sen kehitys päättyi 2004. Projektia jatkamaan on perustettu Openswan ja strongSwan.
*[http://www.freeswan.org/ Kotisivu]
*[http://www.freeswan.org/ www.freeswan.org]


====Openswan====
====Openswan====
Openswan on FreeS/WANin pohjalta kehitettävä IPsec-ohjelmisto 2.0-, 2.2-, 2.4- ja 2.6-ytimille.
Openswan on FreeS/WANin pohjalta kehitettävä IPsec-ohjelmisto 2.0-, 2.2-, 2.4- ja 2.6-ytimille.
*[http://openswan.org/ Kotisivu]
*[https://www.openswan.org/ www.openswan.org]


====strongSwan====
====strongSwan====
strongSwan on vahvaan autentikointiin keskittyvä, FreeS/WANista [[haara|haarautettu]] IPsec-ohjelmisto 2.4- ja 2.6-ytimille.
strongSwan on vahvaan autentikointiin keskittyvä, FreeS/WANista [[haara|haarautettu]] IPsec-ohjelmisto 2.4- ja 2.6-ytimille.
*[http://www.strongswan.org/ Kotisivu]
*[http://www.strongswan.org/ www.strongswan.org]


===L2F===
===L2F===
Rivi 31: Rivi 31:
===OpenVPN===
===OpenVPN===
[[OpenVPN]] on [[OpenSSL]]:ään pohjautuva, [[GPL]]-lisensoitu VPN-protokolla.
[[OpenVPN]] on [[OpenSSL]]:ään pohjautuva, [[GPL]]-lisensoitu VPN-protokolla.
*[http://openvpn.net/ Kotisivu]
*[https://openvpn.net/ openvpn.net]


==== Asennus ====
===PPTP===
[[PPTP]] eli ''Point-to-Point Tunneling Protocol'' on Microsoftin kehittämä, [[PPP]]:hen pohjautuva VPN-protokolla. Linux-[[ydin|ytimeen]] on sisältynyt PPTP-tuki 2.6.14-versiosta lähtien. PPTP-protokollasta on löytynyt useita haavoittuvuuksia, eikä se ole turvallinen protokolla. PPTP:n kehitys on nykyisin pysähtynyt.


OpenVPN on asennettavissa useissa jakeluissa [[pakettienhallinta|pakettienhallinnan]] avulla, RPM-pohjaisissa käyttöjärjestelmissä se on käännettävissä [[rpmbuild]]-ohjelman avulla tai kääntämällä ./configure-menetelmällä suoraan lähdekoodista. Joissain jakeluissa se on jo valmiiksi asennettuna. Esimerkiksi Fedoralla tai vastaavalla [[RPM]]-pohjaisella voidaan tarkistaa:
===Tinc===
<pre>
[[Tinc]] on protokolla sekä ohjelma, jolla voidaan rakentaa [[wikipedia:en:Mesh Network|Mesh]]-verkkotopologian mukainen VPN-verkko.
shell>rpm -qa | grep openvpn
</pre>
RPM-paketista asennettaessa sillä on seuraavat riippuvuudet:
* openssl
* lzo
* pam
 
Ja jos ollaan rakentamassa itse käännettyä RPM-pakettia, myös seuraavat riippuvuudet:
* openssl-devel
* lzo-devel
* pam-devel
 
Huomaa, että näiden pakettien nimet eroavat jakelusta riippuen.
 
Lähdekoodista kääntämällä OpenVPN asennetaan seuraavasti:
<pre>
shell>tar xfz openvpn-[versionro].tar.gz
</pre>
Purkamisen jälkeen siirrytään puretun kansion juureen ja kirjoitetaan vaiheittain seuraavat komennot:
<pre>
shell>./configure
shell>make
shell>make install
</pre>
 
Katso lisätiedot [[kääntäminen|kääntämisestä]].
 
===== Staattinen avain =====
 
Staattisella avaimen edut:
* Yksinkertainen asennus
* Ei X509 Julkisen avaimen infrastruktuurin ylläpitoa
Staattisen avaimen haitat:
* Vain yksi asiakas per palvelin
* Puute salauksessa (avaimen paljastuminen paljastaa aikaisempien istuntojen sisällön)
* Avaimen pitää olla selväkielinen jokaisella yhdistämiskerralla ja avaimen vaihto tapahtuu jo valmiina olevassa turvatussa tunnelissa.
 
===== Esimerkki staattisella avaimella =====
 
Tässä esimerkissä esitellään hyvin yksinkertainen tapa OpenVPN yhteyden konfigurointiin staattisella avaimella. Esimerkin asetustiedot ja komennot on lainattu OpenVPN.net[http://www.openvpn.net] sivustolta ja on luettavissa sivustolta sellaisenaan.
 
Staattinen avain luodaan komennolla:
<pre>
shell>openvpn –genkey –secret static.key
</pre>
Huomio, että avaimen nimi voi olla mikä tahansa .key päätteinen.
 
Kopioi luotu avain sekä asiakaskoneelle että palvelimelle käyttäen salattua tunnelia pitkin tai esim. Siirrettävällä medialla.
Tehdään palvelimelle konfigurointitiedosto:
 
<pre>
dev tun
ifconfig 10.8.0.1 10.8.0.2
secret static.key
</pre>
Ensimmäisellä rivillä määritellään tunnelointitapa (tun = reititetty IP tunneli, tap = siltaava ethernet-tunneli), toisella rivillä ensin palvelimen ja toisena asiakaskoneen osoite. Viimeisellä rivillä määritellään staattinen avain.
 
Asiakaskoneen konfigurointitiedosto:
<pre>
remote munmasiina.mundomain
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
</pre>
Ensimmäiseltä riviltä on muutettava munmasiina.mundomain joko palvelimen domainnimeksi tai IP-osoitteeksi.
 
Varmistetaan ja tarvittaessa avataan UDP portti 1194 palvelimella. Varmistetaan myös, ettei asiakaskoneella tai palvelimella estetä OpenVPN:n käyttämää virtuaalista TUN-käyttöliittymää. Linuxissa pitäisi löytyä nimellä tun0 ja Windows koneilla nimellä Local Area Connection n, jossa n on automaattinen järjestysnumero.
 
Seuraavaksi käynnistetään OpenVPN komentoriviltä (ongelmanratkaisun helpottamiseksi) seuraavalla tavalla ensin palvelimella ja sitten asiakaskoneella:
<pre>
shell>openvpn [palvelimen/asiakkaan asetustiedosto]
</pre>
Jos kaikki on mennyt nappiin eikä palomuuri estä tunnelin luomista, tee yhteyskokeilu asiakaskoneelta VPN kautta:
<pre>
shell>ping 10.8.0.1
</pre>
Jos palvelimessa käytetään siltaavaa tilaa (dev tap asetustiedostossa), IP-osoite on palvelimen IP-osoite sen aliverkossa.
Jos ping onnistuu, niin muodostettu VPN tunneli toimii.
 
===PPTP===
PPTP eli ''Point-to-Point Tunneling Protocol'' on Microsoftin kehittämä, [[PPP]]:hen pohjautuva VPN-protokolla. Tuki sille on löytynyt Windows 95 -versiosta lähtien. Linux-[[ydin|ytimeen]] on sisältynyt PPTP-tuki 2.6.14-versiosta lähtien. PPTP:n kehitys on nykyisin pysähtynyt.


==Katso myös==
==Katso myös==

Nykyinen versio 25. heinäkuuta 2015 kello 00.11

VPN eli Virtual Private Network tarkoittaa kahden yksityisen verkon yhdistämistä julkisen, turvattoman verkon (yleensä Internet) yli yhdeksi kokonaisuudeksi. VPN-tekniikan tavallisin käyttökohde on yrityksen haarakonttorin tai etätyöntekijän turvallinen liittäminen sisäiseen verkkoon Internetin yli.

Tekniikoita[muokkaa]

Hamachi[muokkaa]

Hamachi on suljetun lähdekoodin Windowsille, Linuxille ja Mac OS X:lle saatavilla oleva, keskitettyyn palvelimeen pohjautuva, freewarena julkaistava VPN-ohjelmisto. Hamachia käytetään erityisesti lähiverkkojen yhdistämiseen pelaamisessa sekä etähallintaan. Hamachi-protokolla ei ole julkinen, eikä sen turvallisuudelle ole mitään takeita.

IPsec[muokkaa]

IPsec eli IP Security Architecture on matalan tason protokollaperhe Internetin pakettivirtojen suojaamiseen. Koska IPsec toimii OSI-mallin kolmannella kerroksella (verkkokerros), eivät ylemmän tason protokollat, kuten TCP ja UDP, tarvitse erillistä tukea sitä varten. IPseciä voidaan käyttää joko kuljetustilassa, jossa tietyllä välillä kulkeva liikenne salataan päästä päähän, tai tunnelitilassa, jossa esimerkiksi kahden lähiverkon välinen liikenne ohjataan tiettyjen pisteiden kautta, joilloin liikenne salataan vain näiden pisteiden välillä. Kumpaakin tilaa voidaan käyttää VPN-toteutuksiin. Linuxin ytimessä on ollut IPsec-tuki sen 2.6-versiosta lähtien.

FreeS/WAN[muokkaa]

FreeS/WAN on ensimmäinen Linuxille kehitetty kokonainen IPSec-toteutus. Sen kehitys päättyi 2004. Projektia jatkamaan on perustettu Openswan ja strongSwan.

Openswan[muokkaa]

Openswan on FreeS/WANin pohjalta kehitettävä IPsec-ohjelmisto 2.0-, 2.2-, 2.4- ja 2.6-ytimille.

strongSwan[muokkaa]

strongSwan on vahvaan autentikointiin keskittyvä, FreeS/WANista haarautettu IPsec-ohjelmisto 2.4- ja 2.6-ytimille.

L2F[muokkaa]

L2F eli Layer 2 Forwarding on Ciscon kehittämä VPN-protokolla.

L2TP[muokkaa]

L2TP on Microsoftin ja Ciscon PPTP:n ja L2F:n pohjalta kehittämä VPN-protokolla. Turvallisuuden parantamiseksi sen kanssa käytetään usein IPseciä (L2TP/IPsec). L2TP:stä on kehitteillä uusi L2TPv3-versio.

OpenVPN[muokkaa]

OpenVPN on OpenSSL:ään pohjautuva, GPL-lisensoitu VPN-protokolla.

PPTP[muokkaa]

PPTP eli Point-to-Point Tunneling Protocol on Microsoftin kehittämä, PPP:hen pohjautuva VPN-protokolla. Linux-ytimeen on sisältynyt PPTP-tuki 2.6.14-versiosta lähtien. PPTP-protokollasta on löytynyt useita haavoittuvuuksia, eikä se ole turvallinen protokolla. PPTP:n kehitys on nykyisin pysähtynyt.

Tinc[muokkaa]

Tinc on protokolla sekä ohjelma, jolla voidaan rakentaa Mesh-verkkotopologian mukainen VPN-verkko.

Katso myös[muokkaa]

Aiheesta muualla[muokkaa]