Weboldal keresés

IPsec-alapú VPN beállítása a Strongswan segítségével Debianon és Ubuntun


A strongSwan egy nyílt forráskódú, többplatformos, teljes funkcionalitású és széles körben használt IPsec-alapú VPN (Virtual Private Network) megvalósítás, amely Linuxon, FreeBSD-n, OS X-en, Windowson, Androidon és iOS-en fut. Ez elsősorban egy kulcsos démon, amely támogatja az Internet Key Exchange protokollokat (IKEv1 és IKEv2) a biztonsági társítások (SA) létrehozásához.) két társ között.

Ez a cikk leírja, hogyan állíthat be helyek közötti IPSec VPN átjárókat az strongSwan használatával Ubuntu és Debian szervereken. . A helyek között azt értjük, hogy minden biztonsági átjáró mögött van egy alhálózat. Ezenkívül a társak egy előre megosztott kulccsal (PSK) hitelesítik egymást.

Tesztkörnyezet

A környezet konfigurálásához ne felejtse el lecserélni a következő IP-címeket a valós IP-címekre.

1. webhely átjárója (tecmint-devgateway)

OS 1: Debian or Ubuntu
Public IP: 10.20.20.1
Private IP: 192.168.0.101/24
Private Subnet: 192.168.0.0/24

Site 2 Gateway (tecmint-prodgateway)

OS 2: Debian or Ubuntu
Public IP:  10.20.20.3
Private IP: 10.0.2.15/24
Private Subnet: 10.0.2.0/24

1. lépés: A kernel csomagtovábbítás engedélyezése

1. Először is be kell állítania a kernelt, hogy engedélyezze a csomagtovábbítást a megfelelő rendszerváltozók hozzáadásával az /etc/sysctl.conf konfigurációs fájlban mindkét biztonsági átjárón.

sudo vim /etc/sysctl.conf

Keresse meg a következő sorokat, és törölje a megjegyzéseket, és állítsa be az értékeket a képen látható módon (további információért olvassa el a fájl megjegyzéseit).

net.ipv4.ip_forward = 1 
net.ipv6.conf.all.forwarding = 1 
net.ipv4.conf.all.accept_redirects = 0 
net.ipv4.conf.all.send_redirects = 0 

2. Ezután töltse be az új beállításokat a következő parancs futtatásával.

sudo sysctl -p

3. Ha engedélyezve van egy UFW tűzfalszolgáltatás, akkor a következő szabályokat kell hozzáadnia az /etc/ufw/before.rules konfigurációs fájlhoz közvetlenül a szűrőszabályok előtt akár biztonsági átjárók.

1. webhely átjárója (tecmint-devgateway)

*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.2.0/24  -d 192.168.0.0/24 -j MASQUERADE
COMMIT

Site 2 Gateway (tecmint-prodgateway)

*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING  -s 192.168.0.0/24 -d 10.0.2.0/24 -j MASQUERADE
COMMIT

4. Miután hozzáadta a tűzfalszabályokat, alkalmazza az új módosításokat az UFW újraindításával az ábrán látható módon.

sudo ufw disable 
sudo ufw enable

2. lépés: A strongSwan telepítése Debianban és Ubuntuban

5. Frissítse csomaggyorsítótárát mindkét biztonsági átjárón, és telepítse az strongswan csomagot az APT csomagkezelő segítségével.

sudo apt update
sudo apt install strongswan 

6. A telepítés befejezése után a telepítő szkript elindítja a strongswan szolgáltatást, és lehetővé teszi, hogy a rendszerindításkor automatikusan elinduljon. A következő paranccsal ellenőrizheti állapotát és azt, hogy engedélyezve van-e.

sudo systemctl status strongswan.service
sudo systemctl is-enabled strongswan.service

3. lépés: Biztonsági átjárók konfigurálása

7. Ezután be kell állítania a biztonsági átjárókat az /etc/ipsec.conf konfigurációs fájl segítségével.

1. webhely átjárója (tecmint-devgateway)

sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig
sudo nano /etc/ipsec.conf 

Másolja és illessze be a következő konfigurációt a fájlba.

config setup
        charondebug="all"
        uniqueids=yes
conn devgateway-to-prodgateway
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=10.20.20.1
        leftsubnet=192.168.0.101/24
        right=10.20.20.3
        rightsubnet=10.0.2.15/24
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart

Site 2 Gateway (tecmint-prodgateway)

sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig
sudo nano /etc/ipsec.conf 

Másolja és illessze be a következő konfigurációt a fájlba.

config setup
        charondebug="all"
        uniqueids=yes
conn prodgateway-to-devgateway
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=10.20.20.3
        leftsubnet=10.0.2.15/24
        right=10.20.20.1
        rightsubnet=192.168.0.101/24 
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart

