Giunsa ang Pag-set Up nga nakabase sa IPsec VPN nga adunay Strongswan sa CentOS/RHEL 8


Ang strongSwan usa ka open-source, multi-platform, moderno ug kompleto nga IPsec-based VPN nga solusyon alang sa Linux nga naghatag og bug-os nga suporta para sa Internet Key Exchange (parehong IKEv1 ug IKEv2) aron matukod ang mga asosasyon sa seguridad (SA) tali sa duha ka kaedad. Kini bug-os nga bahin, modular sa disenyo ug nagtanyag daghang mga plugins nga nagpauswag sa kinauyokan nga pagpaandar.

May Kalabutan nga Artikulo: Giunsa ang Pag-set up sa IPsec-based VPN nga adunay Strongswan sa Debian ug Ubuntu

Niini nga artikulo, mahibal-an nimo kung giunsa ang pag-set up sa site-to-site nga IPsec VPN nga mga ganghaan gamit ang strongSwan sa mga server sa CentOS/RHEL 8. Makapahimo kini sa mga kaedad sa pag-authenticate sa usag usa gamit ang lig-on nga pre-shared key (PSK). Ang setup sa site-to-site nagpasabut nga ang matag gateway sa seguridad adunay sub-net sa luyo niini.

Ayaw kalimti ang paggamit sa imong tinuod nga kalibutan nga mga IP address sa panahon sa mga pag-configure samtang nagsunod sa giya.

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

Lakang 1: Pag-enable sa Kernel IP Forwarding sa CentOS 8

1. Sugdi pinaagi sa pagpagana sa kernel IP forwarding functionality sa /etc/sysctl.conf configuration file sa duha ka VPN gateway.

# vi /etc/sysctl.conf

Idugang kini nga mga linya sa file.

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. Human ma-save ang mga pagbag-o sa file, padagana ang mosunod nga mando aron ma-load ang bag-ong mga parameter sa kernel sa runtime.

# sysctl -p

3. Sunod, paghimo ug permanenteng static nga rota sa file /etc/sysconfig/network-scripts/route-eth0 sa duha ka security gateway.

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

Idugang ang mosunod nga linya sa file.

#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. Dayon i-restart ang network manager aron magamit ang bag-ong mga kausaban.

# systemctl restart NetworkManager

Lakang 2: Pag-instalar sa strongSwan sa CentOS 8

5. Ang strongswan package gihatag sa EPEL repository. Aron ma-install kini, kinahanglan nimo nga i-enable ang repositoryo sa EPEL, unya i-install ang strongwan sa duha nga gateway sa seguridad.

# dnf install epel-release
# dnf install strongswan

6. Aron masusi ang bersyon sa strongswan nga na-install sa duha ka gateway, padagana ang mosunod nga sugo.

# strongswan version

7. Sunod, sugdi ang serbisyo sa strongswan ug himoa kini nga awtomatiko nga magsugod sa boot sa system. Dayon pamatud-i ang status sa duha ka security gateway.

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

Mubo nga sulat: Ang pinakabag-o nga bersyon sa strongswan sa CentOS/REHL 8 adunay suporta para sa swanctl (usa ka bag-o, madaladala nga command-line utility nga gipaila uban sa strongSwan 5.2.0, gigamit sa pag-configure, pagkontrol ug pagmonitor sa IKE daemon Charon gamit ang vici plugin) ug starter (o ipsec) utility gamit ang wala na gamita nga stroke plugin.

8. Ang nag-unang direktoryo sa configuration mao ang /etc/strongswan/ nga adunay sulod nga configuration files alang sa duha ka plugins:

# ls /etc/strongswan/

Alang niini nga giya, atong gamiton ang IPsec utility nga gigamit gamit ang strongswan command ug ang stroke interface. Busa among gamiton ang mosunod nga mga configuration file:

  • /etc/strongswan/ipsec.conf – configuration file para sa strongSwan IPsec subsystem.
  • /etc/strongswan/ipsec.secrets – sekreto nga payl.

Lakang 3: Pag-configure sa Mga Gateway sa Seguridad

9. Niini nga lakang, kinahanglan nimong i-configure ang mga profile sa koneksyon sa matag gateway sa seguridad alang sa matag site gamit ang /etc/strongswan/ipsec.conf strongswan configuration file.

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

Kopyaha ug idikit ang mosunod nga configuration sa file.

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

Kopyaha ug idikit ang mosunod nga configuration sa file:

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

