我想使用Nexus One连接到大学的无线网络。当我转到“无线设置”中的“添加Wi-Fi网络”时,我填写了网络SSID,然后选择802.1x Enterprise作为安全性并填写了所有内容。

问题是我们大学的无线网络使用Thawte用于认证的Premium Server CA证书。

当我单击CA证书的下拉列表时,列表中没有任何内容(仅N / A)

现在我有了证书(Thawte Premium Server CA.pem)并将其移至我的SD卡中,但看起来Android无法自动检测到它。

我应该在哪里放置证书,以便Android无线管理器识别它。换句话说,我该如何导入CA证书,以便Android识别该证书在手机上并在CA证书下拉列表中显示。

感谢您的帮助,

Tomek

PS我的手机没有植根

编辑:进行一些研究后,您似乎可以通过进入手机的设置>位置和安全性>从SD卡安装

很遗憾,似乎唯一接受的文件扩展名是.p12。目前看来,尚无法导入.cer或.pem文件(这是Thawte证书随附的仅有两个文件)。

看起来确实可以使用转换器将您的.cer或.pem文件转换为.p12,但是需要一个密钥文件。

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

我不知道从何处获取Thawte证书的密钥文件。

评论

我希望这不会被公开。这对我最有帮助。谢谢本页上的所有人。

.crt证书也可以正常工作

在装有Android 2.3.5的HTC设备上,我不得不将文件扩展名从.pem更改为.crt。之后,我实际上可以从“安全性”设置中的“从SD卡安装”选项中找到它。可以将其放在SD卡的根目录或“下载”文件夹中。

Openssl还应该能够在各种证书格式之间进行转换。

#1 楼

我使用RealmB的Android证书安装程序取得了巨大的成功。您只需上载经过PEM编码(.cer或.pem)的文件,然后将手机的浏览器指向提供的链接。不需要私钥。

评论


该网站本身会告知上传的文件是否有效。它给了我无效的证书错误。我在Linux机器上上传了一个具有正确文件权限的文件,效果很好。

–so_mv
13年7月7日在0:49

该网站可能带来的安全隐患应与链接一起指出(或引用该网站本身:安全性如何?-不好,您应该仅上传您认为可以公开查看的文件,而没有任何副作用)。

– O. R. Mapper
2013年12月20日13:16



这不再起作用:(上传失败

–维塔斯
17年1月10日在9:13

#2 楼

首先:Android仅了解CA的二进制格式,并且仅具有* .crt文件格式。
其次:Android仅了解* .p12文件格式的用户证书。

因此您可以检查是否CA文件二进制或文本非常简单:使用任何文本编辑器将其打开^

如果存在类似0‚ i0‚ Т的内容,则它是二进制的。

如果看到类似


证书:数据:版本:3(0x2)序列号:
96:0e:45:58:68:9a:bf:00签名算法:
sha1WithRSAEncryption Issuer :C = UA,ST =


然后是文本。自己在* nix中将其转换为二进制文件非常简单:

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


,或者直接询问系统管理员。

复制两个CA .crt和usercert.p12到您的SD卡或通过电子邮件发送(如果您在Android上配置了电子邮件客户端,通常下载的附件存储在“下载”文件夹中,实际上没关系)。

转到“安全性”,然后找到类似的选项:从SD卡安装证书

先安装CA.crt,然后再安装usercert.p12

转到wifi并建立新连接,选择802.1x EAP,并为CA CA.crt和用户证书usercert.p12选择证书(在本例中,我也输入了用户名。

评论


对于将来可能会有所帮助的人:在SGS4上安装文本格式证书没有问题-但只有在将其移动到“下载”文件夹(我的文档不会这样做)并且仅使用问题,而不是通过文件管理器打开CRT文件,而Android在文件管理器中声称文件类型未知(与Nexus 7不同,在Nexus 7上确实如此)。

– O. R. Mapper
2013年12月20日13:13

从Chrome保存后,我必须使用Root Cert,而不是站点证书。在Chrome页面中:F12(开发人员控制台),“安全性”选项卡,“查看证书”,“证书路径”选项卡,单击最上方的根节点,“查看证书”,“详细信息”选项卡,“复制到文件...”按钮,选择DER格式。从谷歌驱动器打开,让我安装证书。验证它是否显示在电话的“设置”,“安全性”,“受信任的凭据”,“用户”中。

–科蒂斯·雅洛普(Curtis Yallop)
17年5月12日在19:19

#3 楼

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

显示如何实际实现此目的。对我来说很好。试试吧。

本文给出了.cer到.pfx的转换(这是Android上需要的)。给出了一种简单的方法,您可以使用该方法将.cer转换为.pfx并将其连接到Wi-Fi网络。另外,您不需要任何密钥即可将.cer转换为.pfx !!!

#4 楼

对于寻找此答案的其他人,因为他们无法通过手机访问Internet而无法使用realmB的解决方案。感谢该xda线程的用户提供解决方案。

#5 楼


如何将CA证书导入到Android手机上?


可以在“使用证书”中找到Android的官方文档。请注意,证书必须是ASN.1 / DER编码的。编码正确后,只需确保扩展名是CRT或CER。如果没有(如您将其命名为ca-cert.der),则将其重命名(为ca-cert.crt)。 ):

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


如果有兴趣,系统信任库已刻录到ROM中,因此您真的无法对其进行修改。修改信任库时,实际上是在调整/data/misc/keychain和两个文件之一:cacerts-addedcacerts-removed。请参阅Nikolay Elenkov的ICS信任库实现。

#6 楼

这就是解决方案。 Android仅在“二进制模式”下接受证书。如果您拥有最常见的证书格式为“文本”模式的证书,则只需将其转换为“ DER Binary”格式即可。之后,将证书推送到“ Android设备的下载文件夹,然后使用”从SD卡安装”菜单来安装证书。

适用于Samsung Galaxy,Sony Xperia手机,HTC Phone
适用于Android版本3.x和4.x版本的作品

奥利维尔

#7 楼

我已按照以下步骤设法连接到我的大学网络:


向大学询问了它使用的证书,在我的情况下为DigicertCA。
Google对其进行下载, (我已将其保存在我的Dropbox帐户中),将其保存在手机的下载文件夹中(在我的情况下为Samsung Galaxy S8)。
在手机上:转到“设置”->“锁屏和安全性”->“其他安全性设置”- >从设备存储安装(从存储安装证书)-如果证书已从手机上下载(在我的情况下为“下载”文件夹,它将被识别并显示出来供选择)。
重新启动手机。
配置网络时在CA证书中,选择Don't validate after installed on phone。对于我来说,它可以正常工作,希望对您有所帮助。

#8 楼

您可以使用要使用TJWS(Android版)安装的正确MIME类型从SD卡访问您的cer / pem,因此您无需将证书上传到某个网站。