Mae@r gred yn ddigon cyffredin i@w chymryd fel ffaith: dim ond un VPN y mae Android yn ei ganiatáu, felly ni all gweinydd SSH ar y ffôn weithio drwy@r twnnel hwnnw. Mae@r hanner cyntaf yn wir ac nid yw@r casgliad yn dilyn. Mae terfyn y platfform yn ymwneud â faint o apiau a all ddal slot y gwasanaeth VPN, nid faint o socedi a all fodoli nac pwy a ganiateir i gysylltu â@r ffôn. Mae daemon SSH â soced gwrando yn ap cyffredin â phorth cyffredin, a@r twnnel yw un o@r llwybrau y gall ei draffig fynd ar hyd-ddo.

Beth mae rheol un VPN yn ei gyfyngu mewn gwirionedd

VpnService yn adnodd un-slot. Pan fydd ap yn sefydlu twnnel daw@n VPN y ddyfais, a gwrthodir ail ap sy@n ceisio sefydlu un hyd nes bod y cyntaf yn diflannu. Rheol am berchnogaeth y twnnel yw hon, ac mae@n esbonio pam na all dau gleient VPN redeg ar yr un pryd.

Nid yw@n dweud dim am socedi gwrando. Nid yw@r gweinydd SSH yn galw VpnService, nid yw@n rhyng-gipio pecynnau ac nid yw@n cystadlu am y slot hwnnw. Mae@n rhwymo porth ac yn derbyn cysylltiadau, sef yr un peth a wnâi heb VPN o gwbl. Felly mae@r chwedl yn cymysgu terfyn ar ddarparwyr twnnel â therfyn ar gysylltiadau rhwydwaith, ac nid oes perthynas rhwng y ddau.

Mae@r gwrandäwr yn gyrchfan, nid yn rhan o@r twnnel

Unwaith y bydd y twnnel yn bodoli, mae gan y ffôn gyfeiriad arno, ac mae gan y ddyfais gymar lwybr i@r cyfeiriad hwnnw. Y gwrandäwr sy@n penderfynu a oes rhywbeth yn ateb. Mae daemon wedi@i rwymo i loopback ond yn gyrraeddadwy o@r ffôn ei hun; gall daemon wedi@i rwymo i hen gyfeiriad y twnnel gadw@r rhwymiad ar ôl ailgysylltu er bod y cyfeiriad wedi newid.

Mae rheolau rhwymo yn ffurfweddiad SSH cyffredin: y cyfeiriad a@r porth gwrando, a phwy a gaiff ddilysu. Ar Android mae@r gosodiadau hyn yng nghyfluniad yr ap ei hun, ac efallai na chaniateir i berchemnog proses yr ap ddefnyddio pyrth freintiedig, felly nid yw arfer y bwrdd gwaith o rwymo porth 22 fel root yn trosglwyddo heb newid.

ListenAddress 10.90.0.4
Port 2222
AllowUsers alice

Yna mae caniatâd ar y llwybr ei hun. Nid yw VPN defnyddiwr sy@n cario traffig gwe allan yn fodlon o anghenraid yn caniatáu cysylltiadau i mewn i@w gleientiaid o gwbl; nid yw llawer yn gwneud hynny, oherwydd byddai@n datgelu un cleient i@r llall. Os na all y cymar gyrraedd cyfeiriad y ffôn yn y twnnel o unrhyw le, mae@r broblem yng ngwleidyddiaeth y gwasanaeth, nid yn y ffôn.

Ar lwybr yr ateb y mae@n torri fel arfer

Gadewch i ni dybio bod y cymar yn cyrraedd cyfeiriad y ffôn yn y twnnel ac fod SYN yn cyrraedd. Nawr rhaid i@r ateb adael ar hyd yr un llwybr, a phenderfyniad llwybro y tu mewn i@r ffôn yw hwnnw. Os yw@r ateb yn gadael dros Wi-Fi am mai dyna@r rhwydwaith diofyn, mae@r cymar yn gweld cysylltiad nad yw byth yn gorffen, sy@n edrych yn union fel mur tân.

