Client di posta iPad - IMAP con certificati client X.509?


11

Versione breve: qualcuno sa se i certificati client X.509 dovrebbero funzionare su iPad per la posta IMAP? Sto sprecando il mio tempo cercando di ottenere una funzione che non funziona? Se l'app di posta integrata non supporta IMAP con certificati client X.509 (ovvero: funzionano solo con account Microsoft Exchange ActiveSync), ci sono app di terze parti che lo fanno?

È interessante solo iOS 5.1 o versioni successive; 5.1 è la versione con cui ho provato.


Sono l'amministratore di una rete che è richiesta dalla politica per utilizzare i certificati client X.509 per proteggere tutte le comunicazioni esterne, incluso il nostro server di posta IMAP (Cyrus IMAPd) e il server SMTP (postfix). Nessuno dei due accetta una connessione senza che il client presenti un certificato client X.509 valido. Disabilitare il requisito del certificato client non è un'opzione per me e non siamo autorizzati a tunnelizzare il traffico tramite VPN per motivi simili.

Ora abbiamo utenti iPad che vogliono connettersi alla nostra rete e stanno riscontrando che l'iPad è un po 'un problema.

Per gli utenti su macchine desktop di solito installiamo Thunderbird, in quanto ha un solido IMAP con un eccellente supporto per i certificati client; "funziona" ed è lo stesso da supportare su ogni piattaforma. Questa non è un'opzione per iPad.

Sfortunatamente l'app di posta integrata dell'iPad non sembra far fronte ai certificati client per IMAP. Posso installare il certificato root della nostra organizzazione e il certificato client dell'utente utilizzando l'utilità di configurazione iPhone. Entrambi sono mostrati come "verificati" in Impostazioni-> Generale-> Profili. L'iPad accetta quindi il nostro server come attendibile e omette qualsiasi avviso sull'identità del server non verificata.

Mail non riesce ancora a inviare un certificato client quando viene richiesto, quindi il server termina l'handshake. Non richiede all'utente di selezionarne uno, né invia automaticamente il certificato client installato per l'utente che corrisponde al certificato CA presentato dal server.

L'esame del flusso di traffico tra client e server mostra che la negoziazione TLS fallisce quando l'iPad risponde con un set vuoto di certificati client quando il server richiede certificati client. Vedi sotto.

Quando è collegato alla rete interna tramite WiFi crittografato, dove non è necessario alcun certificato client per ottenere la posta, il dispositivo si connette e scarica la posta correttamente. L'accesso esterno (WiFi pubblico o su 3G) non riesce, sia che io utilizzi la porta IMAP 993 con "Usa SSL" selezionato o che la porta IMAP + TLS 143 con o senza "Usa SSL" sia selezionata. Oltre all'apparente mancanza di supporto per la negoziazione dei certificati client per IMAP, è perfetto.

I riferimenti al supporto dei certificati client nella documentazione per il "supporto Enterprise" di Apple vengono visualizzati solo quando si discute di Microsoft Exchange ActiveSync e dove viene discusso il supporto di Cisco VPN.

Ci sono alcune domande sui forum di discussione di Apple, ma nessuna recente e nessuna risposta utile. Vorrei collegarmi a loro, ma i forum di Apple sono "in manutenzione" al momento.

Per ovviare al problema, posso probabilmente impostare una VPN bloccata utilizzando il supporto di connessione VPN automatica dell'iPad per parlare con una VPN IPSec autorizzata dal client che può parlare solo con i server IMAP e SMTP sulle porte appropriate più DNS, nient'altro. Sarebbe comunque un trucco abbastanza raccapricciante da perpetrare.


A proposito, la conversazione client <-> server è:

  • C -> S TLSv1 Client Hello
  • S -> C TLSv1 Server Ciao
  • S -> C TLSv1 Certificate, Request Certificate, Server Hello Done (Invia cert server, firma cert root, DN del firmatario cert client accettato che risulta essere uguale alla radice che ha firmato il cert server)
  • C -> S Certificato TLSv1 (set di certificati vuoto, zero certificati inclusi)
  • S -> C TLSv1 Errore della stretta di mano

In altre parole, il server dice "questo sono io, mi aspetto che tu fornisca un certificato firmato dall'autorità per dimostrare chi sei" e il cliente risponde con "Uhm, i miei documenti sono in questa busta vuota qui. Guarda, un casuario! "

Il client ha installato il certificato root e ha installato un certificato client con il DN firmatario richiesto dal server.


In questa guida Apple menziona il supporto dei certificati x.509 quando SSL è abilitato. Il documento stesso parla solo di servizi basati su standard (IMAP, CalDAV, ecc.) E nessuna menzione di ActiveSync ovunque. Questo mi dice che dovrebbe essere possibile. Penso che il problema sia che questa non è una configurazione tipica e non ho esperienza personale nell'uso di IMAP in un ambiente aziendale (siamo un negozio di Exchange).
bispymusic,

So che questo non è gratuito, ma potresti anche consultare il supporto del sistema operativo AppleCare di Apple . Anche il livello più basso di questo servizio dovrebbe comprendere la soluzione di questo problema. Vorrei poter essere stato di maggiore aiuto personalmente.
bispymusic,

Grazie per la generosità. In realtà ho lasciato quel lavoro (di 12 anni, mente) e ora sono felicemente libero dalle cure per il supporto del certificato client difettoso in ... beh, tutto, davvero. Questo è chiaramente di interesse per gli altri, quindi spero che ci sia un guru iOS qui che può rivelare la ricetta segreta. Il mio forte sospetto personale è che i certificati client X.509 probabilmente non sono pensati per funzionare su nulla tranne Exchange ActiveSync.
Craig Ringer,

1
Brama. Se scrivessi qualsiasi cosa tu sappia come risposta, anche quei commenti sarebbero utili per legare le cose. La cosa bella è che i post possono rimanere seduti per molto tempo ed essere comunque ricercabili. Una risposta di "è stato un dolore, abbiamo cercato e niente ha funzionato, quindi siamo passati" sarebbe utile e merita la generosità IMO.
bmike

@bmike lo farei, ma poiché non ho testato con dispositivi iOS più recenti lo lascerò a qualcuno che lo ha fatto.
Craig Ringer,

Risposte:


1

La domanda sembra essere specifica per l'utilizzo di X.509 per l'autenticazione a un servizio IMAP, che non è supportato da iOS. La crittografia e le firme e-mail S / MIME possono essere eseguite su iOS, ma l'autenticazione ai servizi di posta utilizzerà comunque nome utente / password su SSL o TLS.


1
Davvero sorprendente che Apple non si possa preoccupare di supportare una funzionalità di sicurezza di base. Soprattutto quando le loro librerie SSL lo supportano già.
Craig Ringer,

Un altro percorso che Apple sta ignorando su iOS supporta GSSAPI.
Brian Topping il

1

Vedi i commenti sopra dove il richiedente chiede di non aver mai fatto funzionare tutto questo.

Quindi su iOS 5.1, i certificati X.509 non saranno facilmente utili per proteggere la posta elettronica su iOS senza un certo sforzo ingegneristico e forse per niente.

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.