Come si importano i certificati CA su un telefono Android?


59

Voglio collegarmi al wireless della mia università usando il mio Nexus One. Quando vado in "Aggiungi rete Wi-Fi" in Impostazioni wireless, compilo il SSID di rete e seleziono 802.1x Enterprise per la sicurezza e compilo tutto.

Il problema è che il wireless della nostra università utilizza il certificato CA Thawte Premium Server per la certificazione.

Quando faccio clic sull'elenco a discesa per il certificato CA non ottengo nulla nell'elenco (solo N / D)

Ora ho il certificato (Thawte Premium Server CA.pem) e l'ho spostato sulla mia scheda SD, ma non sembra che Android lo rilevi automaticamente.

Dove devo inserire il certificato in modo che il gestore wireless Android lo riconosca. In altre parole, come posso importare un certificato CA in modo che Android riconosca che è sul telefono e lo visualizza nell'elenco a discesa Certificato CA.

Grazie per qualsiasi aiuto,

Tomek

PS Il mio telefono non è rootato

EDIT : dopo aver fatto qualche ricerca sembra che tu sia in grado di installare certificati andando alle impostazioni del tuo telefono> Posizione e sicurezza> Installa da scheda SD

Sfortunatamente sembra che l'unica estensione del file accettata sia .p12. Non sembra che ci sia un modo per importare i file .cer o .pem (che sono gli unici due file forniti con i certificati Thawte) in questo momento.

Sembra che tu possa usare un convertitore per convertire i tuoi file .cer o .pem in .p12, tuttavia è necessario un file chiave.

https://www.sslshopper.com/ssl-converter.html

Non so dove ottenere questo file chiave per i certificati Thawte.


1
Vorrei che questo non fosse chiuso. Mi è stato di grande aiuto. Grazie a tutti in questa pagina.
Ricket,

un certificato .crt funziona anche bene
Lie Ryan,

1
Su un dispositivo HTC con Android 2.3.5 ho dovuto modificare l'estensione del file da .pema .crt. Dopo di ciò ho potuto effettivamente individuarlo Install from SD carddall'opzione nelle impostazioni di sicurezza . Può essere inserito nella radice della scheda SD o nella Downloadscartella.
JJD

Openssl dovrebbe anche essere in grado di convertire tra vari formati di certificato.
lumaca

Risposte:


16

Ho usato il programma di installazione certificati Android di RealmB con grande successo. Devi semplicemente caricare il tuo file con codifica PEM (.cer o .pem) e quindi indirizzare il browser del tuo telefono al link fornito. Non è necessaria una chiave privata.


Lo stesso sito indica se il caricamento è un certificato valido o meno. Mi ha dato un errore di certificato non valido. Ho caricato quello con i permessi dei file giusti sulla mia macchina Linux e ha funzionato benissimo.
so_mv

1
Le possibili implicazioni per la sicurezza di quel sito dovrebbero essere evidenziate insieme al link (o, citando quel sito stesso: come è la sicurezza? - Cattivo, dovresti solo caricare i file che ritieni possano essere visualizzati pubblicamente senza effetti collaterali. ).
OR Mapper

