Ipsec l2tp vpn szerver - gentoo wiki

Számos operációs rendszer támogatja az L2TP / IPsec VPN-t a dobozból. Ötvözi a szolgáltatások titoktartási és hitelesítése IPsec (IP-biztonság), a hálózati alagút protokoll alagút második szint (L2TP), és az a felhasználó azonosítását a pppd adminisztrátorok létrehozhatnak a VPN-hálózat a különféle eltérő rendszerek. Ez lehetővé teszi a VPN konfigurálását Android, Windows, Linux, MacOS és egyéb operációs rendszereken kereskedelmi programok használata nélkül.







Ez az útmutató nem terjed ki a DHCP, a RADIUS, a Samba vagy az Open Key Infrastructure (PKI) telepítésére. Nem is magyarázza meg a Linux-ügyfelek konfigurálását, bár ez a lépés könnyen elérhető a kézikönyvből. A Windows ügyfélkonfiguráció egy része kiemelendő a kiszolgáló konfigurációs problémáinak elhárításához.

szimbólumok

Ebben a kézikönyvben a következő konvenciók fognak használni (példa beállítások):

  • Domain - példa.hu
  • A kiszolgáló neve vpn.example.com
  • CA tanúsítványfájl neve - ca.crt
  • Szerver tanúsítvány - vpn.example.com.crt
  • A kiszolgáló kulcs a vpn.example.com.key
  • Ügyfél-tanúsítvány - client.example.com.crt
  • Az ügyfél kulcs a client.example.com.key

Az első és legösszetettebb szint a konfigurációhoz az IPsec. Megjegyezzük, hogy az IPsec egy peer-to-peer hálózat, így terminológiájában az ügyfél nevezik kezdeményezőnek. és a kiszolgáló a válaszadó.

A Windows az IKEv1-et használja. Az IPsec 3 implementációja a Portage-ban: ipsec-tools (racoon), LibreSwan és strongswan.

Az alábbi szakaszok bemutatják a különböző konfigurációkat. Minden egyes lehetőség dokumentálva van

1. lehetőség: ipsec-tools (racoon)

jegyzet
A net-firewall / ipsec-eszközöket össze kell állítani a nat flag-el. ha a kiszolgáló NAT mögött van, vagy a NAT mögött álló ügyfelek is szükségesek.

Az ipsec-tools a legkevésbé funkcionális, de azok számára, akik * BSD-ből jönnek, sokkal intimabbak lehetnek. A BSD-vel ellentétben azonban a Linux nem használ külön interfészt az IPsec számára.

Az ipsec-eszközök telepítése után több fájlt kell létrehoznia. Először hozzon létre olyan könyvtárakat, amelyekben tárolják őket:

root # mkdir / etc / racoon / certs

root # mkdir / etc / racoon / szkriptek

A PSK beállítása az ipsec-eszközökben

felhasználó $ dd ha = / dev / véletlen szám = 24 bs = 1 2> / dev / null | hexdump -e '24 / 1 "% 02x" "\ n" "

A PSK fájl minden bejegyzése egy azonosítóból és egy kulcsból áll. A Windows egy teljesen minősített domain név (FQDN) segítségével azonosítja magát. A kulcsot karakterláncként vagy hexadecimális számként kell jelezni, 0-tól kezdődően. Mindenesetre a tartalom (a kulcs maga) teljesen a rendszergazda választása szerint:

A racoon.conf fájlban a PSK fájlt a pre_shared_key opció jelöli.

/etc/racoon/racoon.conf A rakoon használata a PSK-val

Az ipsec-eszközök konfigurálása tanúsítvány használatával

Másolás ca.crt. vpn.example.com.crt és vpn.example.com.key a / etc / racoon / certs könyvtárban. Győződjön meg róla, hogy a vpn.example.com.key nem minden felhasználó számára elérhető.

Ezután frissítse a konfigurációt a racoon.conf fájlban. ezeket a fájlokat hozzáadja a távoli névtelen részhez.

/etc/racoon/racoon.conf fájl Tanúsítványok használata racoon-nal

Ipsec-eszközök hibaelhárítása

Amikor problémák merülnek fel, ez a rész több irányt adhat megoldásukban.

Biztonsági irányelvek és NAT létrehozása

Az option generate_policy be; arra kényszerítené a rakományt, hogy hozzon létre számunkra a szükséges biztonsági politikát. Azonban a NAT jelenlétében (legalábbis ha a kiszolgáló NAT mögött van), nem fog úgy tenni, ahogyan azt szeretnénk. Ezért, ha a forgalom nem halad át az alagúton, a biztonsági házirendet manuálisan kell meghatározni.