Íme az egyes konfigurációs paraméterek jelentése:

  • config setup – az IPSec általános konfigurációs adatait határozza meg, amelyek minden kapcsolatra vonatkoznak.
  • charondebug – meghatározza, hogy mennyi Charon hibakeresési kimenetet kell naplózni.
  • egyedi azonosítók – megadja, hogy egy adott résztvevőazonosítót egyedinek kell-e tartani.
  • conn prodgateway-to-devgateway – a kapcsolat nevét határozza meg.
  • type – a kapcsolat típusát határozza meg.
  • automatikus – a kapcsolat kezelése az IPSec indításakor vagy újraindításakor.
  • kulcscsere – meghatározza az IKE protokoll használandó verzióját.
  • authby – meghatározza, hogy a társaknak hogyan kell hitelesíteniük egymást.
  • bal – a bal oldali résztvevő nyilvános hálózati interfészének IP-címét határozza meg.
  • baloldali alhálózat – jelzi a bal oldali résztvevő mögötti privát alhálózatot.
  • jobbra – a megfelelő résztvevő nyilvános hálózati interfészének IP-címét adja meg.
  • rightsubnet – a bal oldali résztvevő mögötti privát alhálózatot jelzi.
  • ike – a használandó IKE/ISAKMP SA titkosítási/hitelesítési algoritmusok listáját határozza meg. Hozzáadhat vesszővel elválasztott listát.
  • esp – a kapcsolathoz használandó ESP titkosítási/hitelesítési algoritmusok listáját határozza meg. Hozzáadhat vesszővel elválasztott listát.
  • agresszív – megadja, hogy az Agresszív vagy a Fő módot használja-e.
  • keyingtries – megadja, hogy hány kísérletet kell tenni a kapcsolat egyeztetésére.
  • ikelifetime – azt határozza meg, hogy mennyi ideig kell tartania egy kapcsolat kulcscsatornájának az újratárgyalást megelőzően.
  • élettartam – meghatározza, hogy mennyi ideig tartson fenn egy kapcsolat egy adott példánya a sikeres egyeztetéstől a lejáratig.
  • dpddelay – azt az időintervallumot határozza meg, amelyen belül R_U_THERE üzenet/INFORMÁCIÓS csere elküldésre kerül a peer-nek.
  • dpdtimeout – az időtúllépési időintervallumot határozza meg, amely után inaktivitás esetén minden kapcsolat törlődik egy partnerrel.
  • dpdaction – meghatározza, hogyan kell használni a Dead Peer Detection (DPD) protokollt a kapcsolat kezelésére.

A fenti konfigurációs paraméterekkel kapcsolatos további információkért olvassa el az ipsec.conf kézikönyvet a parancs futtatásával.

man ipsec.conf

4. lépés: A PSK konfigurálása a peer-to-peer hitelesítéshez

8. Mindkét biztonsági átjáró konfigurálása után hozzon létre egy biztonságos PSK-t, amelyet a társak használhatnak a következő paranccsal.

head -c 24 /dev/urandom | base64

9. Ezután adja hozzá a PSK-t az /etc/ipsec.secrets fájlhoz mindkét átjárón.

sudo vim /etc/ipsec.secrets

Másolja és illessze be a következő sort.

------- Site 1 Gateway (tecmint-devgateway) ------- 

10.20.20.1 10.20.20.3 : PSK "qLGLTVQOfqvGLsWP75FEtLGtwN3Hu0ku6C5HItKo6ac="

------- Site 2 Gateway (tecmint-prodgateway) -------

10.20.20.3  10.20.20.1 : PSK "qLGLTVQOfqvGLsWP75FEtLGtwN3Hu0ku6C5HItKo6ac="

10. Indítsa újra az IPSec programot, és ellenőrizze annak állapotát a kapcsolatok megtekintéséhez.

sudo ipsec restart
sudo ipsec status

11. Végül egy ping parancs futtatásával ellenőrizze, hogy bármelyik biztonsági átjáróról hozzáfér-e a privát alhálózatokhoz.

ping 192.168.0.101
ping 10.0.2.15

12. Ezenkívül leállíthatja és elindíthatja az IPSec-et a képen látható módon.

sudo ipsec stop
sudo ipsec start

13. Ha többet szeretne megtudni a kapcsolatokat manuálisan létrehozó IPSec-parancsokról és egyebekről, tekintse meg az IPSec súgóoldalát.

ipsec --help

Ez minden! Ebben a cikkben bemutattuk, hogyan állíthat be helyek közötti IPSec VPN-t strongSwan használatával Ubuntu és Debian szervereken, ahol mindkettő a biztonsági átjárókat úgy konfigurálták, hogy PSK használatával hitelesítsék egymást. Ha bármilyen kérdése vagy gondolata van, forduljon hozzánk az alábbi visszajelzési űrlapon keresztül.