Mae Android yn gwneud hyn yn fwy cymhleth na bwrdd gwaith oherwydd dewisir y rhwydwaith diofyn fesul proses a gall polisi@r ap VPN ei newid. Nid yw cleient VPN ond yn gallu llwybro rhestr o apiau a ganiateir, felly mae ap gweinydd y tu allan i@r rhestr honno yn parhau i ddefnyddio@r rhwydwaith ffisegol ar gyfer ei atebion tra mae@r cymar yn eu disgwyl drwy@r twnnel.

Gall ap hefyd rwymo ei socedi ei hun i rwydwaith penodol, sy@n diystyru@r diofyn. Pan fyddwch yn darllen adroddiad bod gwasanaeth yn gyrraeddadwy o un cyfeiriad ac nad yw o un arall, fel arfer y mecanwaith hwnnw sydd y tu ôl iddo.

Nid yw osgoi@r VPN yn trwsio gwasanaeth sy@n dod i mewn

Mae@r ateb poblogaidd, eithrio@r ap SSH o@r VPN fel bod ei draffig yn peidio â chael ei ailgyfeirio, yn drwsio@r broblem wrthgyferbyniol. Mae@n helpu pan fydd cludiant cleient SSH allan yn torri@n gyson oherwydd y twnnel. Ar gyfer gweinydd a gynhelir gall symud yr atebion oddi ar y twnnel y mae@r cymar yn ei ddefnyddio, ac mae hynny@n troi methiant rhannol yn un llwyr.

Mae@r un peth yn wir am agor porth cyhoeddus ar y llwybrydd. Os yw@r gofyniad yn un ddyfais awdurdodedig yn cyrraedd y ffôn dros y VPN, mae datgelu SSH i@r rhyngrwyd yn fodel bygythiad gwahanol ac nid yn drwsio.

Penderfynwch gyfeiriad y gwasanaeth yn gyntaf: cyfeiriad LAN y ffôn, ei gyfeiriad yn y twnnel, neu bwynt terfyn a anfonir yn fwriadol. Mae gan bob un ei gontract cyrraeddadwyedd a datguddiad, a@u cymysgu yw@r ffordd y mae problem mynediad fach yn dod yn dwll parhaol.

Dadansoddwch un cyfeiriad ar y tro

Nodwch bedwar ffaith cyn newid y cyfluniad: y cyfeiriad y mae@r cymar yn cysylltu ag ef, cyflwr y gwrandäwr ar y ffôn, cyd-destun yr ap a@r defnyddiwr sy@n berchen arno, a@r llwybr a welwyd ym mhob cyfeiriad. Nid yw adroddiad sy@n dweud bod y VPN yn torri SSH yn cynnwys yr un ohonynt ac ni all wahaniaethu rhwng problem cludiant y cleient a gweinydd na ellir ei gyrraedd.

adb shell ip -br addr
adb shell ip route get 10.90.0.9
nc -vz 10.90.0.4 2222

Rhedwch y gwiriad porth o@r cymar, nid o@r ffôn, a darllenwch allbwn manwl y cleient SSH i weld a yw@n methu cyn neu ar ôl ysgwyd llaw TCP. Mae soced nad yw byth yn cysylltu a mewngofnodiad a wrthodwyd yn gamau gwahanol â pherchnogion gwahanol.

Cadwch ddilysu allwedd y gwesteiwr a chyfyngiadau@r cyfrif yn gyfan wrth ddadfygio. Cyfyngu@r gwrandäwr a@r defnyddwyr a ganiateir yw@r hyn sy@n gwneud gweinydd cyrraeddadwy yn dderbyniol; mae@u llacio er mwyn i gysylltiad weithio yn cyfnewid un broblem am un waeth. Mae cyfeirlyfr gweinydd OpenSSH yn ymdrin â rheolaethau gwrando a mynediad os yw eich gweithrediad Android yn dilyn yr un enwau cyfluniad.

Erthyglau cysylltiedig