Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save ajithrn/f19b4aae6dafe79bb5bde6c10b0bca2f to your computer and use it in GitHub Desktop.
Save ajithrn/f19b4aae6dafe79bb5bde6c10b0bca2f to your computer and use it in GitHub Desktop.
Making Apple Apple Push Notification certificates on Linux
1. Create a new directory;
mkdir Apple\ Enterprise
cd Apple\ Enterprise
2. Generate a certificate signing request
openssl req -nodes -newkey rsa:2048 -keyout aps.key -out CertificateSigningRequest.certSigningRequest
3. With the information like so (ensure you give it a password):
Country Name (2 letter code) [AU]:GB
State or Province Name (full name) [Some-State]:London
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Total Onion Ltd
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:Total Onion Enterprise
Email Address []:
4. Login to developer.apple.com, go to:
"Member Center" -> "Certificates, Identifiers & Profiles > Identifiers > Select App IDs, Scroll down select "Add/Edit" button Besides Push Notification
5. Go through the wizard, selecting the certificate type, and uploading the .csr.
6. Download the .cer file, saving it to the folder created in step 1
7. Convert the .cer file to a .pem file:
openssl x509 -in aps.cer -inform DER -out aps.pem -outform PEM
8. Convert the .pem to a .p12:
openssl pkcs12 -export -inkey aps.key -in aps.pem -out aps.p12
9. You can now use the aps certificate on OneSignal or any other similar platforms.
@marciok
Copy link

marciok commented Dec 21, 2020

👍 👍 👍

@randolf
Copy link

randolf commented Jan 29, 2024

Wow, what a crazy process everything is with Apple. Thanks for posting this ... I'm just waiting for Apple to finish verifying my account, and then I'll be able to proceed to step 4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment