我想创建一个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网站时,证书签名验证失败。
我真的不明白出了什么问题。
答案 0 :(得分:0)
这与您使用的SSL证书有关。它始终验证设备端的公用名。您必须在SSL证书的通用名称下使用您的域名或服务器的IP地址。确保它没有改变。如果它更改绑定它将DNS工作。
答案 1 :(得分:0)
我也尝试复制相同的.der(costomer.der)文件并重新编译程序。现在工作正常。另外,我使用DNS可解析名称作为URI。现在所有这些工作正常。