IPsec-pohjaisen VPN: n määrittäminen Strongswanilla CentOS/RHEL 8: een


strongSwan on avoimen lähdekoodin, monitasoinen, moderni ja täydellinen IPsec-pohjainen VPN-ratkaisu Linuxille, joka tarjoaa täyden tuen Internet-avaimenvaihdolle (sekä IKEv1 että IKEv2) kahden vertaisryhmän välisten tietoturvayhdistysten (SA) luomiseksi. Se on monipuolinen, modulaarisesti suunniteltu ja tarjoaa kymmeniä laajennuksia, jotka parantavat ydintoimintoja.

Aiheeseen liittyvä artikkeli: IPsec-pohjaisen VPN: n määrittäminen Strongswanilla Debianissa ja Ubuntussa

Tässä artikkelissa opit määrittämään sivustojen väliset IPsec VPN -yhdyskäytävät käyttämällä strongSwania CentOS/RHEL 8 -palvelimilla. Tämän avulla vertaisversiot voivat todentaa toisensa vahvalla jaetulla avaimella (PSK). Sivustojen välinen asennus tarkoittaa, että jokaisella suojausyhdyskäytävällä on aliverkko takana.

Älä unohda käyttää todellisia IP-osoitteitasi määritysten aikana noudattaessasi opasta.

Public IP: 192.168.56.7
Private IP: 10.10.1.1/24
Private Subnet: 10.10.1.0/24
Public IP:  192.168.56.6
Private IP: 10.20.1.1/24
Private Subnet: 10.20.1.0/24

Vaihe 1: Ytimen IP-edelleenlähetyksen ottaminen käyttöön CentOS 8: ssa

1. Aloita ottamalla ytimen IP-edelleenlähetystoiminto käyttöön /etc/sysctl.conf -määritystiedostossa molemmissa VPN-yhdyskäytävissä.

# vi /etc/sysctl.conf

Lisää nämä rivit tiedostoon.

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. Kun olet tallentanut muutokset tiedostoon, suorita seuraava komento ladataksesi uudet ytimen parametrit ajon aikana.

# sysctl -p

3. Luo seuraavaksi pysyvä staattinen reitti tiedostoon/etc/sysconfig/network-scripts/route-eth0 molemmissa suojausyhdyskäytävissä.

# vi /etc/sysconfig/network-scripts/route-eth0

Lisää seuraava rivi tiedostoon.

#Site 1 Gateway
10.20.1.0/24  via 192.168.56.7

#Site 2 Gateway
10.10.1.0/24 via 192.168.56.6

4. Käynnistä sitten verkonhallinta uudelleen, jotta uudet muutokset otetaan käyttöön.

# systemctl restart NetworkManager

Vaihe 2: strongSwanin asentaminen CentOS 8: een

5. strongswan-paketti löytyy EPEL-arkistosta. Asentaaksesi sen, sinun on otettava käyttöön EPEL-arkisto ja asennettava sitten strongwan molempiin suojausyhdyskäytäviin.

# dnf install epel-release
# dnf install strongswan

6. Tarkista molemmille yhdyskäytäville asennettu strongswan-versio suorittamalla seuraava komento.

# strongswan version

7. Käynnistä seuraavaksi strongswan-palvelu ja salli se käynnistymään automaattisesti järjestelmän käynnistyessä. Tarkista sitten molempien suojausyhdyskäytävien tila.

# systemctl start strongswan 
# systemctl enable strongswan
# systemctl status strongswan

Huomaa: CentOS/REHL 8: n viimeisimmässä versiossa on mukana molemmat swanctl (uusi, kannettava komentorivi-apuohjelma, joka on otettu käyttöön strongSwan 5.2.0: lla, jota käytetään konfiguroimaan, ohjaamaan ja valvomaan IKE-demonia Charon vici-laajennuksen avulla) ja käynnistin (tai ipsec) -apuohjelma vanhentuneen iskun laajennuksen avulla.

8. Pääkonfigurointihakemisto on/etc/strongswan /, joka sisältää konfigurointitiedostot molemmille lisäosille:

# ls /etc/strongswan/

Tässä oppaassa käytämme IPsec-apuohjelmaa, joka käynnistetään strongswan-komennolla ja aivohalvausrajapinnalla. Joten käytämme seuraavia määritystiedostoja:

  • /etc/strongswan/ipsec.conf - strongSwan IPsec -alijärjestelmän määritystiedosto.
  • /etc/strongswan/ipsec.secrets - salaisuustiedosto.

Vaihe 3: Suojausyhdyskäytävien määrittäminen

9. Tässä vaiheessa sinun on määritettävä yhteysprofiilit jokaisen sivuston suojausyhdyskäytävässä /etc/strongswan/ipsec.conf strongswan -määritystiedoston avulla.

# cp /etc/strongswan/ipsec.conf /etc/strongswan/ipsec.conf.orig
# vi /etc/strongswan/ipsec.conf

Kopioi ja liitä seuraava kokoonpano tiedostoon.

config setup
        charondebug="all"
        uniqueids=yes
