Apple MDM Server:证书签名验证失败

时间:2014-03-18 18:00:33

标签: iphone openssl apple-push-notifications mdm

我想创建一个MDM服务器来管理我的iOS设备。我已经注册了iOS Enterprise Developer计划。并执行以下openSSL命令

"1. Creating Certificate Authority (CA)"
openssl req -new -x509 -extensions v3_ca -keyout cakey.key -out cacert.crt -days 365

"2. Creating the Web Server private key and certificate request"
openssl genrsa 2048 > server.key
openssl req -new -key server.key -out server.csr 

"3. Signing the server key with the CA. You'll the CA passphrase from step 1."
openssl x509 -req -days 365 -in server.csr -CA cacert.crt -CAkey cakey.key -CAcreateserial -out server.crt -extfile ./server.cnf -extensions ssl_server

"4. Creating the device Identity key and certificate request"
openssl genrsa 2048 > identity.key
openssl req -new -key identity.key -out identity.csr

"5. Signing the identity key with the CA. You'll the CA passphrase from step 1."
openssl x509 -req -days 365 -in identity.csr -CA cacert.crt -CAkey cakey.key -CAcreateserial -out identity.crt
openssl pkcs12 -export -out identity.p12 -inkey identity.key -in identity.crt -certfile cacert.crt

"6. Generating keys and certs for plist generation"
openssl req -inform pem -outform der -in identity.csr -out customer.der

我上传了生成的identity.csr并获得了MDM证书。 使用customer.der,AppleWWDRCA.cer,AppleIncRootCertificate.cer,MDM.cer(从iOS Enterprise Developer获得)和Identity.p12,我创建了一个Java代码来生成编码的plist文件。我用这个文件得到了APNSPushCert。它运作良好。

现在问题是计算机的IP地址发生了变化,我不想创建新的MDM Vendor证书。

据我所知,我提到IP的唯一地方是 server.cnf 。我更改了server.cnf中的IP并执行了除 4之外的所有命令。我在执行之前将identity.key和identity.csr放在同一个文件夹中。现在每件事都运行正常,但是当我上传编码的plist文件以获取APNSPushCert网站时,证书签名验证失败

我真的不明白出了什么问题。

2 个答案:

答案 0 :(得分:0)

这与您使用的SSL证书有关。它始终验证设备端的公用名。您必须在SSL证书的通用名称下使用您的域名或服务器的IP地址。确保它没有改变。如果它更改绑定它将DNS工作。

答案 1 :(得分:0)

我也尝试复制相同的.der(costomer.der)文件并重新编译程序。现在工作正常。另外,我使用DNS可解析名称作为URI。现在所有这些工作正常。