AppSuite:PList signing
From Open-Xchange
Sign profile files generated by client-onboarding
Client-onboarding generates profile files for Mac OS and iOS to configure accounts on an Apple device. By default these profile files are unsigned, which leads to a warning. This page describes how to configure signing those profile files.
Requirements
- openjdk-7-jre-headless
- openssl
- A valid X.509 certificate and private key (both PEM-encoded)
Create keystore
First copy private key and certificate into one file
$ cat example-key.pem example.crt > example.pem
Then export certificate and key in PKCS#12 format
$ openssl pkcs12 -export -in example.pem -out /path/readable/for/open-xchange/example.p12 -name example
This exports private key and certificate in a password-protected keystore.
Verify export into keystore was successful
$ keytool -v -list -storetype pkcs12 -keystore example.p12
Output should look like this:
Keystore type: PKCS12 Keystore provider: SunJSSE Your keystore contains 1 entry Alias name: example Creation date: Feb 9, 2016 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: EMAILADDRESS=root@example.org, CN=example.org, O=Internet Widgits Pty Ltd, ST=Some-State, C=DE Issuer: EMAILADDRESS=root@example.org, CN=example.org, O=Internet Widgits Pty Ltd, ST=Some-State, C=DE Serial number: e73ec5a60dcdbe36 Valid from: Mon Nov 30 09:36:38 CET 2015 until: Tue Nov 29 09:36:38 CET 2016 Certificate fingerprints: MD5: 0D:2E:F0:0B:55:77:3E:5A:76:2C:C6:29:27:F1:61:13 SHA1: 3B:80:59:43:82:27:91:68:96:C4:D5:20:0B:86:C1:45:32:C0:36:8B SHA256: 33:33:68:0B:E3:5B:85:93:DB:95:4D:F0:5A:EE:57:7B:FD:70:E2:63:9A:28:CC:74:0E:C6:B7:03:DC:BE:7D:92 Signature algorithm name: SHA256withRSA Version: 1 ******************************************* *******************************************
Configuration
Open /opt/open-xchange/etc/client-onboarding.properties and apply following changes:
com.openexchange.client.onboarding.plist.signature.enabled=true com.openexchange.client.onboarding.plist.pkcs12store.filename=/path/readable/for/open-xchange/example.p12 com.openexchange.client.onboarding.plist.pkcs12store.password=PASSWORD_CHOSEN_AFTER_EXPORT com.openexchange.client.onboarding.plist.signkey.alias=example
Property com.openexchange.client.onboarding.plist.signkey.alias can be overwritten via config-cascade.