conn ateway1-to-gateway2
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=192.168.56.7
        leftsubnet=10.10.1.1/24
        right=192.168.56.6
        rightsubnet=10.20.1.1/24
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart
# cp /etc/strongswan/ipsec.conf /etc/strongswan/ipsec.conf.orig
# vi /etc/strongswan/ipsec.conf

Kopioi ja liitä seuraava kokoonpano tiedostoon:

config setup
        charondebug="all"
        uniqueids=yes
conn 2gateway-to-gateway1
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=192.168.56.6
        leftsubnet=10.20.1.1/24
        right=192.168.56.7
        rightsubnet=10.10.1.1/24
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart

Kuvailemme lyhyesti kaikkia yllä olevia määritysparametreja:

  • config setup - määrittelee IPSecin yleiset määritystiedot, jotka koskevat kaikkia yhteyksiä.
  • charondebug - määrittää, kuinka paljon Charonin virheenkorjaustulos tulisi kirjata.
  • yksilölliset tunnukset - määrittää, pitäisikö tietyn osallistujan tunnus pitää yksilöllisenä.
  • yhdyskäytävä1 - yhdyskäytävä2 - käytetään yhteyden nimen asettamiseen.
  • tyyppi - määrittää yhteystyypin.
  • Automaattinen - käytetään ilmoittamaan yhteyden käsittelystä, kun IPSec käynnistetään tai käynnistetään uudelleen.
  • avaimenvaihto - julistaa käytettävän IKE-protokollan version.
  • authby - määrittää, kuinka ikäisensä todentavat toisensa.
  • vasen - ilmoittaa vasemman osanottajan julkisen verkon käyttöliittymän IP-osoitteen.
  • leftsubnet - ilmoittaa yksityisen aliverkon vasemman osanottajan takana.
  • oikea - ilmoittaa oikean osallistujan julkisen verkon käyttöliittymän IP-osoitteen.
  • Rightsubnet - ilmoittaa yksityisen aliverkon vasemman osanottajan takana.
  • ike - käytetään ilmoittamaan luettelo käytetyistä IKE/ISAKMP SA -salaus-/todennusalgoritmeista. Huomaa, että tämä voi olla pilkuilla erotettu luettelo.
  • esp - määrittää luettelon yhteyden muodostamiseen käytetyistä ESP-salaus-/todennusalgoritmeista.
  • aggressiivinen - ilmoittaa, käytetäänkö aggressiivista vai päämoodia.
  • avainyritykset - ilmoittaa, kuinka monta yritystä yhteysneuvotteluun on yritettävä.
  • ikelifetime - määrittää, kuinka kauan yhteyden avainkanavan tulisi kestää ennen uudelleenneuvottelua.
  • elinikä - määrittää, kuinka kauan yhteyden tietyn esiintymän tulisi kestää, onnistuneista neuvotteluista päättymiseen.
  • dpddelay - ilmoittaa aikavälin, jolla R_U_THERE-sanomat/INFORMATION-vaihdot lähetetään vertaiselle.
  • dpdtimeout - käytetään aikakatkaisuvälin ilmoittamiseen, jonka jälkeen kaikki yhteydet vertaisryhmään poistetaan, jos sitä ei käytetä.
  • dpdaction - määrittää, miten Dead Peer Detection (DPD) -protokollaa käytetään yhteyden hallintaan.

Löydät kuvauksen kaikista strongSwan IPsec -alijärjestelmän kokoonpanoparametreista lukemalla ipsec.conf-manusivun.

# man ipsec.conf

Vaihe 4: PSK: n määrittäminen vertaisarviointia varten

10. Seuraavaksi sinun on luotava vahva PSK, jota vertaisryhmät käyttävät todennuksessa seuraavasti.

# head -c 24 /dev/urandom | base64

11. Lisää PSK molempien suojausyhdyskäytävien tiedostoon /etc/strongswan/ipsec.conf.

# vi /etc/strongswan/ipsec.secrets

Kirjoita seuraava rivi tiedostoon.

#Site 1 Gateway
192.168.56.7  192.168.56.6 : PSK "0GE0dIEA0IOSYS2o22wYdicj/lN4WoCL"

#Site 1 Gateway
192.168.56.6  192.168.56.7 : PSK "0GE0dIEA0IOSYS2o22wYdicj/lN4WoCL"

12. Käynnistä sitten strongsan-palvelu ja tarkista yhteyksien tila.

# systemctl restart strongswan
# strongswan status

13. Testaa, voitko käyttää yksityisiä aliverkkoja jostakin suojausyhdyskäytävästä suorittamalla ping-komennon.

# ping 10.20.1.1
# ping 10.10.1.1

14. Viimeisenä mutta ei vähäisimpänä, katso lisätietoja strongswan-ohjesivulta, jos haluat oppia lisää strongswan-komentoja manuaalisesti tuoda/alas yhteydet ja paljon muuta.

# strongswan --help

Tässä kaikki tältä erää! Voit jakaa ajatuksesi kanssamme tai esittää kysymyksiä ottamalla meihin yhteyttä alla olevan palautelomakkeen avulla. Ja lisätietoja uudesta swanctl-apuohjelmasta ja uudesta joustavammasta kokoonpanorakenteesta on osoitteessa strongSwan User Documentation.