Tugann dara OpenVPN freastalaí duit an dara háit le haghaidh nasc cliant, agus ní thúisce. Ní chuireann sé na cliaint sin ar líonra an chéad fhreastalaí, agus ní athraíonn an rogha darb ainm client-to-client ach an aistriú taobh istigh d’aon phróiseas freastalaí amháin. Tagann an dá linn chun bheith ina n-aon líonra amháin nuair a dhéanann tú ródú eatarthu d’aon ghnó, le húinéir i ngach treo. Glactar leis an mód TUN i spás úsáideora sa mhéid seo a leanas agus an t-aistriú inmheánach sin múchta, ionas gurb é an t-eithne a dhéanann an cinneadh.

An miotas: aon liosta cuntas, aon líonra

Meascann fíordheimhniú agus inrochtaineacht le chéile mar go gcónaíonn an dá rud i gcomhfhíorú an fhreastalaí. Breathnaíonn úsáideoir ar féidir leis logáil isteach ar cheachtar den dá gheata, ón taobh amuigh, mar úsáideoir ar aon chóras le dhá dhoras. Istigh, dáileann gach freastalaí seoltaí óna linn féin agus ní shuiteálann sé róid ach amháin do na cliaint a chríochnaíonn sé. Mar sin iarrann cliant ar gheata A a sheolann paicéad chuig cliant ar gheata B ceann scríbe nach bhfuil a fhreastalaí féin tar éis cloisteáil riamh. Téann an paicéad chuig ród réamhshocraithe A, fágann sé an tollán agus sroicheann sé balla dóiteáin nár iarradh riamh air é a cheadú.

Mar sin ní chuireann dara freastalaí le hiarracht, le fionnachtain ná le fearann craolta roinnte. Cuireann sé líonra ródaithe leis a dteastaíonn plean uaidh, agus tosaíonn an plean le seoladh.

Tabhair a linn féin agus a seoladh idirthurais do gach geata

Is é dhá raon nach féidir leo forluí le haon rud eile, chomh maith le nasc beag idirthurais idir na hóstaigh, an plean seoltaí iomlán. Coinnigh an t-idirthuras ar dheighleog phríobháideach atá faoi do smacht, agus scríobh síos na huimhreacha sula dtugann aon fhreastalaí léas.

GatewayClient poolTransit address
gateway-a10.64.10.0/24172.28.44.1/30
gateway-b10.64.20.0/24172.28.44.2/30

Seas in aghaidh an mheallta an linn chéanna a thabhairt don dá fhreastalaí ionas go bhfanfaidh na próifílí comhionann. Ní féidir le ród eithne a rá cé acu de dhá óstach atá i seilbh seoladh treallach laistigh de raon roinnte faoi láthair, mar sin chuirfeadh an tábla ródú in iúl do gheata amháin agus d’fhéadfadh an cliant a bheith ceangailte leis an gceann eile. Is gnásanna áitiúla iad ainmneacha comhéadain, ní staid roinnte. Glaonn an dá óstach anseo ar an ngléas tolláin tun0 agus ar an nasc idirthurais transit0, rud atá ceart mar ní iompraíonn aon phaicéad na hainmneacha sin.

Suiteáil an ród ar an dá thaobh

Teastaíonn ród ó gach geata chuig linn an chinn eile tríd an seoladh idirthurais, agus caithfidh an t-aistriú a bheith ar siúl le go bhféadfadh ceachtar acu feidhmiú mar léim. Deimhnigh an tábla reatha ar dtús, ansin cuir an iontráil leis agus déan marthanach í trí bhainisteoir líonra an óstaigh seachas trí chrúca athnascaidh.

sysctl net.ipv4.ip_forward
ip route add 10.64.20.0/24 via 172.28.44.2 dev transit0
ip route get 10.64.20.37

