简短版:有人知道X.509客户端证书是否应该在iPad上可以处理IMAP邮件吗?我是在浪费时间尝试获得无法正常使用的功能吗?如果内置的邮件应用程序不支持带有X.509客户端证书的IMAP(即:它们仅与Microsoft Exchange ActiveSync帐户一起使用),那么是否有任何第三方应用程序可以使用?
仅关注iOS 5.1或更高版本;5.1是我一直在测试的版本。
我是政策所要求的网络的管理员,该网络必须使用X.509客户端证书来保护所有外部通信,包括我们的IMAP邮件服务器(Cyrus IMAPd)和SMTP服务器(后缀)。在客户端不提供有效的X.509客户端证书的情况下,任何一个都不接受连接。禁用客户端证书要求不是我的选择,出于类似原因,我们也不允许我们通过VPN传输流量。
现在,我们有想要连接到我们的网络的iPad用户,并且发现iPad有点问题。
对于台式机用户,我们通常会安装Thunderbird,因为它具有坚固的IMAP和出色的客户端证书支持。它“工作正常”,并且在每个平台上均受支持。这不是iPad的选项。
不幸的是,iPad的内置Mail应用程序似乎无法处理IMAP的客户端证书。我可以使用iPhone配置实用程序安装组织的根证书和用户的客户端证书。两者在“设置”->“常规”->“配置文件”中均显示为“已验证”。然后,iPad将我们的服务器视为受信任的服务器,并忽略有关未验证服务器身份的任何警告。
要求时,邮件仍然无法发送客户端证书,因此服务器将终止握手。它不会提示用户选择一个,也不会自动为与服务器提供的CA证书匹配的用户发送已安装的客户端证书。
对客户端和服务器之间的流量进行的检查表明,当服务器要求客户端证书时,iPad用一组空的客户端证书进行响应时,TLS协商失败。见下文。
通过加密的WiFi连接到内部网络时,不需要客户端证书即可接收邮件,该设备可以正常连接和下载邮件。不管我使用IMAPs端口993(选中“使用SSL”)还是IMAP + TLS端口143(选中或不选中“使用SSL”),外部访问(公共WiFi或3G以上)均失败。除了明显缺乏对IMAP的客户端证书协商支持之外,它还是完美的。
Apple的“企业支持”文档中对客户端证书支持的引用仅在讨论Microsoft Exchange ActiveSync和讨论Cisco VPN支持的地方出现。
在Apple的讨论论坛上有几个问题,但没有最近的问题,也没有有用的答案。我会链接到他们,但是苹果的论坛目前“处于维护状态”。
作为一种解决方法,我可能可以使用iPad的自动VPN连接支持来设置锁定的VPN,以与客户端认证的IPSec VPN进行通信,该IPSec VPN 仅可以与相应端口上的IMAP和SMTP服务器以及DNS进行通信,除此之外没有其他通信。不过,这确实是一个非常可怕的骇客。
顺便说一句,客户端<->服务器对话是:
- C-> S TLSv1客户端您好
- S-> C TLSv1服务器您好
- S-> C TLSv1证书,证书请求,服务器已完成(发送服务器证书,签名根证书,接受的客户端证书签名者的DN与碰巧签署服务器证书的根相同)
- C-> S TLSv1证书(空证书集,包括零个证书)
- S-> C TLSv1握手失败
换句话说,服务器说“这就是我,我希望您提供由权威机构签署的证明您是谁的证书”,而客户答复说:“嗯,我的论文都放在这个空信封里。 ”
客户端安装了根证书,并且安装了具有服务器要求的签名者DN的客户端证书。