Mae'r porwr yn agor enw gwesteiwr y VPN dros HTTPS heb gŵyn, ac mae'r cleient SSTP yn dal i wrthod cysylltu. Nid oes dim yn groes i'w gilydd yn y pâr hwnnw. Mae SSTP yn defnyddio TLS fel cludydd allanol ac yna'n rhedeg ei gais ei hun a'i lwyth PPP y tu mewn i'r cysylltiad hwnnw, felly mae llwytho tudalen yn llwyddiannus yn profi un peth cul yn unig: mae'r gwesteiwr yn ateb GET ar borth 443. Mae'r cleient yn gofyn cwestiwn gwahanol, ac efallai y bydd y gweinydd yn ei ateb yn wael.

Mae'r dudalen yn llwytho a'r twnnel ddim

Mae pobl yn troi at y prawf porwr oherwydd ei fod yn gyflym, ac yna'n trin y canlyniad fel prawf bod y gweinydd yn gyrraeddadwy ac wedi'i ffurfweddu. Prawf am GET i ba bynnag lwybr y agorodd y bar cyfeiriad ydyw, dim mwy. Mae sgwrs y VPN yn dechrau ar ôl yr un cydlawenhau TLS, ond mae'n anfon dull a llwybr nad yw tudalen we byth yn eu defnyddio. Felly nid yw ateb 200 i'r porwr yn dweud dim am a yw'r pwynt terfyn SSTP yn bodoli.

Gwahanwch y ddau arsylwad ac mae'r chwilio'n mynd yn fyrrach. Mae'r cludydd a'r gadwyn dystysgrif yn gweithio, ac mae rhywbeth yn y gyfnewid protocol uwch eu pennau nad yw'n gweithio. Mae hynny'n ymchwiliad gwahanol i borth wedi torri neu dystysgrif wedi dod i ben, ac mae angen tystiolaeth wahanol.

Beth mae'r cleient SSTP yn ei anfon mewn gwirionedd

Mae'r cleient yn anfon cais HTTP gyda'r dull SSTP_DUPLEX_POST i'r llwybr /sra_{GUID}/, ac yna'n cadw corff y cysylltiad ar agor fel ffrwd ddwyffordd sy'n cario fframiau PPP. Mae gweinydd cydymffurfiol yn ateb HTTP/1.1 200 ac yn rhoi'r gorau i ymddwyn fel gweinydd gwe. Unrhyw beth arall yw llofnod: 405 neu 404 yn golygu nad yw'r pwynt terfyn yno, 301 neu 302 yn golygu bod rhywbeth yn ailgyfeirio'r cais, ac FIN yn syth yn golygu bod dirprwy neu weinydd wedi cau'r ffrwd.

Dyna pam mae'n rhaid i'r targed fod yn weinydd SSTP yn hytrach na gweinydd gwe ag atodedig dystysgrif TLS. Mae'r dull, y llwybr a'r corff hirhoedlog yn ofynion protocol, felly ni all dirprwy gwrthdro eu hychwanegu o ffurfweddiad yn unig. Gall dirprwy sy'n trosglwyddo HTTPS cyffredin yn berffaith wrthod dull nad yw'n ei adnabod o hyd.

Lle mae dirprwy neu weinydd gwe yn torri'r ffrwd

Mae cyfryngwr yn archwilio llinell gais HTTP cyn trosglwyddo unrhyw beth, ac efallai y bydd dull addasedig â llwybr anarferol yn methu ei reolau. Mae rhai dyfeisiau'n gwasanaethu tudalen arferol wrth wrthod neu dorri'r twnnel, felly mae'r cleient yn adrodd am gysylltiad sy'n dechrau ac yna'n marw yn hytrach na gwrthodiad glân. Mae eraill yn derbyn y cais, ac yna'n cymhwyso terfyn amser corff neu segur na all cadw'n fyw PPP oroesi. Mae'r ddau'n edrych yn debyg o ochr y cleient, a dyna pam mae'r cam a fethodd yn bwysicach na thestun y gwall.

Mae rhannu porth 443 rhwng gwefan a SSTP yn ddewis llwybro, nid yn addewid bod pob naid yn trin y ddwy sgwrs yr un ffordd. Os oes cydbwyswr llwyth, mur gwarchod neu derfynydd TLS ar y llwybr, ychwanegwch ef at y rhestr amheuon cyn cyffwrdd â ffurfweddiad y VPN.

Profwch y camau ar wahân

Rhedwch y gwiriadau mewn trefn a stopiwch ar y methiant cyntaf, oherwydd mae pob cam yn diystyru haen wahanol. Mae'r prawf TLS isod yn gwahanu hunaniaeth y dystysgrif oddi wrth unrhyw beth y mae SSTP yn ei wneud. Amnewidiwch yr enw gwesteiwr â'ch pwynt terfyn a darllenwch y pwnc a'r gadwyn y mae'n eu hargraffu.

openssl s_client -connect vpn.example.com:443 -servername vpn.example.com

Yna mapiwch y dystiolaeth sy'n weddill i'r camau yn hytrach na dyfalu o wall y cleient. Y tabl isod yw'r rhestr wirio i'w dyfynnu yn y tocyn, gyda'r llofnod sy'n gwahanu un methiant o'r nesaf.

StageWhat it provesFailure signature
TCP to 443A listener exists and the path is openTimeout or connection refused
TLS with SNIThe certificate matches the name you useName mismatch or untrusted chain
SSTP_DUPLEX_POST exchangeThe endpoint is an SSTP server405, 404, 301 or an early FIN
PPP authenticationThe user credential was acceptedAuth failure after a 200 response
Inner routingA permitted destination is reachableTunnel up, no reply from the target

Cofnodwch y cam olaf a lwyddodd yn y tocyn yn hytrach nag ysgrifennu "methu cysylltu". Mae manyleb MS-SSTP yn dogfennu'r cais a'r gyfnewid PPP sy'n dilyn y cydlawenhau TLS, a dyna'r cyfeiriad at ba reswm na all prawf porwr sefyll i mewn am y naill na'r llall.

Hunaniaeth yn gyntaf, yna PPP

Mae hunaniaeth TLS a dilysu PPP yn olynol, nid yn amgen, ac mae eu drysu'n anfon pobl at osodiad gweinydd anghywir. Mae'r cleient yn dilysu tystysgrif y gweinydd a'i bwrpas bwriadedig yn gyntaf, yna mae PPP yn trafod ei gyflwr ei hun ac yn dilysu'r defnyddiwr gyda dull her-ac-ateb neu EAP. Mae problem dystysgrif yn cynhyrchu gwall gwahanol i gyfrinair a wrthodwyd, ac nid yw'r naill wall yn disgrifio'r cam y mae'r llall yn ei gwmpasu.

Mae amnewid yr enw gwesteiwr â chyfeiriad, neu glicio heibio'r rhybudd tystysgrif, yn dileu'r gwiriad a fyddai wedi nodi'r cam sy'n methu yn hytrach na'i drwsio. Cadwch y rhybudd a'i ddarllen. Peidiwch ag ailosod cyfrinair PPP pan na chyrhaeddodd y gyfnewid HTTP ymdygiad SSTP o gwbl, oherwydd ni ofynnwyd am y cymhwyster byth.

Erthyglau cysylltiedig