Import klientského certifikátu VPN na Androidu zabere pár minut. Ověřit, že přistál na správném místě, trvá déle, a právě tuto část většina lidí přeskočí, jakmile instalační dialog ohlásí úspěch. Zpráva o úspěchu znamená jen to, že se soubor podařilo analyzovat. Nic neříká o tom, který poskytovatel drží soukromý klíč, ani jestli ve složce Downloads ještě leží kopie.

Krok 1: Přečtěte si P12, než opustí váš počítač

Začněte samotným souborem. Pokud nedovedete pojmenovat subjekt, vydavatele a datum platnosti uvnitř, importujete něco, co později nebudete moci ověřit.

Balík PKCS#12 obvykle nese klientský certifikát, jeho soukromý klíč a řetězec vydavatele. openssl pkcs12 -in client.p12 -info -noout vypíše MAC a šifrovací algoritmy, aniž by vylil klíčový materiál, takže vidíte, zda je balík chráněn heslem a jakou šifrou. Následně spusťte keytool -list -v -keystore client.p12 -storetype PKCS12 a získáte alias, otisk SHA-256 a okno platnosti, které porovnáte s telefonem.

Pošlete heslo jiným kanálem než soubor, nebo soubor předejte v řízeném distribučním toku, který po sobě nenechá kopii. Heslo vložené do stejné chatové zprávy jako archiv mění dvě kontroly v jednu.

Krok 2: Nainstalujte ho do slotu, který aplikace VPN skutečně čte

Na čistém Androidu 11 až 14 vede cesta přes Nastavení, Zabezpečení, Šifrování a přihlašovací údaje, Nainstalovat certifikát, poté VPN a uživatelský certifikát aplikace. Formulace a vnoření se mezi verzemi a nadstavbami výrobců mění, proto se řiďte štítkem typu přihlašovacích údajů, ne zapamatovanou pozicí v menu. V pracovním profilu instalujte zevnitř pracovní strany, protože přihlašovací údaje nepřekračují hranici profilu.

Nedávejte klientskou identitu do slotu certifikátu CA. Tento slot napájí úložiště důvěry uživatele a od Androidu 7 aplikace ignorují CA přidané uživatelem, pokud to jejich konfigurace síťového zabezpečení nepovolí, takže klientský certifikát tam ponechaný se nikdy neobjeví ve výběru klíčů VPN.

Někteří klienti VPN se systémového úložiště vůbec nedotknou a místo toho importují P12 do vlastního adresáře aplikace. Je to legitimní návrh, ale mění každý další krok: klíč nyní žije v sandboxu aplikace a je přesně tak silný, jak tato aplikace spravuje vlastní úložiště. Než budete předpokládat, že je ve hře KeyChain, projděte dokumentaci klienta.

Krok 3: Dokažte, který poskytovatel drží klíč

Import potvrzuje analýzu, ne hardwarovou oporu. Na Androidu 12 a novějším KeyInfo.getSecurityLevel() hlásí, zda klíč sídlí v Trusted Execution Environment, v StrongBoxu nebo v softwaru, a nahrazuje starší volání isInsideSecureHardware(). Pokud klient VPN tuto hodnotu nezobrazuje, je otisk z kroku 1 vaše záloha. Certifikát znovu zakódovaný během importu nebude odpovídat bajt po bajtu, ale veřejný klíč a subjekt ano.

Neexportovatelný není totéž jako nepoužitelný. Klíč, který nemůže opustit zařízení, může stále použít jakákoli aplikace, které uživatel povolí vybrat tento alias, a proto je výzva k aliasu skutečná kontrola, ne formalita. Dokumentace Android Keystore stojí za jedno přečtení, pokud toto návrhové rozhodnutí děláte.

Pak započítejte kopie, které jste vytvořili. P12 na vašem notebooku, ten v příloze tiketu a ten v záloze z minulého měsíce jsou stále platné identity, dokud je vydavatel neodvolá. Hardwarová ochrana instance v telefonu pro ně nedělá nic.

Krok 4: Zjistěte, komu patří požadavek na zámek obrazovky

Zaměňují se tu tři tajemství: PIN pro odemčení zařízení, heslo soukromého klíče a heslo účtu VPN. Výzva k jednomu nikdy není žádostí o reset ostatních a resetování špatného je způsob, jak se lidé zamknou mimo profil, který fungoval dobře.

Když správce zařízení nebo zásada spravovaného profilu vyžaduje zámek, požadavek patří této zásadě, ne certifikátu. adb shell dumpsys device_policy vypisuje aktivní správce a kvalitu hesla, kterou vynucují, což je nejrychlejší cesta, jak zjistit, zda je agent MDM důvodem změny vašich pravidel PIN. Odebrání certifikátu zásadu neuvolní a odebrání zásady je administrativní rozhodnutí, ne úprava nastavení.

Očekávejte i kompromis v použitelnosti. Pokud klíč vyžaduje autorizaci uživatele, tunel nemůže vzniknout před prvním odemčením, takže plánované synchronizace a vzdálená probuzení podle návrhu selhávají. Rozhodněte to před nasazením, ne po něm.

Vyhněte se zkratce v podobě úpravy locksettings.db nebo přehrání starého obejití zapomenutého vzoru. Ty rutiny byly psané pro konkrétní buildy, mohou nechat úložiště přihlašovacích údajů ve stavu, který framework už neočekává, a nikdy nezmění zásadu, která zámek původně vyžádala.

Krok 5: Vyřaďte identitu a ověřte odmítnutí

Vyřazení má tři části a jen první je místní. Odeberte profil VPN, smažte uživatelský certifikát v Nastavení, Zabezpečení, Šifrování a přihlašovací údaje, Uživatelské přihlašovací údaje, poté nechte vydavatele odvolat sériové číslo certifikátu. Místní smazání samo o sobě nechává přihlašovací údaj, který server stále přijímá, pokud si někdo P12 ponechal.

Ověřte výsledek, místo abyste ho předpokládali. Zkuste připojení s vyřazeným profilem a potvrďte, že ho server odmítá. Tunel, který stále vzniká, znamená, že jste odvolali špatné sériové číslo nebo klient tiše přešel na jinou nainstalovanou identitu.

Pokud vracíte neúspěšný import, importujte znovu z původního šifrovaného balíku a znovu zkontrolujte otisk, místo abyste znovu použili dešifrovaný soubor klíče, který jste nechali na disku.

Související články