Otu esi edobe VPN dabere na IPsec na Strongswan na CentOS/RHEL 8
strongSwan bụ ihe mepere emepe, multi-platform, ọgbara ọhụrụ na zuru ezu IPsec dabeere na VPN ngwọta maka Linux nke na-enye nkwado zuru oke maka Internet Key Exchange (ma IKEv1 na IKEv2) iji guzobe mkpakọrịta nchekwa (SA) n'etiti ndị ọgbọ abụọ. Ọ na-egosipụta n'uju, modular site na imewe ma na-enye ọtụtụ plugins na-eme ka ọrụ ya dịkwuo elu.
Edemede metụtara: Otu esi edobe VPN dabere na IPsec na Strongswan na Debian na Ubuntu
N'edemede a, ị ga-amụta ka esi edobe saịtị-na saịtị IPsec VPN ọnụ ụzọ site na iji strongSwan na sava CentOS/RHEL 8. Nke a na-enyere ndị ọgbọ aka ịnwapụta onwe ha site na iji igodo ikekọrịtara mbụ (PSK). Ntọlite saịtị-na saịtị pụtara ụzọ nchekwa ọ bụla nwere sub-net n'azụ ya.
Echefula iji adreesị IP gị n'ezie n'oge nhazi mgbe ị na-eso ntuziaka.
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
Kwụpụ 1: Na-enyere kernel IP ebugharị na CentOS 8
1. Malite site na-enyere kernel IP ebugharị ọrụ na /etc/sysctl.conf nhazi faịlụ na ma VPN ọnụ ụzọ ámá.
# vi /etc/sysctl.conf
Tinye ahịrị ndị a na faịlụ.
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. Mgbe ịchekwaa mgbanwe na faịlụ ahụ, gbasoo iwu na-esonụ iji buo paramita kernel ọhụrụ na oge ojiri gaa.
# sysctl -p
3. Na-esote, mepụta ụzọ static na-adịgide adịgide na faịlụ /etc/sysconfig/network-scripts/route-eth0 na ụzọ nchebe abụọ.
# vi /etc/sysconfig/network-scripts/route-eth0
Tinye ahịrị na-esonụ na faịlụ.
#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. Mgbe ahụ malitegharịa onye njikwa netwọk ka itinye mgbanwe ọhụrụ ahụ.
# systemctl restart NetworkManager
Kwụpụ 2: Wụnye strongSwan na CentOS 8
5. A na-enye ngwugwu strongswan na ebe nchekwa EPEL. Iji wụnye ya, ịkwesịrị ịme ka ebe nchekwa EPEL rụọ ọrụ, wee wụnye strongwan na ọnụ ụzọ nchekwa abụọ ahụ.
# dnf install epel-release # dnf install strongswan
6. Iji lelee ụdị nke strongswan arụnyere na ọnụ ụzọ abụọ ahụ, gbasoro iwu a.
# strongswan version
7. Ọzọ, malite ọrụ strongswan ma mee ka ọ malite na-akpaghị aka na usoro buut. Wee chọpụta ọkwa dị na ọnụ ụzọ nchekwa abụọ ahụ.
# systemctl start strongswan # systemctl enable strongswan # systemctl status strongswan
Mara: Thedị ọhụrụ nke strongswan dị na CentOS/REHL 8 na-abịa na nkwado maka swanctl abụọ (ihe ọhụrụ, obere ngwa ngwa-ahịrị iwu ewepụtara na Swan 5.2.0 siri ike, ejiri hazie, jikwaa na nyochaa IKE daemon Charon site na iji ngwa mgbakwunye vici) na ihe mmalite (ma ọ bụ ipsec) site na iji ngwa mgbakwunye strok mebiri emebi.
8. Akwụkwọ ndekọ aha isi bụ /etc/strongswan/ nke nwere faịlụ nhazi maka plugins abụọ:
# ls /etc/strongswan/
Maka ntuziaka a, anyị ga-eji ngwa IPsec nke a na-akpọ site na iji iwu strongswan na interface ọrịa strok. Ya mere, anyị ga-eji faịlụ nhazi ndị a:
- /etc/strongswan/ipsec.conf – faịlụ nhazi maka sistemu Swan IPsec siri ike.
- /etc/strongswan/ipsec.secrets – faịlụ nzuzo.
Nzọụkwụ 3: Ịhazi ọnụ ụzọ ámá nchekwa
9. N'ime usoro a, ịkwesịrị ịhazi profaịlụ njikọ na ọnụ ụzọ nchekwa ọ bụla maka saịtị ọ bụla site na iji faịlụ nhazi /etc/strongswan/ipsec.conf strongswan.
# cp /etc/strongswan/ipsec.conf /etc/strongswan/ipsec.conf.orig # vi /etc/strongswan/ipsec.conf
Detuo na mado nhazi ndị a na faịlụ ahụ.
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
Detuo na mado nhazi a na faịlụ a:
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
Ka anyị kọwaa nkenke nke ọ bụla n'ime paramita nhazi n'elu:
- nhazi nhazi – na-akọwapụta ozi nhazi izugbe maka IPSec nke metụtara njikọ niile.
- charondebug – na-akọwapụta ego nbibi Charon kwesịrị ịbanye.
- pụrụ iche – na-akọwa ma ekwesịrị idowe ID onye so na ya pụrụ iche.
- conn gateway1-to-gateway2 - ejiri iji tọọ aha njikọ.
- ụdị – na-akọwa ụdị njikọ.
- Akpaaka – eji ekwupụta otu esi ejikwa njikọ mgbe IPSec malitere ma ọ bụ malitegharịa.
- keyexchange – na-ekwupụta ụdị nke protocol IKE iji.
- authby – na-akọwapụta ka ndị ọgbọ ga-esi enyocha ibe ha.
- aka ekpe - na-ekwupụta adreesị IP nke interface netwọk ọha na eze nke onye aka ekpe.
- leftsubnet – na-ekwupụta subnet nkeonwe n'azụ onye so aka ekpe.
- nri - na-ekwupụta adreesị IP nke interface netwọk ọha na eze nke onye so na ya ziri ezi.
- rightsubnet – na-ekwupụta subnet nkeonwe n'azụ onye so aka ekpe.
- ike - eji ekwupụta ndepụta IKE/ISAKMP SA izo ya ezo/athentication algọridim ga-eji. Rịba ama na nke a nwere ike ịbụ ndepụta nke nwere rikoma.
- esp – ezipụta ndepụta nke ESP izo ya ezo/athentication algọridim ga-eji maka njikọ.
- ike ike - na-ekwupụta ma a ga-eji ọnọdụ ike ike ma ọ bụ isi.
- keyingtries – na-ekwupụta ọnụọgụ nke mbọ a ga-eme iji kparịta njikọ.
- ikelifetime - na-akọwapụta ogologo oge ọwa igodo njikọ ga-adịru tupu emegharia ya.
- oge ndụ - na-akọwapụta ogologo oge otu ihe atụ nke njikọ ga-adịru, site na mkparita uka na-aga nke ọma ruo na njedebe.
- dpddelay – na-ekwupụta oge nke ezigara ndị ọgbọ R_U_THERE ozi/ngbanwe ozi.
- dpdtimeout – nke a na-eji ekwupụta oge ngwụcha, emesịa ehichapụ njikọ niile na ndị ọgbọ ma ọ bụrụ na anaghị arụ ọrụ.
- dpdaction – ezipụta ka esi eji protocol Dead Peer Detection(DPD) jikwaa njikọ ahụ.
Ị nwere ike ịchọta nkọwa nke usoro nhazi niile maka sistemụ Swan IPsec siri ike site n'ịgụ ibe mmadụ ipsec.conf.
# man ipsec.conf
Kwụpụ 4: Na-ahazi PSK maka nyocha ndị ọgbọ na ndị ọgbọ
10. Ọzọ, ịkwesịrị ịmepụta PSK siri ike nke ndị ọgbọ na-eji maka nyocha dị ka ndị a.
# head -c 24 /dev/urandom | base64
11. Tinye PSK na faịlụ /etc/strongswan/ipsec.conf na ụzọ nchekwa abụọ.
# vi /etc/strongswan/ipsec.secrets
Tinye ahịrị na-esonụ na faịlụ.
#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. Mgbe ahụ malite ọrụ strongsan ma lelee ọnọdụ njikọ.
# systemctl restart strongswan # strongswan status
13. Nwalee ma ọ bụrụ na ị nwere ike ịnweta sub-nets nkeonwe site na ọnụ ụzọ nche ọ bụla site na iji iwu ping.
# ping 10.20.1.1 # ping 10.10.1.1
14. N'ikpeazụ ma ọ dịghị ihe ọzọ, ịmụtakwu strongswan iwu iji aka weta elu/ala njikọ na ndị ọzọ, ịhụ strongswan enyemaka ibe.
# strongswan --help
Nke ahụ bụ ihe niile ugbu a! Iji kesaa echiche gị ma ọ bụ jụọ ajụjụ, kpọtụrụ anyị site na mpempe nzaghachi n'okpuru. Na ịmụtakwu banyere uru swanctl ọhụrụ yana nhazi nhazi ọhụrụ na-agbanwe agbanwe, hụ akwụkwọ ikike onye ọrụ Swan siri ike.