A házirend létrehozása a /etc/ipsec-tools.conf fájlban történik.

2. lehetőség: LibreSwan

A LibreSwan az Openswan egyik fiókja (amely maga is a FreeS / WAN fiókja). A LibreSwan valóban kétségbeesett a valódi Openswan fejlesztők megőrzésével, de miután elhagyták a Xelerance-t, az "Openswan" névvel kapcsolatos vitát egy pert váltották, miután elfogadták a LibreSwan nevet.

Bypass NAT alapértelmezés szerint telepítve van a LibreSwan konfigurációs fájlban, ezért nincs szükség különleges konfigurációs lépésekre.

A PSK beállítása a LibreSwan-ban

Ezután hozza létre a /etc/ipsec.d/vpn.example.com.conf fájlt.

A LibreSwan tanúsítvány használatával

A LibreSwan megköveteli, hogy a Network Security Services (NSS) megfelelően legyen konfigurálva és használják a tanúsítványok kezelésére. A konfigurálás megkönnyítése érdekében létre kell hoznia egy PKCS # 12 csomagot, amely tartalmazza a kiszolgáló titkos kulcsát, annak tanúsítványát és a CA tanúsítványt.

felhasználói $ openssl pkcs12 -export -certfile ca.crt -inkey vpn.example.com.key -in vpn.example.com.crt kijelentkezés /etc/ipsec.d/vpn.example.com.p12

A csomagot ezután importálhatja az NSS adatbázisba:

root # cd /etc/ipsec.d

gyökér # pk12util -i útvonal a /vpn.example.com.p12 -d csomaghoz.

A LibreSwan konfigurációs fájlok az importált objektumok álnevére utalnak. Használjon certutil-L-d-t. és certutil-K-d. hogy megtudja.

A példában a vpn.example.com nevet használták a certutil -K -d paranccsal kapott aliasként.

Itt a vpn.example.com az alias, amelyet a certutil -L -d paranccsal kaptunk.

3. lehetőség: strongSwan

Az strongSwan a FreeS / WAN fiókja (bár a legtöbb kódot kicserélték).

Ami a strongSwan 5.0-et illeti, a NAT traversal automatikus, semmit sem kell beállítani.

A strongSwan nem hoz létre ipsec.secrets fájlt. így létre kell hoznia egyet:

root # érintse meg az /etc/ipsec.secrets fájlt chmod 664 /etc/ipsec.secrets







A PSK beállítása a strongSwan-ban

Ezután írja be az /etc/ipsec.conf fájlt az alábbiak szerint:

Mikor és balra. és a jobboldalt% -ban definiálják. strongSwan azt feltételezi, hogy a helyi számítógép l eft.

Az strongSwan konfigurálása tanúsítvánnyal

A tanúsítványokat és a kulcsokat a megfelelő mappába kell másolni:

root # cp ca.crt /etc/ipsec.d/cacerts

root # cp vpn.example.com.crt /etc/ipsec.d/certs

root # cp vpn.example.com.key /etc/ipsec.d/private

root # chown -R ipsec: /etc/ipsec.d

Végül frissítse az /etc/ipsec.conf fájlt az alábbiak szerint:

Mint korábban, amikor és balra. és a jobb egyenlő:% minden. strongSwan azt feltételezi, hogy a helyi számítógép l eft.

Hibaelhárítás az strongSwan segítségével

IPsec átbocsátó / sérült NAT

A strongSwan korábbi verzióiban az IPsec áttöltése nem működött. Visszaküldött "nem válaszol az IPsec SA kérésére, mert nincs kapcsolat ismertté" vagy (a konfigurációs fájl összetett szerkesztésével) az INVALID_HASH_INFORMATION hiba. Ez nem lehet strongSwan 5.0 vagy újabb verzióval.

Az IPsec szabványos hibaelhárítása

Az IPsec segítségével nem könnyű kezelni. Ez a rész több jelzést tartalmaz a gyakori problémákról és hibákról.

Szerver NAT mögött

A kikötők megnyitása

Meg kell nyitni a 2 portot:

  • 500 UDP port (ISAKMP esetén)
  • 4500 UDP port (NAT Traversal esetében)

Mindenképpen küldje el ezt a VPN szerverre.