Déan scáthán de sin ar an óstach eile leis na linnte malartaithe. Is é an rud a tharlaíonn nuair a chuirtear an ród chéanna leis arís agus arís eile ó script neamhghaolmhar ná go gcríochnaíonn óstach le roinnt cóipeanna agus athrú mistéireach an chéad uair eile a léifidh duine an tábla. Más tollán é an nasc idirthurais féin, díríonn an ród ar thopeolaíocht an tolláin sin agus caithfidh an léim teacht slán óna athnascadh. Tógann seoladh idirthurais a imíonn ar feadh tríocha soicind an cosán idir na linnte leis, rud is airí dearaí arbh fhiú é a dhearbhú seachas a fháil amach.

Brúigh ród an chliaint gan úinéireacht a bhrionnú

Teastaíonn ród ó chliaint chuig an linn iargúlta, nó seolfaidh a gcóras oibriúcháin féin an paicéad chuig a gheata réamhshocraithe agus ní fheicfidh an tollán riamh é. Is é comhfhíorú an fhreastalaí an áit nádúrtha chun é sin a sheachadadh.

push "route 10.64.20.0 255.255.255.0"

Cuir an líne scátháin i gcomhfhíorú an fhreastalaí eile, ansin athnasc cliant tástála agus léigh a thábla. Teastaíonn a chomhfhíorú faofa féin ó chliant a dhéanann neamhaird de róid bhrúite, agus ní rialú rochtana é ród nach sroicheann riamh. Ná tabhair iroute do chliant le haghaidh linn iomlán an gheata eile. Tá an treoir sin ann le haghaidh fo-líonra taobh thiar d’aon chliant nasctha, agus nuair a úsáidtear í chun ród ar iarraidh idir geataí a chlúdach cruthaítear freastalaí a chreideann go bhfuil seoltaí aige nach féidir leis a shroicheadh.

Cruthaigh aon iarratas amháin agus diúltaigh do cheann eile

Roghnaigh oibríocht fíor, mar shampla HTTPS ó chliant ag 10.64.10.21 chuig seirbhís ag 10.64.20.37, agus ceadaigh go díreach sin ar an dá óstach. Glactar leis an iarratas ar an taobh isteach agus leis an bhfreagra rianaithe ar an taobh filleadh ag gach balla dóiteáin; caithfidh polasaí seirbhíse an chinn scríbe féin glacadh leis fós.

iptables -A FORWARD -i tun0 -o transit0 -s 10.64.10.21 -d 10.64.20.37 -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -i transit0 -o tun0 -d 10.64.10.21 -s 10.64.20.37 -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Le róid chómhalartacha, tá NAT foinse gan ghá agus go gníomhach díobhálach anseo: ceilfidh aistriú na foinse cé a rinne an t-iarratas agus cloítear polasaí bunaithe ar fhoinse ar thaobh an chinn scríbe. Seiceáil nach bhfaigheann riail masquerade atá ann cheana le haghaidh amach ar an idirlíon an cosán seo freisin. Ansin tástáil an diúltú. Caithfidh seirbhís ar chóir di fanacht áitiúil do linn B fanacht doshroichte ó linn A, agus caithfear péirí cliant ar an ngeata céanna a thástáil freisin, ós rud é go mbaineann an polasaí aistrithe atá athraithe agat leo siúd chomh maith.

Ceartú amháin eile ar an múnla meabhrach: iompraíonn an nasc idirthurais paicéid inmheánacha díchriptithe, mar sin is teorainn iontaobhais é seachas ráthaíocht phríobháideach. Má thrasnaíonn sé líonra nach bhfuil faoi do smacht, cosain an léim sin le tollán criptithe faofa agus déan ródú trína fhíorthopeolaíocht. Fíordheimhníonn TLS deireadh le deireadh an feidhmchlár ar a shon féin fós, agus is ar an ábhar sin ar chóir don tseirbhís inmheánach leanúint dá úsáid.

Ailt ghaolmhara