發表日期:2018-01 文章編輯:小燈 瀏覽次數:2623
制作推送證書的流程:
1. 首先我們要有生成一個Certificate Signing Request(也就是CSR)的請求文件。(在應用程序里的使用工具中找到鑰匙串訪問)。
2. 登錄開發者賬號:
?(1)如果沒有為app創建APP ID的話需要先為APP創建APP ID
? ???????? 首先到accounts第二欄:點擊APP IDs ,點擊加號,按照提示操作
?(2)如果有的話直接進入第三步;
3. 創建發布證書;點擊Certificates,development 點擊加號 (此處省略一萬字。。。)制作并下載,點擊done完成;
4. 創建配置文件(Provisioning files) 按照提示操作 制作并下載 點擊done完成
5. 雙擊第三步下載的發布證書進行安裝,然后打開鑰匙串,找到對應的證書,右鍵選擇導出,制作P12證書。
6. 到現在為止我們已經獲取到了三個文件,將他們一起放在一個文件夾下;
7. 打開terminal(終端),(位置:應用程序à實用工具à終端),
鍵盤輸入cd到切換到桌面,我們那三個文件所在的位置,使用openssl 命令編譯
注釋:在講解之前先說一下cd切換的目的:切換根目錄是要讀取前面創建的三個文件,如果大家不是在桌面放置的話需要將根目錄cd到你放置這三個文件的位置,如果不知道當前目錄中都有那些文件夾,可以使用命令ls進行查看
? (1)把.cer的SSL證書轉換為.pem文件,執行命令:
? ? ? ? ? openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem
? ????????openssl x509 -in aps.cer -inform der -out PushChatCert.pem
? (2)把私鑰Push.p12文件轉化為.pem文件,命令如下:
????????????openssl pkcs12 -nocerts -out PushChatKey.pem -in Push.p12
????????????openssl pkcs12 -nocerts -out PushChatKey.pem -in disPush.p12
?(3)如果服務端是java寫的,那么用下面的命令生成P12文件。
? ???????? 用certificate和the key創建PKCS#12格式的文件。
(A)openssl pkcs12 -export -in PushChatCert.pem -inkey PushChatKey.pem -certfile CertificateSigningRequest.certSigningRequest -name "push" -out testPush.p12
或:openssl pkcs12 -export -in PushChatCert.pem -inkey PushChatKey.pem -name "push" -out testPush.p12
(B)如果服務端是PHP寫的,那么用下面的命令生成CK文件:命令行如下:
? ? ? cat PushChatCert.pem PushChatKey.pem > ck.pem
到此為止,推送需要的文件就全部制作完成了。
為了測試證書是否工作,執行下面的命令:
telnet gateway.sandbox.push.apple.com 2195
它將嘗試發送一個規則的,不加密的連接到APNS服務。如果你看到上面的反饋,那說明你的MAC能夠到達APNS。按下Ctrl+C關閉連接。如果得到一個錯誤信息,那么你需要確保你的防火墻允許2195端口。一般這里都不會出現什么問題。
下面我們要使用我們生成的SSL證書和私鑰來設置一個安全的鏈接去鏈接蘋果服務器:
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert PushChatCert.pem -key PushChatKey.pem
執行完這一句命令后需要我們輸入密語:
Enter pass phrase for PushChatKey.pem:這個密碼是你在生成PushChatKey.pem文件時設置的密碼,我們輸入密碼按回車
你會看到一個完整的輸出,讓你明白OpenSSL在后臺做什么。如果鏈接是成功的,你可以隨便輸入一個字符,按下回車,服務器就會斷開鏈接,如果建立連接時有問題,OpenSSL會給你返回一個錯誤信息。
?當你在最后的時候你看到這樣說明你已經成功了:
CONNECTED(00000003)
depth=1 /C=US/O=Entrust, Inc./OU=www.entrust.net/rpa isincorporated by reference/OU=(c) 2009 Entrust, Inc./CN=Entrust CertificationAuthority - L1C
verify error:num=20:unable to get local issuercertificate
verify return:0
---
Certificate chain
?0s:/C=US/ST=California/L=Cupertino/O=Apple Inc./OU=iTMSEngineering/CN=gateway.sandbox.push.apple.com
? i:/C=US/O=Entrust, Inc./OU=www.entrust.net/rpa is incorporated byreference/OU=(c) 2009 Entrust, Inc./CN=Entrust Certification Authority - L1C
?1s:/C=US/O=Entrust, Inc./OU=www.entrust.net/rpa is incorporated byreference/OU=(c) 2009 Entrust, Inc./CN=Entrust Certification Authority - L1C
?? i:/O=Entrust.net/OU=www.entrust.net/CPS_2048incorp. by ref. (limits liab.)/OU=(c) 1999 Entrust.net Limited/CN=Entrust.netCertification Authority (2048)
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIFGzCCBAOgAwIBAgIETBz90jANBgkqhkiG9w0BAQUFADCBsTELMAkGA1UEBhMC
……省略……
fMGbLqkGn8YogdPqe5T1
-----END CERTIFICATE-----
subject=/C=US/ST=California/L=Cupertino/O=AppleInc./OU=iTMS Engineering/CN=gateway.sandbox.push.apple.com
issuer=/C=US/O=Entrust, Inc./OU=www.entrust.net/rpa isincorporated by reference/OU=(c) 2009 Entrust, Inc./CN=Entrust CertificationAuthority - L1C
---
No client certificate CA names sent
---
SSL handshake has read 2731 bytes and written 2165 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
??? Protocol? : TLSv1
??? Cipher??? : AES256-SHA
??? Session-ID:
??? Session-ID-ctx:
??? Master-Key:C7A47EED5E1F5……省略……369D4
??? Key-Arg?? : None
??? Start Time:1361862882
??? Timeout?? : 300 (sec)
??? Verify return code: 0 (ok)
---
3、APNS地址
測試地址gateway.sandbox.push.apple.com:2195
發布地址 gateway.push.apple.com:2195
測試的地址用的是沙盒,發布地址是不同的。發布軟件的時候記得改過來
4、要注意順序問題,一定要按照這個順序來:
日期:2018-04 瀏覽次數:6761
日期:2017-02 瀏覽次數:3435
日期:2017-09 瀏覽次數:3654
日期:2017-12 瀏覽次數:3526
日期:2018-12 瀏覽次數:4815
日期:2016-12 瀏覽次數:4582
日期:2017-07 瀏覽次數:13642
日期:2017-12 瀏覽次數:3505
日期:2018-06 瀏覽次數:4265
日期:2018-05 瀏覽次數:4442
日期:2017-12 瀏覽次數:3556
日期:2017-06 瀏覽次數:3979
日期:2018-01 瀏覽次數:3941
日期:2016-12 瀏覽次數:3908
日期:2018-08 瀏覽次數:4423
日期:2017-12 瀏覽次數:3705
日期:2016-09 瀏覽次數:6404
日期:2018-07 瀏覽次數:3205
日期:2016-12 瀏覽次數:3230
日期:2018-10 瀏覽次數:3377
日期:2018-10 瀏覽次數:3479
日期:2018-09 瀏覽次數:3577
日期:2018-02 瀏覽次數:3595
日期:2015-05 瀏覽次數:3518
日期:2018-09 瀏覽次數:3305
日期:2018-06 瀏覽次數:3433
日期:2017-02 瀏覽次數:3869
日期:2018-02 瀏覽次數:4334
日期:2018-02 瀏覽次數:4171
日期:2016-12 瀏覽次數:3571
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.