Díríonn duine óstaigh phoiblí HAProxy ar fheidhmchlár áitiúil agus fiafraíonn sé cén fáth nach féidir leis an mbrabhsálaí leanúint. Sroicheann an proxy an aip trína VPN, seolann an t-atreorú ceanntásc Location ar ais, agus ansin triaileann an brabhsálaí seoladh nach bhfuil ann ach taobh istigh den tollán. Ón taobh amuigh ní dhéanann an leathanach ach crochadh. Baineann an cinneadh leis an taobh a osclaíonn an dara nasc, agus sin an rud a scarann atreorú ó backend.

Dhá chonair atá cosúil le chéile sa chumraíocht

Cuireann atreorú deireadh leis an malartú le freagra. Léann an cliant Location agus tosaíonn sé iarratas nua ón áit a bhfuil sé, is é sin an líonra nár rialaigh tú riamh. Níl an proxy páirteach a thuilleadh. Braitheann gach rud ina dhiaidh sin ar DNS, ar chonair agus ar mhuinín an chliaint féin, mar sin athraíonn an toradh de réir cá n-osclaíonn an t-úsáideoir an brabhsálaí:

GET /app        client -> proxy
302 Location    proxy  -> client   (http://10.40.0.20:8080/)
GET /app        client -> 10.40.0.20:8080   client network, no route

Coinníonn backend an proxy an dara céim ar thaobh an fhreastalaí. Osclaíonn an proxy é ar an gconair atá aige cheana, agus leanann an cliant ag labhairt le haon ainm poiblí amháin. Má thiteann an tollán, faigheann an cliant earráid in ionad URL nach féidir leis leanúint. Is é an difríocht sin freisin a dhéanann an mhainneacht in-dhiagnóisithe, mar tagann an earráid an áit a bhfuil na logaí:

GET /app        client -> proxy
GET /app        proxy  -> 10.40.0.20:8080   over the VPN
response        proxy  -> client

Tarraingíonn doiciméadú atreoraithe HAProxy an líne sin go beacht: is gníomh difriúil é freagra a thabhairt don chliant le hatreorú ná an t-iarratas a sheoladh ar aghaidh chuig backend. Tá an dá threoir cúpla líne óna chéile i gcomhad cumraíochta agus iompraíonn siad go hiomlán difriúil. Críochnaíonn ceann amháin an t-iarratas, agus tosaíonn an ceann eile dara ceann atá ag an proxy.

An rud a theastaíonn ón mbrabhsálaí agus nach dtugann VPN an fhreastalaí dó

Teastaíonn ceithre rud ó iarratas an bhrabhsálaí féin a bhféadfadh nach bhfuil acu: freagra DNS don ainm príobháideach, conair chuig an seoladh sin, cead chun an tseirbhís éisteachta a shroicheadh, agus muinín sa teastas a chuireann an tseirbhís sin i láthair. Tá na ceithre rud ag óstach an proxy trína thollán. Ní aistrítear aon cheann acu chuig cliant nár bhain leis an tollán sin riamh, mar is airí den óstach é an tollán, ní den URL.

Míníonn an bhearna sin an tsíomptóm beagnach-oibríonn. Éiríonn leis an gcéad iarratas, athraíonn an barra seoltaí, agus ansin crochann nó teipeann an nasc agus an proxy sláintiúil an t-am ar fad. Níl aon rud briste i gcumraíocht an proxy, agus ní chabhraíonn coigeartú léi le cliant nach bhfuil aon chonair aige chuig 10.40.0.20. Buíochas nó faigheann an cliant conair, nó caithfidh an proxy an nasc a dhéanamh ar a shon.

Nuair nach féidir ach leis an proxy an aip a shroicheadh

Bain an gníomh atreoraithe agus seol na hiarratais sin chuig backend a dhíríonn ar an seoladh príobháideach. Coinníonn an frontend a ainm poiblí agus cinneann an backend cá dtéann an t-iarratas i ndáiríre. Ní athraíonn aon rud i gconair an chliaint, mar stopann an proxy ag cur síos ar cheann scríbe agus tosaíonn sé ag bheith ina cheann scríbe. Le haghaidh feidhmchláir a éisteann go toiliúil ar an bport inmheánach 8080, tá bloc an fhreastalaí gearr:

backend private_app
    mode http
    option httpchk GET /health
    server app1 10.40.0.20:8080 check

Léigh an bloc sin mar ráiteas faoi thábla ródaithe an proxy: caithfidh 10.40.0.20 a bheith inrochtana ó óstach an proxy féin, rud a chiallaíonn anseo tríd an gcomhéadan VPN seachas tríd an ród réamhshocraithe. Ní thuairiscíonn an eochairfhocal check ach an méid a dhéanann an ród sin, agus caithfidh an chonair sláinte a bheith ar an bhfeidhmchlár nó cuireann gach probe an freastalaí síos. Ní chruthaíonn seiceáil rathúil aon rud faoin gcliant agus ní thagann sí in ionad an pholasaí a chinneann cé a fhéadann an backend a úsáid.

Ní frontend iomlán é an blúire. Coinnigh an t-éisteoir, an fíordheimhniú, an roghnú óstaigh agus conaire ceadaithe, agus an riail a chinneann cé a fhéadann an feidhmchlár a shroicheadh ar chor ar bith. Meaitseáil prótacal an backend freisin, mar teastaíonn fíorú teastais agus cumraíocht chéannachta freastalaí ó backend HTTPS, agus má sáraítear an tseiceáil sin déantar nasc príobháideach de nasc neamhfhíoraithe.

Deimhnigh an chonair fillte sa dá threo sula nglacann tú bua. Feiceann an feidhmchlár nasc ón proxy anois, mar sin cuireann a logaí agus aon meiteashonraí seolta cliant síos ar an proxy mura socraíonn tú a mhalairt. Socraigh conas a láimhseáiltear céannacht agus seoltaí seolta ar aghaidh, agus tástáil an cinneadh in ionad glacadh leis.

Tá atreoruithe na haipe féin fós ag díriú isteach

Níl i seoladh an chéad iarratas ach leath an chomhtháthaithe. Féadfaidh an feidhmchlár atreoruithe absalóideacha, URLanna sócmhainne crua-chódaithe nó fianáin a bheith scóipeáilte don ainm atá ar eolas aige go hinmheánach a eisiúint, agus seolann gach ceann acu an brabhsálaí ar ais chuig seoladh nach féidir leis a shroicheadh. Breathnaíonn ceanntásc Location a dhíríonn ar an ainm inmheánach go hiomlán cosúil leis an bhfadhb bhunaidh, agus is é sin an fáth a ndéantar mí-dhiagnóis air mar mhainneacht proxy.

Socraigh URL seachtrach doiciméadaithe an fheidhmchláir agus a chuid roghanna proxy, ansin déan an ceanntásc Host a ailíniú leis an óstach fíorúil agus le hionchais an teastais. Ní thiocfaidh fianán atá scóipeáilte don ainm inmheánach ar ais tríd an ainm poiblí, agus léitear an lúb síniú isteach a leanann mar fhabht fíordheimhniúcháin. Athraigh an URL seachtrach ar dtús, ath-thástáil ó phróifíl bhrabhsálaí ghlan, agus bí ag súil go dtabharfadh socruithe leath-imirce síniú isteach a n-éiríonn leis agus seisiún a fhaigheann bás láithreach.

Ná bíodh muinín agat as meiteashonraí seolta ar aghaidh ach ón proxy ainmnithe. Ní cheart go ndéanfaí ceanntásc is féidir le haon chliant a shocrú ina luach údaraithe riamh, nó iompaíonn an proxy ina bhealach do ghlaoiteoir chun céannacht duine eile a éileamh. Tá an riail sin neamhspleách ar cheist an atreoraithe agus maireann sí gach athdhearadh níos déanaí.

Socraigh cén dearadh atá agat i ndáiríre

Má tá rochtain VPN údaraithe ag gach úsáideoir cheana, féadfaidh atreorú chuig URL príobháideach a bheith ina dhearadh d’aon ghnó. Deimhnigh an ceanglas sin go sainráite in ionad glacadh leis, mar freastalaíonn an dá dhearadh ar phobail atá go hiomlán difriúil. Ní oibríonn ceann acu ar chor ar bith ó líonra óstáin, agus nochtann an ceann eile an feidhmchlár do gach duine is féidir leis an URL poiblí a lódáil. Baineann an t-idirdhealú sin leis an nóta dearaidh.

Rith an tseiceáil ó mheaisín ar líonra na n-úsáideoirí agus lean gach léim a dhéanann an brabhsálaí, ní hamháin an chéad fhreagra. Coinnigh súil ar an mbarra seoltaí agus ar gach iarratas ina dhiaidh sin, mar tá URL absalóideach amháin i gclib sócmhainne go leor chun sreabhadh a sháraigh an chéad léim a bhriseadh. Caithfidh síniú isteach oibriú tríd an ainm poiblí, agus caithfidh acmhainní ar cheart iad a dhiúltú fanacht diúltaithe.

Is cinneadh rochtana ar leith é proxy droim ar ais a fhoilsiú, ní síneadh trédhearcach de VPN an proxy féin chuig gach duine is féidir leis a URL poiblí a lódáil. Breathnaíonn an dá rud cosúil le chéile ar léaráid, agus ní hionann siad ó thaobh cé a ligtear isteach. Is é a bheith ag cinneadh na ceiste sin tar éis an imlonnaithe an bealach a n-iompaíonn feidhmchlár inmheánach ina cheann poiblí de thaisme.

Scríobh síos cén ceann den dá cheann a thóg tú agus cén fáth. Glacfaidh an chéad duine eile a chuireann lámh sa chumraíocht leis an gceann eile. Tá atreorú amháin a cuireadh leis ar mhaithe le háisiúlacht go leor chun an mhainneacht bhunaidh a athchruthú, agus beidh an tsíomptóm díreach cosúil leis an gceann a dheisigh tú anois díreach.

Ailt ghaolmhara