OpenVPN telepítési és beállítási Ubuntu Linux alatt 5 percig, programozó jegyzetek
Rendszeres olvasója ennek a blognak valószínűleg már egy párszor az életben felállított OpenVPN. De azt hiszem, hogy az újonnan, ez a cikk hasznos lesz, és érdekes. Belőle akkor megtanulják, hogyan kell emelni a saját VPN-szerver, valamint amit ténylegesen szüksége van öt percig. Nos, figyelembe véve a nyilvántartásba vétel időpontjában semmilyen Amazon'e. DigitalOcean, VDSina vagy FastVDS és fizetési VDS, talán nem kell öt percig, és az „egész” tizenöt.
Szóval, miért valaki járni egy VPN? Az a tény, számos oka lehet. Például, hogy a jelszót küldött HTTP-n keresztül nem folyt, amikor ülsz a nyílt WiFi pontot ismeretlen eredetű. És valóban, még a rendszeres szolgáltató nem szükséges tudni, hogy melyik oldalakat látogat. Mégis - hogy ne égesse meg IP IRC hálózatok és más szolgáltatásokat, amelyekkel dolgozik. Tudják a hely is elég haszontalan. Is, akkor érdemes kipróbálni néhány új szolgáltatás, amely eddig nem áll rendelkezésre az oroszországi IP. Ezen túlmenően, a forgalom közted és a VPN-szerver nem csak a titkosított, hanem sűrített, amelyek gyakran okoznak az érzés egy gyors internet. OpenVPN is hasznos lehet sok más esetben - az alkalmazottak hozzáférhetnek a belső forrásokat a cég, az építési alkalmazásáról szóló VDS'ah a mikroservisnoy építészet és azon túl.
Miért van szükség a VPN, nem pedig a proxy vagy a pattogás a kikötők SSH-n keresztül, remélem is érthető. VPN elég, hogy hozzanak létre egy időben, és azonnal a közlekedés valamennyi alkalmazás megy keresztül VPN szerver, vagy egy tömörített és titkosított formában.
Hogy növelje annak a VPN, akkor szükség van a saját szerver Ubuntu Linux (vagy más Linux / BSD, de akkor lesz elég nehéz követni az utasításokat ebben a cikkben), valamint a jogot, hogy root meg. Ha már van egy szerver is. Ha nem, ne aggódj. Ma, vegyél egy megfelelő VDS / VPS lehet vicces 150 rubelt havonta. Cégek, amelyek a kapcsolódó szolgáltatások - több tucat, egyes nevezték elején a jegyzetet. Tanácsot adott nehéz. Ha szüksége van egy autó valahol az Egyesült Államokban, fizetni csak hitelkártyával és az árak dollárban nem zavaros, nézd meg a DigitalOcean. Ha elégedett a helyét a szerver Amszterdam c orosz IP és akar fizetni a lehető legkisebb, a Yandex.Money, WebMoney vagy hasonló rendszerek (rendre Bizottság) próbálja VDSina. Nos, mondanom sem kell, ne legyen lusta, hogy vizsgálja meg a saját, mert mire ezeket a sorokat olvassák, a helyzet a VDS lehet változtatni a piacon. És nem, ez a post nem fizetett senki :)
Menj a szerver, lesz gyökér, azt mondjuk:
apt-get update
apt-get install openvpn
Korábban OpenVPN benne nevű segédprogram könnyen rsa, amelynek célja a generációs kulcsok és tanúsítványok. Kezdve 2.3 verzió A segédprogram vágott csomagot, így van, hogy töltse le és fordítsd magad:
cd / tmp
wget https: // github.com / OpenVPN / easy-rsa / archive / master.zip
apt-get install kicsomagoló
kicsomagolás master.zip
cd könnyen rsa-master
. / Építése / build-dist.sh
tar xvzf. / EasyRSA-git-development.tgz
cd EasyRSA-git-fejlesztés
Mi generálni az összes szükséges kulcsokat és tanúsítványokat. Készülj fel, hogy adja meg a jelszavakat őket. Mivel mi létrehozott személyes VPN szerver, úgy tűnik, akkor egy jelszót, de hosszabb:
/ Easyrsa init-pki
. / Easyrsa épít-ca
. / Easyrsa build-szerver teljes kiszolgáló
. / Easyrsa build-kliens teljes client1
. / Easyrsa gen-dh
Az utolsó parancs több percig is eltarthat.
Transzfer a kapott kulcsokat és tanúsítványokat az / etc / openvpn /:
mv. / Pki / dh.pem / etc / openvpn / dh.pem
mv. / Pki / private / client1.key / etc / openvpn /
mv. / Pki / private / server.key / etc / openvpn /
mv. / Pki / ca.crt / etc / openvpn /
mv. / Pki / ki / client1.crt / etc / openvpn /
mv. / Pki / ki / server.crt / etc / openvpn /
Ugyanabban a könyvtárban hozzon létre egy fájlt server.conf:
mód szerver
dev tun
szerver 10.128.0.0 255.255.255.0
push "redirect-gateway dEF1"
# Fontos! különben megy a DNS-szolgáltató
push "dhcp-opció DNS 8.8.8.8"
tls-szerver
ca ca.crt
cert server.crt
kulcs server.key
dh dh.pem
proto tcp-szerver
port 1194
# Ügyfelek látják egymást
kliens-kliens
comp-LZO
keepalive 10120
ige 4
rejtjel AES-256-CBC
nobody felhasználó
csoport nogroup
max-ügyfelek 10
Próbáljuk futtatni a OpenVPN. Amikor megszökött, akkor meg kell adnia egy jelszót. Ennek megfelelően, egy újraindítás után fel kell emelni a OpenVPN kezét. De mivel felállítottuk a VPN személyes, ez valószínűleg nem jelent nagy problémát, mint kulcs feküdt a tiszta, vagy ami még rosszabb - a tárolt jelszavakat. fut:
szolgáltatás OpenVPN Start
A szerver kell hallgatni porton 1194. Ha nem, akkor a füst / var / log / syslog.
Most a kliens oldalon. Meg kell client1.crt fájlok client1.key és ca.crt:
mkdir vpn
cd vpn
scp vpn-server: / etc / openvpn / client1.crt. /
scp vpn-server: / etc / openvpn / client1.key. /
scp vpn-server: / etc / openvpn / ca.crt. /
Client.conf hozzon létre egy fájlt:
# A következő két sor csak akkor érvényesek, * nix rendszerek
# A gyakorlatban ezek nem nagyon kényelmes, mert nem OpenVPN
# Normál esetben minden a tiszta munka végeztével
# User nobody
# Group nogroup
fennállnak-kulcs
fennállnak-tun
ca ca.crt
cert client1.crt
kulcs client1.key
rejtjel AES-256-CBC
comp-LZO
ige 3
Hem a szerverre, figyelmesen olvassa el a rönk:
sudo OpenVPN --config client.conf
A szomszédos terminál azt mondják:
ping 10.128.0.1
traceroute mail.ru
Ha mindent helyesen tette, akkor azt találjuk, hogy a ping sikeresen eléri 10.128.0.1 (első csapat), de a csomagok rajta nem fog múlni (második csapat). Ez azért van, mert elfelejtette beállítani NAT a szerveren. Amit személyesen találom furcsának. Halványan emlékszem, hogy amikor időm tettem fel OpenVPN FreeBSD alatt. Egy ilyen lépés nem szükséges. Azonban lehet, hogy tévedek.
Ahhoz nem kell újraindítani, azt mondjuk:
echo 1 >> / proc / sys / net / ipv4 / conf / all / fuvarozás
iptables -A FORWARD -s 10.128.0.0 / 24 -j ACCEPT
iptables -A FORWARD -d 10.128.0.0 / 24 -m state \
--kialakult állapotnak, KAPCSOLÓDÓ -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.128.0.0 / 24 \
-j SNAT --to forráskódú 123.45.67.89
... ahol 123.45.67.89 - a kiszolgáló IP címét. És leválasztotta a kliens, igyekszünk menni bármely 2ip.ru vagy ip.xss.ru - most minden kell dolgozni. Ha nem, a dohányzás naplókat. Ha minden rendben van, csak a tűzfal szabályok a szerveren:
iptables-save> / etc / iptables.rules
... és ellenőrizze, hogy a / etc / network / interfaces egy sort:
pre-up iptables-restore,
Ha a szerver már korábban hangolt tűzfal. lehet, hogy a szabályokat fájlban tárolt névvel eltérő /etc/iptables.rules.
Azt lehet mondani, újraindítás, és ellenőrizze, hogy a beállítások tartják újraindítása után a kiszolgáló:
cat / proc / sys / net / ipv4 / conf / all / fuvarozás
iptables -L -n
Az OpenVPN szerver természetesen újra kell indítani a kezét.
Ami marad, az utolsó simítás a kliens. Az a tény, hogy (1) fut openvpnt egy külön terminál, és kövesse őt, ha ő esett ott, kényelmetlen. Ezen túlmenően, (2), ha azt mondja az ügyfél:
nm-szerszám | grep DNS
sudo iptables -A OUTPUT -d 192.168.0.1 -j DROP
# ^ Törléséhez a szabályt írja be ugyanazt a parancsot a -D helyett -A
... ahol a 192.168.0.1 - DNS a szolgáltató (közüzemi származó nm-eszköz), azt találjuk, hogy a domén rezolving törött, ezért az ügyfél továbbra is a DNS-szolgáltatót. Akkor két legyet egy csapásra, mondván:
sudo apt-get install network-manager-openvpn-gnome
... és konfigurálása VPN keresztül NetworkManager (a hálózat ikonra a jobb felső sarokban az Egység). Ez lesz könnyű, sőt meg kell ismételni egy szöveges config használó ügyfél jelölőnégyzetek és beviteli mezőt. Megérteni, mi a pipa a config vonal megfelel, nagyon könnyen. A legfontosabb dolog - ne legyen lusta mászni mindenféle fejlett funkciók a hálózat, és más konfigurációs szakaszok. Ha hibázik valahol, a probléma könnyen diagnosztizálható a fájl a / var / log / syslog.
Annak ellenére, hogy a jegyzet kiderült, elég hosszú, OpenVPN konfiguráció tényleg csak néhány percet vesz igénybe. Biztonságos és gyorsan böngészhet az interneten! És azt is, mint mindig, én is nagyon örülök a kérdésekre, és kiegészítéseket.
Mint a bejegyzést? Oszd meg másokkal:
(Meg kell adni JS)