A következő internetes protokollok (nem portok) is szükségesek:

Előfordulhat, hogy konfigurálni kell őket a router oldalán, ha speciális paraméterei vannak a protokollok számára (azonban a legtöbb nem rendelkezik ezekkel).

IPsec átbocsátó / sérült NAT

Sok útválasztónak van lehetősége az "IPsec átkelés", ami kétféleképpen jelenthet:

  1. Az IPsec csomagok olyan módon történő torzítása, amely nem kompatibilis a NAT IPsec útvonallal
  2. Engedélyezze, hogy az IPsec csomagok átkerüljenek az útválasztón minden változtatás nélkül.

Ha az IPsec áttelepítés (1), tiltsa le ezt az opciót. Ha azt jelenti (2), akkor kapcsolja be.

Sajnos vannak routerek, amelyek elutasítják az IPsec forgalmat, még akkor is, ha a portok engedélyezve vannak, és csak az opciót támogatják (1). Azok számára, akik ilyen útválasztóval rendelkeznek, 3 lehetőség van:

  1. Frissítse a firmware-t, ha újabb, helyesen futó verzió áll rendelkezésre.
  2. Nyissa meg a hibajelentést / hibát a router modelljével, ha nem elavult
  3. Keressen egy másik útválasztót. A leírások szerint a Linksys és a D-link routerek megfelelően működnek.

Ezt a kézikönyvet eredetileg ilyen routerrel (Zyxel P-330W) írták, és az egyetlen rendelkezésre álló lehetőség volt (3).

Ezek az operációs rendszerek nem támogatják automatikusan az IPsec / L2TP szervereket a NAT mögött. Nézze meg a KB926179-et a rendszerleíró adatbázis módosításaira, amelyek arra kényszerítik őket, hogy támogassák.

Az előre megosztható kulcsok (PSK) korlátai

A második réteg, a második réteg-alagút protokoll (L2TP) sokkal könnyebb konfigurálni. Az IPsec-hoz hasonlóan az L2TP egy peer-to-peer protokoll. Az ügyféloldalt L2TP Access Concentrator vagy LAC-nak hívják, és a kiszolgáló oldal L2TP hálózati szerver vagy LNS.

A megelőzés
Az L2TP teljesen bizonytalan, és nem érhető el az IPsec-kapcsolaton kívül

Az iptables használatakor az alábbi szabályok szerint tiltson le minden ipsec-n kívüli L2TP kapcsolatot:

root # iptables -t szűrő -A INPUT -p udp -m házirend -dir in -pol ipsec -m udp -port l2tp -j ACCEPT

root # iptables -t szűrő -A INPUT -p udp -m udp -dport l2tp -j REJECT -elvetés - icmp-porttal nem elérhető

root # iptables -t szűrő -A OUTPUT -p udp -m házirend -dir out -pol ipsec -m udp -sport l2tp -j ACCEPT

gyökér # iptables -t szűrő -A OUTPUT -p udp -m udp -sport l2tp -j REJECT -leject-with icmp-port-elérhetetlen

Az xl2tpd használata

A RADIUS-kiszolgáló vagy a DHCP használatához hagyja az IP-tartományt és a helyi IP-beállításokat letiltva. Ha a kapcsolat nem stabil, próbáld meg hozzáadni a length bit = yes értéket az lns alapértelmezett szakaszhoz. A PPP hitelesítés elkerülése érdekében cserélje ki a hitelesítést = igen a megtagadási hitelesítéssel = igen.

Hozzon létre egy beállítási fájlt:

Az rp-l2tp használata

Az rp-l2tp konfigurálása egyszerű:

A konfiguráció végső szintje pont-pont protokoll (PPP). A telepítési csomag a net-dialup / pptpd.

root # emerge - net net-dialup / pptpd

  • minden ügyfélszámítógép teljesen megbízható és ellenőrzött, vagy
  • minden felhasználó megbízható, és a kulcsok csak a hozzáférést biztosító felhasználók melletti számítógépeken találhatók, és sehol másutt sem
  • minden kapcsolat automatikus (ez a módszer több hely összekapcsolására szolgál)

A megelőzés
A / etc / ppp / chap-secrets titkosítatlan jelszavakat tartalmaz, ezért győződjön meg róla, hogy csak a gyökér képes olvasni vagy írni ezt a fájlt