Questo non funziona più :( Caricamento non riuscito
Vitas

6

Primo: Android comprende solo il formato binario di CA e solo con il formato file * .crt.
Secondo: Android comprende solo i certificati utente nel formato file * .p12.

Quindi puoi controllare se il tuo file CA binario o testo è molto semplice: aprilo con qualsiasi editor di testo ^

Se c'è qualcosa del genere 0‚ i0‚ Т , allora è binario.

Se vedi qualcosa del genere

Certificato: Dati: Versione: 3 (0x2) Numero di serie: 96: 0e: 45: 58: 68: 9a: bf: 00 Algoritmo della firma: sha1WithRSAEncryption Emittente: C = UA, ST =

Quindi è il testo. È molto semplice convertirlo da solo in binario in * nix:

openssl x509 -inform PEM -outform DER -in CA.pem -out CA.crt

O chiedi semplicemente al tuo amministratore di sistema.

Copia sia CA.crt che usercert.p12 sulla tua scheda SD o invialo via e-mail (se hai un client e-mail configurato su Android, di solito gli allegati scaricati sono memorizzati nella cartella Download, in realtà non importa).

Vai su Sicurezza e trova un'opzione simile a questa: installa il certificato dalla tua scheda SD

Installare prima CA.crt, quindi usercert.p12

Passa al wifi e crea una nuova connessione, scegli 802.1x EAP qualunque e seleziona i tuoi certificati per CA CA.crt e per il certificato utente usercert.p12 nel mio caso ho inserito anche il nome utente.


2
A chiunque ciò possa aiutare in futuro: non ho avuto problemi con l'installazione di un certificato in formato testo su un SGS4 - ma solo dopo averlo spostato nella cartella Download (I miei documenti non lo farebbero) e anche solo con l'opzione indicata nella domanda, non aprendo il file CRT da un file manager, in cui Android affermava che il tipo di file era sconosciuto (diversamente dal Nexus 7, dove funzionava così).
OR Mapper

Ho dovuto usare il certificato radice, non il certificato sito quando salvato da Chrome. Da una pagina Chrome: F12 (console di sviluppo), scheda Sicurezza, Visualizza certificato, scheda Percorso certificazione, fai clic sul nodo principale più in alto, Visualizza certificato, scheda Dettagli, pulsante "Copia su file ...", scegli il formato DER. L'apertura da Google Drive mi consente di installare il certificato. Verifica che venga visualizzato sul telefono in Impostazioni, Sicurezza, Credenziali attendibili, Utente.
Curtis Yallop,

5

http://abtevrythng.blogspot.com/2010/06/adding-cer-certificates-on-your-android.html

Mostra come raggiungere effettivamente questo obiettivo. Ha funzionato bene per me. Provalo.

In questo articolo viene fornita la conversione da .cer a .pfx (che è ciò di cui hai bisogno su Android). Viene fornito un metodo semplice che consente di convertire .cer in .pfx e utilizzarlo per connettersi alla rete Wi-Fi. Inoltre non è necessaria alcuna chiave per convertire .cer in .pfx !!!


5

Per altre persone in cerca di questa risposta che non possono utilizzare la soluzione di realmB perché non possono accedere a Internet sul proprio telefono.
Ho appena cambiato l'estensione dei file dei miei certificati da .cera .crte tutto ha funzionato bene! Grazie agli utenti di questo thread xda per la soluzione.


0

Questa è esattamente la soluzione. Android accetta solo certificati in "Modalità binaria". Se si dispone di un certificato in modalità Testo, che è il formato di certificato più comune, convertirlo semplicemente in formato "Binario DER". Successivamente, inserisci il certificato nella "cartella download del dispositivo Android e utilizza il menu" Installa da scheda SD "per installare il certificato.

Funziona per Samsung Galaxy, telefono Sony Xperia, HTC Phone Funziona per Android versione 3.xe 4.x

Olivier


0

Come si importano i certificati CA su un telefono Android?

La documentazione ufficiale di Android è disponibile in Gestione dei certificati . Si noti che il certificato deve essere codificato ASN.1 / DER. Una volta che la codifica è corretta, assicurati che l'estensione sia CRT o CER. In caso contrario (come lo hai chiamato tu ca-cert.der), rinominalo (in ca-cert.crt).

Se si dispone di un certificato con codifica PEM, convertirlo in codifica ASN.1 / DER utilizzando (secondo le istruzioni di Dimtry):

openssl x509 -in ca-cert.pem -inform PEM -outform DER -out ca-cert.crt

Se interessati, il Trust Store di sistema viene masterizzato nella ROM, quindi non è possibile modificarlo. Quando modifichi il Trust Store, stai effettivamente modificando /data/misc/keychaine uno di due file: cacerts-addede cacerts-removed. Guarda l' implementazione dell'ICS Trust Store di Nikolay Elenkov .


0

Sono riuscito a connettermi alla mia rete universitaria seguendo i seguenti passi:

  1. Ho chiesto all'università il certificato che viene utilizzato, nel mio caso DigicertCA.
  2. Cercalo su Google, scaricalo (l'ho salvato sul mio account Dropbox), salvalo nella cartella Download nel telefono (nel mio caso Samsung Galaxy S8).
  3. Al telefono: vai su Impostazioni-> Blocca schermo e sicurezza-> Altre impostazioni di sicurezza-> Installa da dispositivo di archiviazione (Installa certificato da archivio) - se il certificato viene scaricato sul telefono (cartella Download nel mio caso viene riconosciuto e visualizzato per selezione).
  4. Riavvia il telefono.
  5. Quando si configura la rete, con certificato CA, selezionare Don't validate after installed on phone.

Nel mio caso ha funzionato, spero che sia d'aiuto.


-1

È possibile accedere a cer / pem dalla scheda SD con il tipo MIME corretto da installare utilizzando TJWS (edizione Android), quindi non è necessario caricare il certificato su alcuni siti Web.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.