我正在尝试设置从我的设备到服务器的 MDM Check-in 连接。在我的 .mobileconfig 中,我已经输入了来自凭证的身份,我从钥匙串访问和使用 .p12 文件生成它。对于服务器和签入 URL - https://address.To.Server:9769/mdm/
我在启用 SSL 的 tomcat 中托管我的服务器,我使用 keytools 生成 JKS,-“keytool -importkeystore -srckeystore client-cert.p12 -srcstoretype PKCS12 -destkeystore keystore.jks”
* client-cert.p12 与我放入 mobileconfig 身份的 .p12 文件相同。
如果我没记错的话,从 IOS 到服务器的所有请求都使用 HTTP PUT 方法。我已经尝试直接从 chrome 浏览器访问我的服务器并且没有问题。我相信这是证书问题,但我不知道发生了什么。
当我尝试从 safari 安装配置文件时,我得到了所有这些错误。
>Notice: (Error) MC: Connection to <server> failed with error: NSError:
Desc : The server certificate for <server> is invalid.
US Desc: The server certificate for <server> is invalid.
Domain : MCHTTPTransactionErrorDomain
Code : 23002
Type : MCFatalError
Params : (
"<server>"
)
>Notice: (Error) MC: Cannot install MDM Mobile Device Management. Error: NSError:
Desc : The payload Mobile Device Management could not be installed.
Sugg : The server certificate for <server> is invalid.
US Desc: The payload Mobile Device Management could not be installed.
US Sugg: The server certificate for <server> is invalid.
Domain : MCInstallationErrorDomain
Code : 4001
Type : MCFatalError
Params : (
"Mobile Device Management"
)
>Desc : The profile SilverlakeMDM could not be installed.
Sugg : The payload Mobile Device Management could not be installed.
US Desc: The profile SilverlakeMDM could not be installed.
US Sugg: The payload Mobile Device Management could notbe installed.
Domain : MCProfileErrorDomain
Code : 1009
Type : MCFatalError
Params : (
SilverlakeMDM
)
以下来自我的服务器控制台:
>httpsConnector.receiver.02 ERROR DefaultSystemExceptionStrategy:300 logException - Caught exception in Exception Strategy: Received close_notify during handshake
javax.net.ssl.SSLException: Received close_notify during handshake
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1868)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1821)
at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1922)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1059)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1294)
at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:848)
at sun.security.ssl.AppInputStream.read(AppInputStream.java:102)
at sun.security.ssl.AppInputStream.read(AppInputStream.java:69)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
at org.mule.transport.http.HttpServerConnection.readLine(HttpServerConnection.java:219)
at org.mule.transport.http.HttpServerConnection.readRequest(HttpServerConnection.java:185)
at org.mule.transport.http.HttpMessageReceiver$HttpWorker.run(HttpMessageReceiver.java:155)
at org.mule.work.WorkerContext.run(WorkerContext.java:311)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)