APNs証明書更新手順まとめ
APNsの証明書は1年で期限が切れるので、毎年更新作業が発生するのですが、毎回「あれ、どうやるんだっけ?」となるので、まとめておく。
1.期限確認(on your server)
まずは証明書の期限を確認。期限チェックは自動化しておくのがよい。
コマンドは以下。
$ openssl x509 -noout -dates -in hogehoge.pem
出力結果は以下。
notBefore=Oct 9 00:00:00 2014 GMT
notAfter=Oct 8 00:00:00 2015 GMT
notAfterをみる。はい、切れてますね\(^o^)/オワタ
期限チェックは自動化しておくのがよい(2回目)。
2.cerファイル作成(at Apple Developer)
2-1.Member Centerへログイン
2-2.iOS Apps->Certificatesをクリック
ここまでは楽勝だ。
2-3.Certificates->Allから証明書新規作成
右上の+ボタンをクリックする。
2-4.Apple Push Notification service SSL(Produciton)を選択
ラジオボタンにチェックして、Continueボタンをクリックする。
(開発用の場合はSandboxを選択する。)
2-5.任意のApp IDを選択
セレクトボックスから設定して、Continueボタンをクリックする。
2-5.CSRファイル作成
作成済の場合は、Continueボタンをクリックする。
(更新なのでおそらく作成済だと思うが、未作成の場合は作成する。)
2-6.CSRファイルをアップロード
Choose Fileをクリックして、CSRファイルをアップロードすると、
Generateボタンがクリック出来るようになるので、クリックする。
2-7.cerファイルダウンロード
正常に処理が完了すると、cerファイルが生成されるので、Downloadボタンをクリックする。
Apple Developerサイト上での作業は以上。
3.p12ファイル作成(on your Mac)
3-1.キーチェーンアクセスを起動
2.でダウンロードしたcerファイルをダブルクリックすると、キーチェーンアクセスが起動する。
3-2.cerファイルをp12ファイルへ書き出し
キーチェーンアクセス起動後、任意の証明書(Apple Production IOS Push Services:Your App IDと表示される)を右クリックで、"Apple Production IOS Push Services:Your App IDを書き出す"を選択する。
ファイル保存のダイアログが表示されるので、画面下部のフォーマットを"個人情報交換(.p12)にして、パスワードを設定後(任意)、適当なファイル名で保存する。
4.pemファイル作成(on your Mac)
4-1.証明書と鍵をまとめてpemファイルを出力
コマンドは以下。(catでもOK)
$ openssl pkcs12 -in hogehoge.p12 -out hogehoge.pem -nodes -clcerts
パスワードを入力して、Mac verified OKが表示されればOK。
4-2.期限確認
$ openssl x509 -noout -dates -in hogehoge.pem
notBefore=Oct 11 20:00:00 2015 GMT
notAfter=Oct 10 20:00:00 2016 GMT
notAfterが来年になりました!
あとは動作確認して、pemファイルをサーバーにアップロードしてオシマイ。
もう忘れないはず。。
参考サイト
SSL証明書の有効期限を確認するコマンド:
http://blog.higty.xyz/archives/317
iOSプッシュ通知について:
http://qiita.com/Shun0750@github/items/055a6d83c7167557f02b
[Push通知]APNsの設定(サーバ編):
http://qiita.com/yukiko-kato-bass/items/fe3a890eb097780cd574