Android VPN-profil: finn eigaren før du redigerer
VPN-radet i systemet skjuler appen som eig endepunktet, rutene og nøklane. Identifiser eigaren, og samanlikn deretter ønskt, motteken og brukt tilstand.
Android VPN-skjermen viser eitt rad med eit namn, eit nøkkelikon og kanskje ein alltid-på-brytar. Han viser sjeldan endepunktet, rutepolicyen, DNS-tenarane eller påloggingsinformasjonen som får sambandet til å verke, fordi dei i ein appbasert tunnel høyrer til appen. Den praktiske konsekvensen er eit runbook-spørsmål, ikkje eit filosofisk: før du redigerer ei nedlasta fil eller leitar etter eit sentralt profillager, finn ut kva komponent som eig innstillinga du vil endre.
Identifiser først sambandstypen
Det finst minst tre ordningar på same innstillingsskjermen. Ein app kan bruke VpnService til å byggje eit virtuelt grensesnitt og eige protokollen og den private konfigurasjonen, mellom anna ein lokal filtreringsapp utan fjernutgang. Android kan også klargjere ein plattform-IKEv2-profil via Ikev2VpnProfile, tilgjengeleg frå API 30, der plattformen held meir av profilen. Og ein leverandørapp kan vise si eiga tenarliste og setje saman innstillingane internt.
adb shell dumpsys connectivity | grep -i -A12 "VPN"
adb shell cmd connectivity list-owners 2>/dev/null || true
Den første kommandoen viser det aktive VPN-nettverket og eigenskapane til sambandet, altså den brukte tilstanden. Viss radet nemner ein pakke du kjenner att, start med den appen si eiga profilvising i staden for systemskjermen.
Noter eigaren og omfanget av profilen
Skriv ned fire fakta før du endrar noko: pakken som eig, om sambandet ligg i den personlege profilen eller arbeidsprofilen, namnet på profilen eller sambandet slik appen viser det, og kven som administrerer det. Ein einingseigar kan klargjere ein arbeidsprofil-VPN som ein brukar av den personlege profilen ikkje kan redigere, og den same appen installert to gonger gjev deg to uavhengige eigarar.
Dette steget hindrar den vanlegaste bortkasta timen, nemleg å redigere ein profil som ikkje er den tilkopla. Appar held ofte fleire profilar, og den aktive er ein eigenskap ved appen, ikkje ved Android-radet.
Samanlikn ønskt, motteken og brukt tilstand
Dette er tre ulike fasar, og eit avvik mellom dei fortel deg kva komponent du skal rette.
| Stage | Where to look | What it proves |
|---|---|---|
| Requested | The app's profile editor or imported file | What the owner intends to use |
| Received | Sanitized app log of server-supplied options | What the peer actually pushed |
| Applied | Link properties and routes after connect | What the device is really using |
Den brukte fasen er den du kan observere utan å stole på nokon sin logg. Samanlikn DNS-tenarane og rutene i eigenskapane til det aktive sambandet med dei profilen påstår; viss dei er ulike, har tenaren sendt noko eller appen brukt ein policy du ikkje venta.
adb shell ip addr show tun0
adb shell ip route show table all | head -40
Grensesnittnamn varierer mellom appar, så list opp grensesnitta først og les det som dukka opp då tunnelen kopla til. Ei rute som finst i redigeringsprogrammet til appen, men manglar her, vart aldri brukt; ei rute som er her, men manglar i redigeringsprogrammet, kom frå ein annan stad.
Rediger artefakten eigaren faktisk les
For ein importert OpenVPN-profil held appen vanlegvis sin eigen kopi. Å redigere den opphavleg nedlasta fila seinare endrar ikkje neste samband; bruk det dokumenterte redigeringsprogrammet til appen, eller importer på nytt og stadfest kva profil som er aktiv no. Det er skilnaden mellom å endre ei fil og å endre ein konfigurasjon.
Leverandørappar set ofte saman innstillingar frå ei tenarliste i staden for å skrive ei fil brukaren kan redigere. Fråværet av ein eksportknapp er ikkje prov på at VPN-en er falsk, og ei eksportert fil kan utelate einingsbundne nøklar eller registreringsmateriale som ei anna eining ville trenge. Handsame eksport og import som separate operasjonar med eigne føresetnader.
Skriv støttenotatet utan å avdekkje løyndomar
Eit nyttig notat namngjev den nøyaktige appen og profilen, innstillinga som ser feil ut, og prova frå kvar fase. Til dømes: denne profilen får ei privat DNS-adresse frå tenaren, men den tiltenkte arbeidsappen kan ikkje løyse opp tenesta si, og dei brukte sambandseigenskapane viser den oppløysaren medan profilredigeraren viser ein annan.
Hald påloggingsinformasjon utanfor notatet. Det er ikkje nødvendig å roote eininga for å søkje i det private lageret til appen for å identifisere eigaren, og ein gissa stig til datamappa er ikkje eit støtta grensesnitt. Viss svaret treng byte som berre appen ser, be eigaren om ein diagnostisk eksport i staden for å improvisere ein.
Når arbeidet er ferdig, lukk sløyfa: stadfest namnet på den aktive profilen, les den brukte tilstanden på nytt, og kople frå éin gong for å stadfeste at endringa overlever eit nytt samband. Ei innstilling som berre finst i redigeringsprogrammet, er ikkje rulle ut.