Kif Twaqqaf VPN ibbażat fuq IPsec bi Strongswan fuq CentOS/RHEL 8


strongSwan hija soluzzjoni VPN b'sors miftuħ, multi-pjattaforma, moderna u kompluta bbażata fuq IPsec għal Linux li tipprovdi appoġġ sħiħ għall-Internet Key Exchange (kemm IKEv1 kif ukoll IKEv2) biex jiġu stabbiliti assoċjazzjonijiet tas-sigurtà (SA) bejn żewġ sħabhom. Hija karatteristika sħiħa, modulari bid-disinn u toffri għexieren ta 'plugins li jtejbu l-funzjonalità ewlenija.

Artikolu Relatat: Kif Twaqqaf VPN ibbażat fuq IPsec bi Strongswan fuq Debian u Ubuntu

F'dan l-artikolu, int se titgħallem kif twaqqaf gateways VPN IPsec minn sit għal sit billi tuża strongSwan fuq servers CentOS/RHEL 8. Dan jippermetti lill-pari biex jawtentikaw lil xulxin billi jużaw ċavetta pre-kondiviża (PSK) b'saħħitha. Setup minn sit għal sit ifisser li kull portal tas-sigurtà għandu sub-net warajh.

Tinsiex tuża l-indirizzi IP tad-dinja reali tiegħek waqt il-konfigurazzjonijiet waqt li ssegwi l-gwida.

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

Pass 1: Jippermettu Kernel IP Forwarding f'CentOS 8

1. Ibda billi tattiva l-funzjonalità ta 'trażmissjoni tal-IP tal-kernel fil-fajl ta' konfigurazzjoni /etc/sysctl.conf fuq iż-żewġ gateways VPN.

# vi /etc/sysctl.conf

Żid dawn il-linji fil-fajl.

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. Wara li ssejvja l-bidliet fil-fajl, mexxi l-kmand li ġej biex tagħbija l-parametri tal-qalba l-ġodda fir-runtime.

# sysctl -p

3. Sussegwentement, oħloq rotta statika permanenti fil-fajl /etc/sysconfig/network-scripts/route-eth0 fuq iż-żewġ gateways tas-sigurtà.

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

Żid il-linja li ġejja fil-fajl.

#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. Imbagħad terġa 'tibda l-maniġer tan-netwerk biex tapplika l-bidliet ġodda.

# systemctl restart NetworkManager

Pass 2: Installazzjoni ta 'strongSwan f'CentOS 8

5. Il-pakkett strongswan huwa pprovdut fir-repożitorju tal-EPEL. Biex tinstallah, jeħtieġ li tattiva r-repożitorju EPEL, imbagħad tinstalla strongwan fuq iż-żewġ gateways tas-sigurtà.

# dnf install epel-release
# dnf install strongswan

6. Biex tiċċekkja l-verżjoni ta 'strongswan installata fuq iż-żewġ gateways, mexxi l-kmand li ġej.

# strongswan version

7. Sussegwentement, ibda s-servizz strongswan u ppermettilu jibda awtomatikament fil-boot tas-sistema. Imbagħad ivverifika l-istatus fuq iż-żewġ gateways tas-sigurtà.

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

Nota: L-aħħar verżjoni ta 'strongswan f'CentOS/REHL 8 tiġi b'appoġġ għaż-żewġ swanctl (utilità tal-linja tal-kmand ġdida u portabbli introdotta b'strongSwan 5.2.0, użata biex tikkonfigura, tikkontrolla u timmonitorja d-daemon IKE Charon bl-użu tal-plugin vici) u starter (jew ipsec) utilità bl-użu tal-plugin stroke deprecated.

8. Id-direttorju tal-konfigurazzjoni prinċipali huwa /etc/strongswan/ li fih fajls tal-konfigurazzjoni għaż-żewġ plugins:

# ls /etc/strongswan/

Għal din il-gwida, se nużaw l-utilità IPsec li hija invokata bl-użu tal-kmand strongswan u l-interface tal-puplesija. Allura aħna se nużaw il-fajls ta 'konfigurazzjoni li ġejjin:

  • /etc/strongswan/ipsec.conf – fajl ta' konfigurazzjoni għas-subsistema strongSwan IPsec.
  • /etc/strongswan/ipsec.secrets – fajl tas-sigrieti.

Pass 3: Konfigurazzjoni ta' Gateways tas-Sigurtà

9. F'dan il-pass, għandek bżonn tikkonfigura l-profili tal-konnessjoni fuq kull portal tas-sigurtà għal kull sit billi tuża l-fajl tal-konfigurazzjoni /etc/strongswan/ipsec.conf strongswan.

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

Ikkopja u waħħal il-konfigurazzjoni li ġejja fil-fajl.

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

Ikkopja u waħħal il-konfigurazzjoni li ġejja fil-fajl:

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

