Hvernig á að setja upp IPsec byggt VPN með Strongswan á Debian og Ubuntu
strongSwan er opinn uppspretta, þvert á vettvang, fullbúið og mikið notað IPsec byggt VPN (Virtual Private Network) útfærsla sem keyrir á Linux, FreeBSD, OS X, Windows, Android og iOS. Það er fyrst og fremst lyklapúki sem styður samskiptareglur Internet Key Exchange (IKEv1 og IKEv2) til að koma á öryggissamböndum (SA) milli tveggja jafningja.
Þessi grein lýsir því hvernig á að setja upp IPSec VPN gáttir frá síðu til staðar með því að nota strongSwan á Ubuntu og Debian netþjónum. Með síðu til síðu er átt við að hver öryggisgátt hafi undirnet á bak við sig. Að auki munu jafnaldrarnir sannvotta hver annan með því að nota fyrirfram deilt lykil (PSK).
Mundu að skipta um eftirfarandi IP-tölur með raunverulegum IP-tölum þínum til að stilla umhverfið þitt.
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
Skref 1: Virkja á framsendingu kjarnapakka
1. Fyrst þarftu að stilla kjarnann til að virkja pakkaframsendingu með því að bæta við viðeigandi kerfisbreytum í /etc/sysctl.conf stillingarskrá á báðum öryggisgáttum.
$ sudo vim /etc/sysctl.conf
Leitaðu að eftirfarandi línum og afskrifaðu þær og stilltu gildi þeirra eins og sýnt er (lestu athugasemdir í skránni fyrir frekari upplýsingar).
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. Næst skaltu hlaða inn nýju stillingunum með því að keyra eftirfarandi skipun.
$ sudo sysctl -p
3. Ef þú ert með UFW eldveggsþjónustu virka þarftu að bæta eftirfarandi reglum við /etc/ufw/before.rules stillingarskrána rétt á undan síureglunum í annarri hvorri öryggisgáttum.
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. Þegar eldveggsreglum hefur verið bætt við skaltu nota nýju breytingarnar með því að endurræsa UFW eins og sýnt er.
$ sudo ufw disable $ sudo ufw enable
Skref 2: Settu upp strongSwan í Debian og Ubuntu
5. Uppfærðu skyndiminni pakkans á báðum öryggisgáttum og settu upp strongswan pakkann með því að nota APT pakkastjórann.
$ sudo apt update $ sudo apt install strongswan
6. Þegar uppsetningunni er lokið mun uppsetningarforskriftin ræsa strongswan þjónustuna og gera henni kleift að byrja sjálfkrafa við ræsingu kerfisins. Þú getur athugað stöðu þess og hvort það sé virkt með eftirfarandi skipun.
$ sudo systemctl status strongswan.service $ sudo systemctl is-enabled strongswan.service
Skref 3: Stilla öryggisgáttir
7. Næst þarftu að stilla öryggisgáttirnar með /etc/ipsec.conf stillingarskránni.
Site 1 Gateway (tecmint-devgateway)
$ sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig $ sudo nano /etc/ipsec.conf
Afritaðu og límdu eftirfarandi stillingar í skrána.
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
Afritaðu og límdu eftirfarandi stillingar inn í skrána.
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
Hér er merking hverrar stillingarbreytu:
- stillingaruppsetning – tilgreinir almennar stillingarupplýsingar fyrir IPSec sem eiga við um allar tengingar.
- charondebug – skilgreinir hversu mikið Charon kembiforrit ætti að skrá inn.
- einstök auðkenni – tilgreinir hvort tiltekið auðkenni þátttakanda eigi að vera einstakt.
- conn prodgateway-to-devgateway – skilgreinir heiti tengingar.
- gerð – skilgreinir gerð tengingar.
- sjálfvirkt – hvernig á að meðhöndla tengingu þegar IPSec er ræst eða endurræst.
- keyexchange – skilgreinir útgáfu IKE samskiptareglunnar sem á að nota.
- authby – skilgreinir hvernig jafningjar eiga að auðkenna hver annan.
- vinstri – skilgreinir IP-tölu almenningsnetsviðmóts vinstri þátttakanda.
- leftsubnet – tilgreinir einkaundirnetið fyrir aftan vinstri þátttakandann.
- hægri – tilgreinir IP-tölu almenna netviðmóts rétts þátttakanda.
- rightsubnet – tilgreinir einkaundirnetið fyrir aftan vinstri þátttakandann.
- ike – skilgreinir lista yfir IKE/ISAKMP SA dulkóðunar-/staðfestingaralgrím sem á að nota. Þú getur bætt við lista sem er aðskilinn með kommum.
- esp – skilgreinir lista yfir ESP dulkóðun/staðfestingaralgrím sem á að nota fyrir tenginguna. Þú getur bætt við lista sem er aðskilinn með kommum.
- árásargjarn – segir til um hvort nota eigi árásargjarn eða aðalham.
- lyklatilraunir – segir til um fjölda tilrauna sem ætti að gera til að semja um tengingu.
- ikelifetime – segir til um hversu lengi lyklarás tengingar á að endast áður en endursamið er.
- líftími – skilgreinir hversu lengi tiltekið tilvik tengingar á að endast, frá árangursríkum samningaviðræðum þar til það rennur út.
- dpddelay – tilgreinir tímabilið sem R_U_THERE skilaboð/INFORMATIONAL skipti eru send til jafningjans.
- dpdtimeout – tilgreinir tímamörkin, eftir það er öllum tengingum við jafningja eytt ef aðgerðaleysi er ekki.
- dpdaction – skilgreinir hvernig á að nota Dead Peer Detection (DPD) samskiptareglur til að stjórna tengingunni.
Fyrir frekari upplýsingar um ofangreindar stillingarfæribreytur, lestu ipsec.conf man síðuna með því að keyra skipunina.
$ man ipsec.conf
Skref 4: Stilla PSK fyrir jafningja-til-jafningja auðkenningu
8. Eftir að hafa stillt báðar öryggisgáttirnar skaltu búa til öruggt PSK til að nota af jafningjum með eftirfarandi skipun.
$ head -c 24 /dev/urandom | base64
9. Næst skaltu bæta við PSK í /etc/ipsec.secrets skránni á báðum gáttum.
$ sudo vim /etc/ipsec.secrets
Afritaðu og límdu eftirfarandi línu.
------- 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. Endurræstu IPSec forritið og athugaðu stöðu þess til að skoða tengingar.
$ sudo ipsec restart $ sudo ipsec status
11. Að lokum skaltu ganga úr skugga um að þú hafir aðgang að einkaundirnetunum frá annarri hvorri öryggisgáttum með því að keyra ping skipun.
$ ping 192.168.0.101 $ ping 10.0.2.15
12. Að auki geturðu stöðvað og ræst IPSec eins og sýnt er.
$ sudo ipsec stop $ sudo ipsec start
13. Til að vita meira um IPSec skipanir til að koma upp tengingum handvirkt og fleira, sjáðu IPSec hjálparsíðuna.
$ ipsec --help
Það er allt og sumt! Í þessari grein höfum við lýst því hvernig á að setja upp IPSec VPN frá síðu til staðar með því að nota strongSwan á Ubuntu og Debian netþjónum, þar sem báðar öryggisgáttirnar voru stilltar til að auðkenna hvort annað með PSK. Ef þú hefur einhverjar spurningar eða hugsanir til að deila skaltu hafa samband við okkur í gegnum athugasemdaformið hér að neðan.