Android-VPN-Export: wat tatsächlech op en neien Telefon iwwergëtt
En Android-VPN-Export schéckt Astellungen an heiansdo e Schlëssel, awer ni d'Apparatautorisatioun. Kontrolléiert wat wierklech iwwergëtt, ier Dir den ale Telefon läscht.
E VPN-Profil aus Android exportéieren fillt sech wéi e Backup-Schrëtt un, an de Menü deen et ubitt mécht näischt fir deen Androck ze korrigéieren. Wat Dir mathëlt ass eng Parser-Agank, e Schlëssel deen d'Betribssystem vläicht ni zréckgëtt, an eng Autorisatioun déi genau fir deen Telefon ausgestallt gouf. Trennt déi dräi an déi nëtzlech Fro kënnt: wéi en Deel feelt nach um neien Apparat?
D'Datei ass den einfachen Deel. Déi aner zwee entscheeden ob d'Migratioun funktionéiert.
Wat en exportéierte Profil tatsächlech enthält
Maacht d'Datei an engem Texteditor op ier Dir hatt vertraut. Eem OpenVPN-Profil ass eng kleng Konfiguratiounssprooch: remote, proto, data-ciphers an dacks inline <ca>, <cert>, <key> oder <tls-crypt> Blocken déi de Client un säin TLS-Stack gëtt. Eng WireGuard-Konfiguratioun ass flaacher: [Interface] hält PrivateKey an Address, duerno een [Peer] pro Endpunkt mat PublicKey, AllowedIPs an Endpoint. IKEv2 kënnt als .mobileconfig mat Payload-Wierderbicher amplaz vu Schlësselblocken.
Keen vun dësem Text ass fir sech eleng en Authentifikatiounsmiwwel. Den Authentifikatiounsmiwwel ass de private Schlëssel, an all Format kleeft en inline oder weist op en Alias deen nëmmen am Client opgeléist gëtt deen en erstallt huet.
Wou de Schlëssel wierklech op Android wunnt
Android hält App-Daten ënner /data/data/<package>, liesbar nëmmen duerch d'UID vun der App. Et gëtt kee ënnerstëtzte Wee fir en anere Privatverzeechnis vun enger anerer App vun engem net-rooted Telefon ze kopéieren, an adb backup huet opgehalen eng allgemeng Äntwert ze sinn nodeems Android 12 et ofgeschaaft huet an d'Clienten ugefaangen hunn allowBackup="false" ze deklaréieren. Also en Export vun engem Android-Client heescht wat dee Client implementéiert, net eng Kopie vum Dateisystem.
D'Identitéitsschicht läit ënner der App. Wann e Client Äre Schlëssel an den Android Keystore importéiert huet, gëtt de Material do generéiert oder agewéckelt, a spéider Exporte kënnen eng Referenz op en Keystore-Alias droen amplaz vun de Bytes. Hardwaregestäipt Schlësselen si sou gebaut datt och d'Besëtzer-App se net ausliese kann, wéi Keystore documentation beschreift, also en Profil deen op deen Alias weist importéiert sech propper um selwechten Telefon a fällt iwwerall aneschters duerch.
Dat ass keen gebrochene Export. Et ass d'Eegeschaft déi vun der Plattform gefrot gouf.
Wat e Profil net kann iwwerdroen
Stellt d'Objete géint dat wat eng Destinatioun akzeptéiert:
| Objet | Geet iwwer? | Firwat |
|---|---|---|
| Protokoll an Endpunkt | Jo, wann den Destinatiounsclient et ënnerstëtzt | Kloren Text am Profil |
| CA-Zertifikat an Hostnumm-Kontroll | Meeschtens | Ëffentleche Material, awer den Hostnumm muss nach ëmmer zum Zertifikat passen |
| Client-Zertifikat | Jo, ausser et ass pro Apparat gebonnen | Zertifikate si portabel; den Aussteller entscheet wéi vill Apparater ee benotze kënnen |
| Private Schlëssel | Nëmme wann e baussen dem Keystore generéiert gouf | Hardwaregestäipt Schlësselen kënnen net exportéiert ginn, nëmme ersat |
| Kont, MFA, SSO-Sessioun | Nee | Tokenen lafen of a bleiwen un den Apparat gebonnen deen se kritt huet |
| Routen, DNS an App-Berech | Nëmme wéi Konfiguratiounstext | Android applizéiert se beim Verbannen iwwer VpnService.Builder |
| App-Lëscht fir Split-Tunnel | Seelen | Paketnimm ënnerscheede sech tëscht Apparater, an d'Lëscht ass Client-Zoustand |
Zwou Zeile verursaachen de meeschten Duercherneen. E Schlëssel deen um Apparat generéiert an als net-exportéierbar markéiert ass, verschwënnt wierklech mat den App-Daten, also ass den Ersatz en neie Schlëssel plus en Zertifikat deen dofir ausgestallt gouf. En Sessiounstoken deen op en neien Telefon kopéiert gëtt stierft meeschtens beim éischten Update, wat als feelgeschloenen Import gelies gëtt.
Import ass eng Analys, duerno eng Zoustëmmungsufro
Op der Empfangssäit ass Import eng Analys déi vun engem Commit gefolgt gëtt. De Client liest d'Konfiguratioun, kontrolléiert datt all referenzéierte Block existéiert, an schreift duerno d'Tunneldefinitioun an seng eege Sandbox, dofir ass d'Datei déi Dir aus den Downloads gewielt hutt net dat wat duerno verbënnt.
Duerno kënnt en Autorisatiounsschratt deen eng Datei net iwwersprange kann. Android verlaangt datt d'App VpnService.prepare() opruffe an Är Zoustëmmung kréien, ier se en Tunnel opbaue kann, also weist en nei importéierte Profil den Systemdialog nach eemol. Duerno gëtt den Tunnel explizit iwwer addAddress, addRoute, addDnsServer an addAllowedApplication oder addDisallowedApplication fir Routing pro App opgebaut. Näischt dovun ass vun engem Endpunkt implizéiert, also kann dee selwechte Profil an zwee Clienten en aneren effektive Routenensemble erginn.
Zertifikatbaséiert Ariichte fügen nach eng Verzweigung derbäi. Wann de Server engem bestëmmten Apparat en Zertifikat ausstellt, wéi et MDM a SCEP-Enrollment maachen, funktionnéiert d'Weiderbenotze op engem zweeten Telefon entweder bis de Server eng Sessioun pro Identitéit forcéiert oder et feelt beim TLS-Handshake. Kontrolléiert d'Politik vum Aussteller ier Dir d'Weiderbenotze plangt.
Iwwerpréift den neien Apparat ier Dir den ale pensionéiert
Halt den ale Telefon verbonnen bis den neien eppes Besseres wéi en gréngen Ikon bestanen huet. Bestätegt d'Ausgangsadress vum neien Apparat an den DNS-Resolver den en tatsächlech benotzt huet. Wann split tunneling zielt, start eng App déi den Tunnel ëmgoe soll an eng déi et net soll, a kuckt wéi eng Äre Provider erreecht.
Eng Kontroll klärt d'Ausgangsadress. Maacht https://ifconfig.me am Browser vum Telefon op, fuert duerno curl -s https://ifconfig.me vun engem Laptop am selwechte Wi-Fi aus a vergläicht béid Äntwerten mat der Adress déi Äre Provider zougewisen huet.
Eréischt duerno pensionéiert Dir déi al Identitéit, an dat iwwer den Aussteller: widerruft d'Zertifikat oder huelt den Apparat aus dem Kont. Eng Datei aus den Downloads läschen hält näischt op, well zwee Apparater mat demselwechte Zertifikat am Serverlog identesch ausgesinn.
Wann den Export sech als net-portabel erweist, ass d'Léisung eng nei Aschreiwung amplaz vun engem ëffentleche Konfiguratiounsbündel. Frot no engem Profil fir en zweeten Apparat, oder generéiert d'Schlësselpaar um neien Telefon a reecht de CSR an; méi lues, an et ass de Wee deen den Aussteller ënnerstëtzt.
Gitt d'Checklëscht duerch ier Dir eppes läscht: neien Apparat verbënnt, Ausgangsadress an DNS stëmmen, App-Berech ass wéi Dir et geduecht hutt, al Identitéit ass widerruffen, an all Konfiguratiounsdatei déi Dir behalen hutt läit an verschlësselte Späicher.