Ha a RADIUS-kiszolgáló fut a számítógépen, akkor a pppd használhatja. Győződjön meg róla, hogy a net-dialup / ppp az USE flag-sugárral van összeállítva. Ezután adja hozzá a radius.so plugint a PPP beállításokhoz. A RADIUS és a pppd beállítása ezen útmutatón kívül található.

Az ügyféllel kapcsolatos hibák elhárítása

Windows: A tanúsítvány helyes telepítése (PKI felhasználók számára)

A tanúsítványt a PKCS12 csomagba kell csomagolni. Ezt openssl vagy gnutls segítségével lehet elvégezni:

felhasználó $ openssl pkcs12 -export -certfile ca.crt -inkey kliens.example.com.key -in client.example.com.crt -out client.example.p12

felhasználó $ certtool --load-ca-certificate ca.crt --load-tanúsítvány client.example.com.crt --load-privkey kliens.example.com.key --to-p12 --outfile client.example.com .p12

Kód Kulcs importálása Windows rendszerben

Bővítse a tanúsítványokat. Válasszon bármelyik mappát (bármi legyen is), kattintson a jobb gombbal, válassza az "Összes feladat" lehetőséget, majd az "Importálás" lehetőséget. Csak most kövesse a varázsló utasításait, de az utolsó lépésben győződjön meg arról, hogy a "Automatikusan kiválasztja a tárhelyet a tanúsítványtípus alapján" kiválasztásra kerül.

Windows: Hálózati RAS hibák

766-os hiba: A tanúsítvány nem található

Ha ez a hiba előfordul, akkor a tanúsítvány nem importálódott megfelelően. Győződjön meg róla, hogy importálja az MMC-n keresztül, és ne kattintson duplán a fájlra.

810-es hiba: A VPN-kapcsolat nem fejeződött be

Az ipsec-tools (racoon) használata a rendszer naplójában a következő üzenet jelenhet meg:

Kód Hibaüzenet a rendszer naplójában az ipsec-tools / racoon használatakor

Ez azt jelenti, hogy a tanúsítványt helytelenül importálták, vagy a p12 csomag nincs a CA tanúsítványban. Győződjön meg róla, hogy importálja a kulcsot az MMC-n keresztül, és válassza az "Automatikusan válassza ki a tárolást a tanúsítványtípus alapján" az importálás végén.

XP SP2 és újabb: 809-es hiba: A kiszolgáló nem válaszol (a NAT mögött lévő kiszolgáló)

A Windows XP SP2 és Vista alapértelmezett beállításai nem kapcsolódnak a szerverhez a NAT mögött. Rendszerleíró hackelésre van szüksége. Néhány javítás szükséges a Windows XP és a Windows Vista rendszerhez.

Ez a hiba csak a PKI használatakor jelenik meg. Ez azt jelenti, hogy a subjectAltName nem egyezik a kiszolgálóval, amelyhez az ügyfél csatlakozik. Ez gyakran előfordul dinamikus DNS használatakor, - a tanúsítványnak belső neve van, és nem külső. Adjon hozzá egy külső nevet a tanúsítványhoz, vagy tiltsa le a kapcsolódási beállítások "A kiszolgáló tanúsítványának megnevezése és használata attribútumai" opciót: Biztonság -> Speciális beállítások -> L2TP.

741-es hiba: A helyi számítógép nem támogatja a kívánt titkosítási típust

A Windows megpróbálja végrehajtani az MPPE (gyenge) titkosítást mikor

akkor ez a hiba.

jegyzet
A kapcsolat még mindig védett az IPsec titkosítás útján, csak az MPPE szükségessége szakad meg.

A Mac OS X ügyfeleknek meg kell követelniük azokat az ajánlásokat, amelyekkel egyetértenek. Különösen:

A Mac OS X nem fog csatlakozni, ha a subjectAltName nem egyezik a kiszolgáló nevével, amelyhez kapcsolódik. A Vista-dal ellentétben ez az ellenőrzés nem kapcsolható le.

Továbbá a Mac OS X nem fog csatlakozni, ha a szervertanúsítvány tartalmazza az "Advanced Key Usage" (EKU) mezőket (kivéve az elavult ikeIntermediate-t). Különösen akkor, ha tanúsítványokat használ az easy-rsa OpenVPN segédprogramból. Az EKU "TLS WWW kiszolgáló" vagy "TLS WWW kliens" hozzáadásra kerül, ezért az ilyen tanúsítványok nem működnek. Azonban továbbra is használhatók a Mac OS X ügyfél, mert csak a szervertanúsítványok iránt érdeklődnek.