Fullt göng í strongSwan krefst 0.0.0.0/0 á báðum hliðum
Fullt göng krefst 0.0.0.0/0 sem remote_ts biðlarans og local_ts gáttarinnar, auk framsendingar, NAT og endurkomuleiðar. Athugið öll fjögur.
strongSwan-tenging sem virkar fyrir eitt einkarekið undirnet mun ekki flytja netumferð bara af því að einhver breytti einni línu. Fullt göng eru samkomulag milli tveggja aðila um hvaða vistföng child SA verndar, og hvor aðili nefnir hinn miðað við sig. Gerið aðra hlið rétta og hina ranga, og child SA kemst annaðhvort ekki upp eða kemst upp mjórri en ætlað var. Fimm athuganirnar hér að neðan fylgja þessu samkomulagi frá biðlaranum, í gegnum gáttina og út á netið.
Athugið fyrst val biðlarans
Biðlarinn lýsir því sem hann vill vernda hinum megin sem remote_ts, og allt sem hann sendir kemur frá eigin úthlutuðu vistfangi. Fyrir netumferð verður það gildi að ná yfir áfangastaðina sem notandinn nær í raun, sem í reynd þýðir allt IPv4-rýmið. Biðlari sem enn telur upp eitt undirnet biður um klofið göng, hvað sem sniðið heitir í viðmótinu. Upprunahliðin er venjulega dynamic því vistfangið er úthlutað við tengingu. Föst uppspretta sem skrifuð er þar brotnar um leið og vistfangasafnið breytist.
children {
net {
local_ts = dynamic
remote_ts = 0.0.0.0/0
}
}
Brot þetta er ekki heil tengiskrá, og þetta gerir ráð fyrir að auðkenning, sjálfsmyndir og safn sýndarvistfanga séu þegar stillt. Upprunavals biðlarans og vistfangið sem þjónninn úthlutar verða enn að stemma, annars kemst child SA upp með umfangi sem hvorug hliðin bjóst við. Hlaðið því með swanctl --load-all og lesið úttakið áður en þið gerið ráð fyrir árangri. Skrá sem þáttast getur samt verið hafnað vegna vals sem skarast ekki við tillögu hinnar hliðarinnar.
Athugið val gáttarinnar á hennar eigin hlið
Gáttin les sama hugtak úr gagnstæðri átt. Netáfangastaðir eru staðbundnir fyrir gáttina, svo local_ts hennar er hið breiða og remote_ts lýsir safni biðlara. Þessi umsnúningur er algengasta mistakið í stillingu fullra ganga, og hann stenst yfirlestur því báðar línurnar virðast trúverðugar sitt hvoru lagi.
children {
rw {
local_ts = 0.0.0.0/0
remote_ts = 10.77.0.0/24
}
}
Að afrita brot biðlarans inn í skrá gáttarinnar býr til valapar sem lýsir engu nytsamlegu, því báðar hliðar myndu gera tilkall til sama hlutverks. Framsendingarleiðarvísir strongSwan skjalfestir pörun biðlara og gáttar skýrt, og það er þess virði að lesa hann við hlið tengiskrárinnar frekar en eftir mistökin. Skrá gáttarinnar þarf líka skilgreiningu safnsins sem remote_ts vísar til. Val sem nefnir safn sem er ekki til hleðst án kvörtunar og bregst við tengingu.
Eldri ipsec.conf notar vinstri og hægri hlutverk með mismunandi lyklum, og rightsubnet lína er ekki bein staðgengil fyrir swanctl-gildið. Haldið tveimur setningarfærunum í aðskildum skrám í stað þess að líma eina inn í aðra. Að blanda þeim í eina möppu er leiðin sem virk tenging fer hljóðlega til baka eftir endurræsingu.
Athugið samið child SA, ekki skrána
Vistuð stilling sannar ásetning og ekkert meira. Hin hliðin getur þrengt það sem beðið var um, og núverandi child SA er ekki skipt út bara af því að skráin undir henni breyttist. Staðfestið hvað er í raun uppsett áður en þið breytið einhverju öðru.
swanctl --list-conns
swanctl --list-sas
ip xfrm policy list
Fyrsta skipunin sýnir hvað dímoninn hlóð, önnur sýnir uppsett child SA og þriðja sýnir þær stefnur sem kjarninn mun beita. Ef skráin segir 0.0.0.0/0 og listinn sýnir eitt undirnet hefur samningaviðræðan þrengt umfangið og endurlestur skrárinnar mun ekki skýra það. Ljúkið child, endurræsið hana og berið saman öll þrjú úttökin aftur. Child sem kemur aftur með sama þrönga umfangi er þrengt af hinni hliðinni en ekki staðbundinni skrá, og það er samtal við hinn stjórnandann frekar en staðbundin breyting.
Lesið báðar áttir í stefnulistanum, því göng sem setja upp aðra áttina en ekki hina eru leiðarvandamál í stillingarbúningi. Stefnum fram og til baka eiga að nefna sama valaparið í spegilmynd, og spegill sem vantar er galli í dímoninum eða tillögunni en ekki í texta valsins.
Athugið framsendingu og endurkomuleið
Val hleypir umferð að gáttinni; það fær gáttina ekki til að leiða þá umferð áfram. Kveikja verður á framsendingu, eldveggurinn verður að leyfa flæðið og svarið verður að finna leið aftur að safni biðlara. Þetta eru þrjár aðskildar kröfur, og hver þeirra bregst með mismunandi einkennum. Framskriftarregla sem vantar hegðar sér eins og svart hola, en endurkomuleið sem vantar hegðar sér eins og einstefnugöng.
sysctl net.ipv4.ip_forward
iptables -t nat -S | grep -i masq
ip route get 1.1.1.1
Einkavistföng biðlara þurfa venjulega viljandi upprunauppfærslu áður en þau geta yfirgefið opinbert viðmót, en beinleiðis leiðsett úthlutun krefst annarrar meðferðar. Ef NAT kemur við sögu, haldið þeim undantekningum sem útfærslan styður svo umferð sem öryggisstefna á að skoða sé ekki þýdd fram hjá henni. Breið masquerade-regla afrituð frá annarri gátt breytir margfalt fleiri flæðum en höfundur hennar ætlaði. Skrifið regluna aðeins fyrir safn biðlara og skiljið eftir athugasemd um hvers vegna hún er til.
Á biðlaranum, staðfestið leiðirnar sem bakendinn setti upp frekar en leiðirnar sem þið gáfuð ykkur. Stjórnandi með óvirka leiðauppsetningu þarf handvirkt viðhaldið leiðakerfi, og það kerfi verður að uppfæra hvenær sem göngin breytast. Athugið leiðatöfluna eftir endurtengingu, ekki bara eftir nýja ræsingu.
Athugið hvað göngin ná ekki enn yfir
Valaparið nær yfir IPv4 og ekkert annað. IPv6, DNS og hvaða stefna sem er á forritalagi eru aðskildar ákvarðanir sem breitt IPv4-val hunsar hljóðlega. Göng sem flytja hvern IPv4-pakka geta samt lekið hverri nafnleit.
Tilgreinið ætlaða DNS-leið skýrt, því fullt göng sem enn leysir nöfn í gegnum staðbundna leysinn lekur fyrirspurnum út fyrir göngin og brýtur einkanöfn. Ef biðlaranum er úthlutað IPv6-vistfangi þarf sú vistfangafjölskylda sömu meðferð, annars mun hýsillinn velja leið sem göngin vernda ekki. Prófið með nafni sem aðeins einka-hliðin getur svarað, og meðhöndlið opinbert svar sem leka.
resolvectl query intranet.example.internal
traceroute -n 1.1.1.1
Staðfestið keðjuna með þessum tveimur skipunum auk samninguðu valanna úr listanum hér að ofan. Ef traceroute sýnir staðbundna leiðarann sem fyrsta hopp, notar umferðin ekki göngin hvað sem valin fullyrða. Netaðgangur er aðeins fullkominn þegar umferðin sem valin var er hleypt inn, send áfram og endurkomin í gegnum hönnuðu gáttina. Að finna 0.0.0.0/0 í sniði er upphaf þeirrar keðju en ekki sönnun hennar.