It-talbiet tal-applikazzjoni jonqsu wara VPN korporattiv, iżda l-browser jaħdem
Applikazzjoni waħda tinkiser waqt li l-browser jgħabbi s-sit. Għaddi f’dan l-ordni mill-proxy li wiret, il-politika tal-portijiet, ir-risettjar tat-TCP mhux maħdum u l-limiti tad-daqs tal-payload.
Tiftaħ il-portal intern fi browser u jgħabbi. Tħaddem l-applikazzjoni li ssejjaħ l-istess host u jonqos, b’messaġġ li ma jsemmi l-ebda saff. Il-mina qed iġġorr il-browser, għalhekk il-mina mhix l-ewwel suspettat. Erbgħa affarijiet joqogħdu bejn it-talba tiegħek u s-servizz, u kull waħda tħalli firma differenti. Dan huwa l-ordni li nsegwi, nibda mit-talba li l-applikazzjoni fil-fatt tibgħat, u mhux mill-paġna tas-settings tal-klijent VPN.
Ħares lejn it-talba li l-applikazzjoni fil-fatt tibgħat
Qabel ma tmiss il-konfigurazzjoni, ħalli l-applikazzjoni tgħidlek x’qed tagħmel. Qabda ta’ talba waħda bil-proxy mitfi b’mod espliċitu u test sempliċi tal-port jagħtuk żewġ linji bażi li magħhom jitqabblu l-passi li jmiss. Jekk it-talba tirnexxi bil-proxy mitfi, tkun diġà lestejt tliet saffi mill-erbgħa.
env | grep -i proxy # Linux/macOS
netsh winhttp show proxy # Windows, machine-wide
curl -sv --noproxy '*' https://svc.internal/
nc -vz svc.internal 8080Ħaddem l-aħħar tnejn lejn l-istess destinazzjoni u ara fejn jiddevjew. Browser li jaħdem flimkien ma’ curl li jaħdem flimkien ma’ applikazzjoni li ma taħdimx idawru l-problema għal xi ħaġa li żżid l-applikazzjoni: proxy, trasport jew daqs ta’ messaġġ.
L-applikazzjoni wiret proxy li ħadd ma kkonfigura
Il-biċċa l-kbira tal-stacks HTTP jaqraw il-konfigurazzjoni tal-proxy mis-sistema operattiva b’mod awtomatiku. Klijent VPN korporattiv spiss jinstalla wieħed bħala parti mill-profil tal-aċċess tiegħu, għalhekk it-talbiet joħorġu minn proxy li l-iżviluppatur qatt ma semma fil-kodiċi. F’.NET il-handler awtomatiku jiġbed mis-settings tal-IE/WinHTTP; Java jaqra -Dhttp.proxyHost; Node m’għandux appoġġ għall-proxy inkorporat sakemm librerija żżidu. Il-falliment rari jkun rifjut nadif, u għalhekk in-nies jibdew iħarsu lejn is-server.
It-test jiswa talba waħda: itfi l-proxy b’mod espliċitu fuq handler wieħed u qabbel.
var handler = new HttpClientHandler { UseProxy = false };
using var client = new HttpClient(handler);Jekk dan jirnexxi, is-sewqan jappartjeni lill-konfigurazzjoni tal-applikazzjoni, mhux lill-mina. Erġa’ agħmel l-awditjar għal kull runtime fil-proġett, għax kull wieħed jaqra sors differenti u forsi wieħed biss huwa miksur.
Il-port li għażilt mhuwiex il-port li tippermetti l-politika
Host bir-rotta mhuwiex servizz permess. Il-politika korporattiva normalment tippermetti l-portijiet tal-web li joħorġu u tarmi l-bqija, għalhekk servizz fuq 8080 jew 1883 ma jintlaħaqx filwaqt li 443 jaħdem tajjeb. Il-browser ma jipprova xejn hawn: juża 443 b’definizzjoni.
Ippubblika l-istess servizz wara 443 u laħqu bl-isem qabel ma titlob eċċezzjoni. Jekk l-eċċezzjoni hija tassew meħtieġa, illimitala għal firxa waħda ta’ sors u destinazzjoni waħda u qisha bħala parti mid-definizzjoni tas-servizz, mhux bħala l-ħarba personali ta’ xi ħadd.
TCP mhux maħdum li l-passaġġ jerġa’ jissettja
Konnessjonijiet TCP mhux maħdum li jdumu ħafna huma s-saff li jonqos bl-aktar mod konfuż. Passaġġ li jippermetti traffiku tal-web xorta jista’ jerġa’ jissettja jew jikteb mill-ġdid TCP li joħroġ mhux tas-soltu, u l-klijent jirrapporta żball tas-socket li jinqara bħala qtugħ. Is-servizzi tal-messaġġi u tal-avvenimenti normalment jipprovdu trasport WebSocket apposta għal netwerk bħal dan, u l-bidla hija għażla tal-klijent, mhux bidla fil-mina.
Ibdel it-trasport, erġa’ ttestja u ma tbiddel xejn ieħor fl-istess run. Dak it-test b’varjabbli wieħed jgħidlek jekk ir-risettjar ġiex mill-passaġġ jew mis-servizz.
Konnessjonijiet li jagħlqu biss fuq payloads kbar
Talba li tirnexxi u mbagħad tmut madwar sekonda wara, iżda biss meta l-ġisem ikun kbir, tindika limitu tad-daqs f’xi mkien fin-nofs. Intermedjarju li jgħodd il-bytes tal-messaġġi jista’ jwaqqa’ l-konnessjoni f’nofs it-trasferiment, u l-klijent jirrapporta għeluq anormali minflok timeout.
Aqsam il-payload fis-saff tal-applikazzjoni. Żomm dan separat mill-ħidma tal-MTU: it-tnaqqis tad-daqs tal-pakkett tal-mina jgħin meta sessjonijiet TCP ordinarji jieqfu f’numru ta’ bytes kostanti, u ma jagħmel xejn għal messaġġ li intermedjarju jqisu kbir wisq.
Kif tiddistingwi l-erbgħa f’daqqa waħda
Tliet osservazzjonijiet isolvu l-biċċa l-kbira tal-każijiet. Il-falliment jiġri mill-ewwel jew biss b’ġisem kbir? L-istess talba tirnexxi bil-proxy mitfi? Ir-riżultat jinbidel meta tbiddel il-port jew it-trasport? Ikteb it-tweġibiet qabel il-bidla li jmiss, għax VPN korporattiv flimkien ma’ proxy wiret flimkien ma’ valur awtomatiku tal-applikazzjoni jagħtuk tliet kawżi plawsibbli f’daqqa.
Żomm varjabbli wieħed għal kull test u nnota l-host tad-destinazzjoni li użajt. Mingħajr dik il-linja bażi, il-persuna li jmiss terġa’ tagħmel l-erba’ passi mill-bidu.