Ejja niddeskrivu fil-qosor kull wieħed mill-parametri tal-konfigurazzjoni hawn fuq:

  • config setup – jiddefinixxi l-informazzjoni ġenerali tal-konfigurazzjoni għall-IPSec li tapplika għall-konnessjonijiet kollha.
  • charondebug – jispeċifika kemm għandu jiġi illoggjat l-output tad-debugging ta' Charon.
  • uniqueids – jiddefinixxi jekk ID ta' parteċipant partikolari għandhiex tinżamm unika.
  • conn gateway1-to-gateway2 – użat biex jiġi stabbilit l-isem tal-konnessjoni.
  • tip – jiddefinixxi t-tip ta' konnessjoni.
  • Awtomatiku – użat biex jiddikjara kif timmaniġġja l-konnessjoni meta jinbeda jew jerġa' jibda IPSec.
  • keyexchange – jiddikjara l-verżjoni tal-protokoll IKE li se tuża.
  • authby – jispeċifika kif il-pari għandhom jawtentikaw lil xulxin.
  • xellug – jiddikjara l-indirizz IP tal-interface tan-netwerk pubbliku tal-parteċipant tax-xellug.
  • leftsubnet – jiddikjara s-subnet privat wara l-parteċipant tax-xellug.
  • dritt – jiddikjara l-indirizz IP tal-interface tan-netwerk pubbliku tal-parteċipant it-tajjeb.
  • rightsubnet – jiddikjara s-subnet privat wara l-parteċipant tax-xellug.
  • ike – użat biex tiddikjara lista ta' algoritmi ta' encryption/awtentikazzjoni IKE/ISAKMP SA li għandhom jintużaw. Innota li din tista' tkun lista separata b'virgola.
  • esp – jispeċifika lista ta' algoritmi ta' encryption/awtentikazzjoni ESP li għandhom jintużaw għall-konnessjoni.
  • aggressiv – jiddikjara jekk għandux juża l-Modalità Aggressiva jew Prinċipali.
  • keyingtries – jiddikjara n-numru ta' tentattivi li għandhom isiru biex tinnegozja konnessjoni.
  • ikellifetime – jispeċifika kemm għandu jdum il-kanal ta' keying ta' konnessjoni qabel ma jiġi nnegozjat mill-ġdid.
  • tul tal-ħajja – jispeċifika kemm għandha ddum istanza partikolari ta' konnessjoni, minn negozjar b'suċċess sal-iskadenza.
  • dpddelay – jiddikjara l-intervall ta' ħin li bih jintbagħtu l-messaġġi R_U_THERE/iskambji INFORMAZZJONALI lill-peer.
  • dpdtimeout – użat biex jiddikjara l-intervall ta' timeout, li warajh il-konnessjonijiet kollha ma' peer jitħassru f'każ ta' inattività.
  • dpdaction – jispeċifika kif tuża l-protokoll Dead Peer Detection (DPD) biex timmaniġġja l-konnessjoni.

Tista' ssib deskrizzjoni tal-parametri kollha tal-konfigurazzjoni għas-subsistema strongSwan IPsec billi taqra l-paġna man ipsec.conf.

# man ipsec.conf

Pass 4: Konfigurazzjoni tal-PSK għall-Awtentikazzjoni Peer-to-Peer

10. Sussegwentement, għandek bżonn tiġġenera PSK b'saħħtu biex tintuża mill-pari għall-awtentikazzjoni kif ġej.

# head -c 24 /dev/urandom | base64

11. Żid il-PSK fil-fajl /etc/strongswan/ipsec.conf fuq iż-żewġ gateways tas-sigurtà.

# vi /etc/strongswan/ipsec.secrets

Daħħal il-linja li ġejja fil-fajl.

#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. Imbagħad ibda s-servizz strongsan u iċċekkja l-istatus tal-konnessjonijiet.

# systemctl restart strongswan
# strongswan status

13. Ittestja jekk tistax taċċessa s-sub-nets privati minn jew gateways tas-sigurtà billi tħaddem kmand ping.

# ping 10.20.1.1
# ping 10.10.1.1

14. Fl-aħħar iżda mhux l-inqas, biex titgħallem aktar kmandi ta 'strongswan biex iġibu manwalment konnessjonijiet 'il fuq/isfel u aktar, ara l-paġna ta' għajnuna ta 'strongswan.

# strongswan --help

Dak kollu għalissa! Biex taqsam il-ħsibijiet tiegħek magħna jew tistaqsi mistoqsijiet, ikkuntattjana permezz tal-formola ta' feedback hawn taħt. U biex titgħallem aktar dwar l-utilità l-ġdida tas-swanctl u l-istruttura l-ġdida tal-konfigurazzjoni aktar flessibbli, ara d-Dokumentazzjoni tal-Utent strongSwan.