OpenVPN taobh thiar de stunnel: seol an fillteán, ní an port 1194
Dhá éisteoir, trí phort. Seiceáil cá dtiteann an t-atreorú, cá gceanglaíonn an fillteán, cá nascann sé, cad a scipeáil tástáil áitiúil agus an dá chéannacht.
Cuir fillteán TLS os comhair OpenVPN agus faigheann an t-imscaradh an dara héisteoir, nár cheart ach ceann acu riamh a bheith os comhair an idirlín. Nuair a oibríonn an tollán ón meaisín céanna agus a theipeann sé ón taobh amuigh, is gnách go bhfuil an t-atreorú dírithe ar an gceann mícheart den dá. Is slabhra an rud a chaithfidh teacht le chéile: sroicheann an riail phoiblí an fillteán, agus sroicheann nasc cúltaca an fhillteáin féin an fíorshoc VPN. Iompraíonn ceithre léim an slabhra sin, agus féadfaidh ceann ar bith acu deireadh a chur leis an imscrúdú go luath.
Dhá shoc, dhá úinéir, ceann acu poiblí
Críochnaíonn an fillteán TLS don nasc seachtrach agus cuireann sé an sruth beart díchriptithe ar aghaidh chuig éisteoir OpenVPN TCP simplí. Is socanna ar leithligh iad le comhaid chumraíochta ar leithligh, mar sin fágann eagrú ceann amháin an ceann eile gan teagmháil agus fós dealraitheach sláintiúil. Ciallaíonn sé freisin gur féidir leis an dá cheann scaradh nuair a athraítear ceann gan an ceann eile.
Ní chruthaíonn obair ón meaisín féin ach fíorbheagán faoin gcosán poiblí. Scipeálann nasc díreach chuig an mbunphort an fillteán, scipeálann nasc chuig an bhfillteán ar a sheoladh LAN an t-aistriú, agus ní dhéanann ach an t-iomlán ar thaobh an chliaint an rud a dhéanann úsáideoir ón taobh amuigh a chleachtadh. Caithfear na hainmneacha a léamh go cúramach freisin, mar ciallaíonn localhost an t-óstach a ritheann an chomhpháirt sin go díreach, ní an t-óstach a mbíonn tú ag clóscríobh air de thaisme. Coinnigh an t-idirdhealú sin i do nótaí, mar tugann tástáil a thaifeadtar gan an léim a chlúdaigh sé cuireadh chun dhá rud éagsúla a chur i gcomparáid.
Cá dtiteann an t-atreorú i ndáiríre
Is fusa an slabhra a choinneáil mar cheithre léim ná mar thrí uimhir phoirt, mar is féidir leis an uimhir chéanna rud éagsúil a chiallú ag gach ceann. Léigh an tábla as a chéile: is soc amháin gach ró a chaithfidh nasc a ghlacadh agus ansin an chéad cheann eile a oscailt. Nuair a dhírítear ró ar an gcomhpháirtí mícheart, is é an tsiomptóm sa cholún deireanach an rud a thuairiscíonn an t-úsáideoir.
| Hop | Listens on | Must reach | Symptom when it points elsewhere |
|---|---|---|---|
| Client machine | A local plaintext port | The wrapper's public TLS address | Plain text offered to a TLS endpoint |
| Router forward | Public TCP 443 | The wrapper host on its translated port | Wrapper records no connection at all |
| Wrapper, server mode | Its accepted port, 8443 here | The native VPN socket on loopback | Handshake completes, then silence |
| Native VPN listener | Loopback TCP port | Its peer, over TCP only | A UDP socket behind a byte-stream relay |
Scipeálann riail a dhíríonn ar an mbunphort VPN in ionad an fhillteáin an chríochnú TLS ar fad, agus sin an leagan is coitianta den earráid seo: osclaíonn an cliant croitheadh láimhe le héisteoir a bhfuil frámaíocht OpenVPN ag súil leis, mar sin féadfaidh an nasc oscailt agus ansin stopadh. Deimhnigh an port aistrithe i gcoinne chomhad cumraíochta an fhillteáin seachas i gcoinne cuimhne, mar b'fhéidir gur roghnaigh an chéad duine eile a eagraíonn an comhad sin uimhir eile. Taispeánann an dá ordú thíos an dá thaobh den cheist sin ag an am céanna.
grep -nE '^[[:space:]]*(accept|connect)' /etc/stunnel/stunnel.conf
ss -lntp | grep -E ':443|:8443|:1194'
An seoladh ceangail a dhiúltaíonn duit
Ní fhreagraíonn líne accept atá ceangailte le 127.0.0.1 ach don óstach féin, mar sin ní féidir le hatreorú a shroicheann an seoladh LAN nascadh agus feiceann an cliant diúltú a shamhlaítear le fadhb scagaire paicéad. Féach ar an soc sula dtéann tú i dteagmháil leis an mballa dóiteáin, mar is é an soc an freagra is saoire. Ceangail an fillteán leis an gcomhéadan a ndírítear an t-atreorú air, nó coinnigh ar loopback é agus déan cinnte go sroicheann an t-atreorú loopback trí rud a oibríonn i ndáiríre. Dhá dhearadh iad sin, agus tá a riail féin ag teastáil ó gach ceann.
Is é meascadh an dá rud an bealach a n-éiríonn fillteán oibre doshroichte ón taobh amuigh agus gach comhad ag breathnú ceart. Is ordú amháin an seiceáil thíos, agus freagraíonn sí ceist nach féidir le hathbhreithniú ar rialacha an bhalla dóiteáin a fhreagairt. Má thaispeánann an t-aschur seoladh loopback agus an t-atreorú dírithe ar an seoladh LAN, baineann an ceartú le líne accept agus ní leis an scagaire paicéad.
ss -lntp '( sport = :8443 )'
Cad a chruthaigh an tástáil áitiúil i ndáiríre
Ní fianaise ar na léimeanna eile é rath a thaifeadtar gan an léim a chlúdaigh sé. Tabhair faoi deara cén seoladh a d'úsáid an tástáil agus cén próiseas a d'fhreagair. Ansin déan arís ón taobh amuigh den líonra seachas ó fhón ar an Wi-Fi céanna, mar athraíonn iompar hairpín idir ródairí agus is féidir le nasc nár fhág an LAN riamh cliant a shásamh gan an t-atreorú a bheith páirteach ar chor ar bith. Ní dhéanann ach an dara hiarracht sin an cosán a thógann strainséir a chleachtadh.
Nuair a theipeann an iarracht, lean nasc amháin trasna an dá loga: línte glactha agus nasctha an fhillteáin, ansin loga seisiúin an daemon VPN féin. Is é an chéad teorainn nach dtaifeadann aon rud an áit a mbaineann an chéad athrú eile. Nuair a thosaíonn OpenVPN ag comparáid roghanna piaraí, breithnigh na teachtaireachtaí sin de réir rialacha an fheidhmithe sin. Ní bhíonn rabhadh ar neamhréireacht link-mtu marfach go huathoibríoch, ní chruthaíonn pionnadh link-mtu ag 1500 go bhfuil deighilt stoptha, agus baineann idirbheartaíocht sipher le cumraíocht inmheánach OpenVPN seachas le hatreorú an ródairí.
nc -vz 127.0.0.1 1194
journalctl -u stunnel -n 50 --no-pager
Clúdaíonn na sonraí sin an soc cúltaca agus loga an fhillteáin, rud a dhealaíonn cúltaca diúltaithe ó chroitheadh láimhe diúltaithe. Rith iad fad a bhíonn iarracht amháin ar siúl seachas ina dhiaidh. Is iad stampaí ama ó iarracht amháin a dhéanann an chomparáid iontaofa.
Dhá chéannacht, dhá ord teipe
Baineann an deimhniú seachtrach leis an bhfillteán agus baineann an chéannacht inmheánach le OpenVPN, agus féadfaidh siad teacht ó údaráis éagsúla. Malartaíonn díchumasú ceachtar seiceáil chun cosán a dhéanamh dealraitheach sláintiúil cosaint fhíor ar thoradh cosmaideach. Coinnigh an dá fhíorú agus dífhabhtaigh in ord iad, mar ainmníonn seicheamh na dteachtaireachtaí an tsraith: tagann fadhb dheimhnithe an fhillteáin chun solais sula ndéantar aon rogha VPN a idirbheartú, agus ní thagann teip chéannachta inmheánaí chun solais ach amháin nuair a bhíonn an sruth bunaithe.
Déanann lámhleabhar stunnel accept, connect agus mód an chliaint a shainiú go beacht, agus freagraíonn na hailt sin an cheist faoin soc níos tapúla ná buille faoi thuairim. Nuair nach féidir leat fós a rá cén tsraith a d'fhreagair, léigh an deimhniú a chuireann an port poiblí i láthair leis an ordú thíos. Ciallaíonn deimhniú fillteáin san aschur gur shroich an t-atreorú an fillteán, agus ciallaíonn tost nó earráid phrótacail nár shroich. Sábhálann an t-aon idirdhealú sin níos mó ama ná aon seiceáil eile anseo.
openssl s_client -connect vpn.example:443 -servername vpn.example </dev/null 2>/dev/null | openssl x509 -noout -subject -issuer