Atong ihulagway sa daklit ang matag usa sa mga parameter sa pagsumpo sa ibabaw:

  • config setup – naghubit sa kinatibuk-ang impormasyon sa configuration para sa IPSec nga magamit sa tanang koneksyon.
  • charondebug – nagpiho kon pila ka Charon debugging output ang kinahanglang i-log.
  • uniqueids – naghubit kon ang usa ka participant ID kinahanglan nga tipigan nga talagsaon.
  • conn gateway1-to-gateway2 – gigamit aron itakda ang ngalan sa koneksyon.
  • matang – naghubit sa matang sa koneksyon.
  • Awtomatiko – gigamit sa pagdeklarar unsaon pagdumala sa koneksyon kung ang IPSec gisugdan o gi-restart.
  • keyexchange – nagpahayag sa bersyon sa IKE protocol nga gamiton.
  • authby – nagpiho kon unsaon pag-authenticate sa usag usa.
  • left – nagdeklarar sa IP address sa public-network interface sa wala nga partisipante.
  • leftsubnet – nagdeklara sa pribadong subnet luyo sa wala nga partisipante.
  • tuo – nagdeklarar sa IP address sa public-network interface sa hustong partisipante.
  • rightsubnet – nagdeklara sa pribadong subnet luyo sa wala nga partisipante.
  • ike – gigamit sa pagdeklarar ug lista sa IKE/ISAKMP SA encryption/authentication algorithms nga gamiton. Timan-i nga kini mahimong usa ka listahan nga gibulag sa koma.
  • esp – nagtakda ug listahan sa ESP encryption/authentication algorithms nga gamiton para sa koneksyon.
  • agresibo – nagpahayag kon gamiton ba ang Aggressive o Main Mode.
  • keyingtries – nagpahayag sa gidaghanon sa mga pagsulay nga kinahanglang himoon aron makigsabot og koneksyon.
  • ikelifetime – nagpiho kon unsa kadugay ang keying channel sa usa ka koneksyon kinahanglan nga molungtad sa dili pa renegotiated.
  • tibuok kinabuhi – nagtino kung unsa kadugay ang usa ka partikular nga higayon sa usa ka koneksyon kinahanglan nga molungtad, gikan sa malampuson nga negosasyon hangtod sa pag-expire.
  • dpddelay – nagpahayag sa gilay-on sa panahon diin ang R_U_THERE nga mga mensahe/INFORMATIONAL nga pagbayloay gipadala ngadto sa kauban.
  • dpdtimeout – gigamit sa pagdeklara sa timeout interval, human niini ang tanang koneksyon sa usa ka peer mapapas kung walay kalihokan.
  • dpdaction – nagpiho kon unsaon paggamit ang Dead Peer Detection(DPD) protocol sa pagdumala sa koneksyon.

Makapangita ka ug deskripsyon sa tanang configuration parameters para sa strongSwan IPsec subsystem pinaagi sa pagbasa sa ipsec.conf man page.

# man ipsec.conf

Lakang 4: Pag-configure sa PSK para sa Peer-to-Peer Authentication

10. Sunod, kinahanglan ka nga makamugna og usa ka lig-on nga PSK nga gamiton sa mga kaedad alang sa pag-authenticate sama sa mosunod.

# head -c 24 /dev/urandom | base64

11. Idugang ang PSK sa /etc/strongswan/ipsec.conf file sa duha ka security gateway.

# vi /etc/strongswan/ipsec.secrets

Pagsulod sa mosunod nga linya sa file.

#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. Unya sugdi ang strongsan nga serbisyo ug susiha ang kahimtang sa mga koneksyon.

# systemctl restart strongswan
# strongswan status

13. Sulayi kung ma-access nimo ang pribadong sub-nets gikan sa bisan asa nga security gateway pinaagi sa pagpadagan og ping command.

# ping 10.20.1.1
# ping 10.10.1.1

14. Katapusan apan dili labing gamay, aron mahibal-an ang dugang nga mga mando sa strongswan aron mano-mano nga dad-on ang mga koneksyon ug uban pa, tan-awa ang panid sa tabang sa strongswan.

# strongswan --help

Kana lang sa pagkakaron! Aron ipaambit kanamo ang imong mga hunahuna o mangutana, kontaka kami pinaagi sa porma sa feedback sa ubos. Ug aron makat-on og dugang mahitungod sa bag-ong swanctl utility ug sa bag-ong mas flexible nga istruktura sa configuration, tan-awa ang strongSwan User Documentation.