# creates an MDM CSR and private key for vendor cert
# upload the created MDM CSR to enterprise portal to get a push certificate
certhelper vendor -csr -cn=mdm-certtool -password=secret -country=US -email=foo@gmail.com
# create a "provider" or a "customer" csr. This will be signed by the vendor cert and submitted to apple to get a push cert
certhelper provider -csr -cn=mdm-certtool -password=secret -country=US -email=foo@gmail.com
# sign the provider csr with the vendor private key
# assumes `mdm.cer` is in the folder with all the other files. You can specify each path separately as well.
certhelper vendor -sign -password=secret
# Now upload the PushCertificateRequest to https://identity.apple.com/pushcert
Full Usage:
usage: certhelper <command> [<args>]
vendor <args> manage mdm vendor certs
provider <args> manage certs as a provider(mdm server administrator)
type <command> --help to see usage for each subcommand
Usage of vendor:
-cert string
path to mdm vendor cert provided by apple (default "mdm.cer")
-cn string
common name for certificate request
-country string
two letter country flag for CSR Subject(example: US) (default "US")
-csr
create a CSR for MDM vendor certificate
-email string
email address to use in CSR request Subject
-password string
rsa private key password
-private-key string
path to provider csr which needs to be signed (default "VendorPrivateKey.key")
-provider-csr string
path to csr which needs to be signed (default "ProviderUnsignedPushCertificateRequest.csr")
-sign
sign a provider push csr with the vendor certificate
Usage of provider:
-cn string
common name for certificate request
-country string
two letter country flag for CSR Subject(example: US) (default "US")
-csr
create a CSR for a push certificate request
-email string
email address to use in CSR request Subject
-password string
rsa private key password