Kif Twaqqaf VPN ibbażat fuq IPsec bi Strongswan fuq Debian u Ubuntu
strongSwan hija implimentazzjoni ta' VPN (Netwerk Privat Virtwali) b'sors miftuħ, multi-pjattaforma, b'karatteristiċi sħaħ, u użata ħafna li taħdem fuq Linux, FreeBSD, OS X, Windows, Android u iOS. Huwa primarjament daemon keying li jappoġġja l-protokolli tal-Internet Key Exchange (IKEv1 u IKEv2) biex jiġu stabbiliti assoċjazzjonijiet tas-sigurtà (SA) bejn żewġ peers.
Dan l-artikolu jiddeskrivi kif twaqqaf gateways VPN IPSec minn sit għal sit billi tuża strongSwan fuq servers Ubuntu u Debian. B'sit għal sit irridu nfissru kull portal tas-sigurtà għandu sub-net warajh. Barra minn hekk, il-pari se jawtentikaw lil xulxin billi jużaw ċavetta pre-kondiviża (PSK).
Ftakar li tissostitwixxi l-IPs li ġejjin bl-IPs tad-dinja reali tiegħek biex tikkonfigura l-ambjent tiegħek.
Site 1 Gateway (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
Pass 1: Attivazzjoni tat-Trasmissjoni tal-Pakketti tal-Kernel
1. L-ewwel, għandek bżonn tikkonfigura l-qalba biex tippermetti l-kunsinna tal-pakketti billi żżid il-varjabbli tas-sistema xierqa fil-fajl ta 'konfigurazzjoni /etc/sysctl.conf fuq iż-żewġ gateways tas-sigurtà.
$ sudo vim /etc/sysctl.conf
Fittex il-linji li ġejjin u neħħihom il-kumment u ssettja l-valuri tagħhom kif muri (aqra l-kummenti fil-fajl għal aktar informazzjoni).
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. Sussegwentement, tagħbija l-issettjar il-ġdid billi tħaddem il-kmand li ġej.
$ sudo sysctl -p
3. Jekk għandek servizz tal-firewall tal-UFW attivat, trid iżżid ir-regoli li ġejjin mal-fajl tal-konfigurazzjoni /etc/ufw/before.rules eżatt qabel ir-regoli tal-filtru fi kwalunkwe portal tas-sigurtà.
Site 1 Gateway (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. Ladarba r-regoli tal-firewall ikunu ġew miżjuda, imbagħad applika l-bidliet ġodda billi terġa 'tibda UFW kif muri.
$ sudo ufw disable $ sudo ufw enable
Pass 2: Installazzjoni ta 'strongSwan f'Debian u Ubuntu
5. Aġġorna l-cache tal-pakkett tiegħek fuq iż-żewġ gateways tas-sigurtà u installa l-pakkett strongswan billi tuża l-maniġer tal-pakkett APT.
$ sudo apt update $ sudo apt install strongswan
6. Ladarba l-installazzjoni titlesta, l-iskrittura tal-installatur jibda s-servizz strongswan u jippermettilu jibda awtomatikament fil-boot tas-sistema. Tista 'tiċċekkja l-istatus tagħha u jekk hijiex attivata billi tuża l-kmand li ġej.
$ sudo systemctl status strongswan.service $ sudo systemctl is-enabled strongswan.service
Pass 3: Konfigurazzjoni ta' Gateways tas-Sigurtà
7. Sussegwentement, għandek bżonn tikkonfigura l-gateways tas-sigurtà billi tuża l-fajl tal-konfigurazzjoni /etc/ipsec.conf.
Site 1 Gateway (tecmint-devgateway)
$ sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig $ sudo nano /etc/ipsec.conf
Ikkopja u waħħal il-konfigurazzjoni li ġejja fil-fajl.
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
Ikkopja u waħħal il-konfigurazzjoni li ġejja fil-fajl.
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
Hawn hu t-tifsira ta' kull parametru ta' konfigurazzjoni:
- config setup – jispeċifika informazzjoni ġenerali dwar il-konfigurazzjoni għall-IPSec li tapplika għall-konnessjonijiet kollha.
- charondebug – jiddefinixxi kemm għandu jiġi illoggjat l-output tad-debugging ta' Charon.
- uniqueids – jispeċifika jekk ID ta' parteċipant partikolari għandhiex tinżamm unika.
- conn prodgateway-to-devgateway – jiddefinixxi l-isem tal-konnessjoni.
- tip – jiddefinixxi t-tip ta' konnessjoni.
- awto – kif timmaniġġja l-konnessjoni meta IPSec jinbeda jew jerġa' jibda.
- keyexchange – jiddefinixxi l-verżjoni tal-protokoll IKE li se tuża.
- authby – jiddefinixxi kif il-pari għandhom jawtentikaw lil xulxin.
- xellug – jiddefinixxi 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 – jispeċifika 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 – jiddefinixxi lista ta' algoritmi ta' encryption/awtentikazzjoni IKE/ISAKMP SA li għandhom jintużaw. Tista' żżid lista separata b'virgola.
- esp – jiddefinixxi lista ta' algoritmi ta' encryption/awtentikazzjoni ESP li għandhom jintużaw għall-konnessjoni. Tista' żżid lista separata b'virgola.
- aggressiv – jgħid 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 – jiddikjara kemm għandu jdum il-kanal ta' keying ta' konnessjoni qabel ma jiġi nnegozjat mill-ġdid.
- ħajja – jiddefinixxi kemm għandha ddum istanza partikolari ta' konnessjoni, minn negozjar b'suċċess sal-iskadenza.
- dpddelay – jispeċifika l-intervall ta' ħin li bih jintbagħtu l-messaġġi R_U_THERE/iskambji INFORMAZZJONALI lill-peer.
- dpdtimeout – jispeċifika l-intervall ta' timeout, li warajh il-konnessjonijiet kollha ma' peer jitħassru f'każ ta' inattività.
- dpdaction – jiddefinixxi kif tuża l-protokoll Dead Peer Detection (DPD) biex timmaniġġja l-konnessjoni.
Għal aktar informazzjoni dwar il-parametri ta 'konfigurazzjoni ta' hawn fuq, aqra l-paġna man ipsec.conf billi tħaddem il-kmand.
$ man ipsec.conf
Pass 4: Konfigurazzjoni tal-PSK għall-Awtentikazzjoni Peer-to-Peer
8. Wara li kkonfigurat iż-żewġ gateways tas-sigurtà, iġġenera PSK sikur biex jintuża mill-pari billi tuża l-kmand li ġej.
$ head -c 24 /dev/urandom | base64
9. Sussegwentement, żid il-PSK fil-fajl /etc/ipsec.secrets fuq iż-żewġ gateways.
$ sudo vim /etc/ipsec.secrets
Ikkopja u waħħal il-linja li ġejja.
------- 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. Ibda mill-ġdid il-programm IPSec u ċċekkja l-istatus tiegħu biex tara l-konnessjonijiet.
$ sudo ipsec restart $ sudo ipsec status
11. Finalment, ivverifika li tista' taċċessa s-sub-nets privati minn jew gateways tas-sigurtà billi tħaddem kmand ping.
$ ping 192.168.0.101 $ ping 10.0.2.15
12. Barra minn hekk, tista 'tieqaf u tibda IPSec kif muri.
$ sudo ipsec stop $ sudo ipsec start
13. Biex tkun taf aktar dwar il-kmandi tal-IPSec biex iġibu manwalment konnessjonijiet u aktar, ara l-paġna tal-għajnuna tal-IPSec.
$ ipsec --help
Dak kollox! F'dan l-artikolu, iddeskrivejna kif twaqqaf VPN IPSec minn sit għal sit bl-użu ta 'strongSwan fuq servers Ubuntu u Debian, fejn iż-żewġ gateways tas-sigurtà ġew ikkonfigurati biex jawtentikaw lil xulxin permezz ta' PSK. Jekk għandek xi mistoqsijiet jew ħsibijiet x'taqsam, ikkuntattjana permezz tal-formola ta' feedback hawn taħt.