為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴
發(fā)表日期:2016-11 文章編輯:小燈 瀏覽次數(shù):4752
2017年1月1日起,蘋果App Store中的所有App都必須啟用 App Transport Security(ATS)安全功能。App Transport Security(應(yīng)用程序安全傳輸),簡(jiǎn)稱 ATS,是蘋果在 iOS 9 中首次推出的一項(xiàng)隱私安全保護(hù)功能,啟用ATS后,它會(huì)屏蔽明文HTTP資源加載,強(qiáng)制App通過(guò)HTTPS連接網(wǎng)絡(luò)服務(wù),通過(guò)傳輸加密保障用戶數(shù)據(jù)安全。ATS在 iOS 9 中是默認(rèn)開(kāi)啟的,但開(kāi)發(fā)者仍然可以選擇關(guān)閉 ATS,讓自己的應(yīng)用通過(guò) HTTP 連接傳輸數(shù)據(jù)。但從2017年1月1日起,這招將行不通了,所有提交到 App Store 的App必須強(qiáng)制開(kāi)啟 ATS。
2.1 100%被拒的情況:
2.2以下幾種情況是特例,不會(huì)被拒:
HTTP:當(dāng)客戶端發(fā)送請(qǐng)求,那么服務(wù)器會(huì)直接返回?cái)?shù)據(jù)。
HTTPS:當(dāng)客戶端第一次發(fā)送請(qǐng)求的時(shí)候,服務(wù)器會(huì)返回一個(gè)包含公鑰的受保護(hù)空間(也成為證書),當(dāng)我們發(fā)送請(qǐng)求的時(shí)候,公鑰會(huì)將請(qǐng)求加密再發(fā)送給服務(wù)器,服務(wù)器接到請(qǐng)求之后,用自帶的私鑰進(jìn)行解密,如果正確再返回?cái)?shù)據(jù)。這就是 HTTPS 的安全性所在。
更加詳細(xì)的過(guò)程:
? ? ? ?當(dāng)瀏覽器(客戶端)需要與某個(gè)安全站點(diǎn)建立連接時(shí),先建立TCP連接(三次握手),然后發(fā)生 SSL會(huì)話握手。
1.先通過(guò) openssl 工具創(chuàng)建一個(gè)私鑰文件mydomain.key。
sudo openssl genrsa -des3 -out mydomain.key 1024
不同的證書是可能有加密位數(shù)不同的,這里用的是 1024,但有可能是 2048;
這個(gè) openssl 工具在 windows 和 linux 上面都可以用。
2.然后我們通過(guò)下面的命令生成申請(qǐng)文件 (mydomain.csr)。
sudo openssl req -new -key mydomain.key -out mydomain.csr
這個(gè) csr 文件在向證書頒發(fā)機(jī)構(gòu)申請(qǐng)證書的時(shí)候需要提交,需要根據(jù)上一步的私鑰才能產(chǎn)生,然后會(huì)需要輸入下面一系列的信息:
最終生成好 csr 申請(qǐng)文件,就可以開(kāi)始申請(qǐng)證書了。
按驗(yàn)證的類別分:
個(gè)人或小站點(diǎn)可用一類或二類,企業(yè)一般用二類認(rèn)證,少數(shù)企業(yè)會(huì)用到EV認(rèn)證。
看了看網(wǎng)上SSL證書的價(jià)格,便宜的一般都是10美元左右一個(gè)子域名/每年,按不同類別、不同品牌等價(jià)格在幾十美元到幾百美元一年。比如能顯示綠色地址欄的EV證書和通配符證書貴一些。國(guó)內(nèi)自己的或代理的,比國(guó)外貴不少,動(dòng)輒幾千元。其實(shí)就是由可信源認(rèn)證了一下,類似于辦證,用起來(lái)沒(méi)什么差別,并非越貴越好。
國(guó)外常見(jiàn)的SSL提供商有:Thawte,Go Daddy,VeriSign,RapidSSL,GeoTrust(QuickSSL),StartSSL。
StartSSL、Go Daddy的比較便宜,GeoTrust的價(jià)格適中,Thawte和VeriSign的價(jià)格較貴。
其中StartSSL的價(jià)格是119.8美元/年
https://www.startssl.com/
Go Daddy的價(jià)格是669人民幣/年
https://sg.godaddy.com/zh/web-security/ssl-certificate/ov-ssl-certificate
最終我們會(huì)得到一個(gè).crt證書文件。憑著手上已經(jīng)注冊(cè)好的 mydomain.crt 證書和 mydomain.key 私鑰文件,就可以在我們的 http 服務(wù)上面配置 SSL 了。
5.1 在原有的虛擬主機(jī) server 段配置上修改端口為 443,然后加入如下三行 SSL 配置:
server { listen 443; ssl on; ssl_certificate /var/ssl/mydomain.crt; ssl_certificate_key /var/ssl/mydomain.key; }
5.2新增一個(gè) server 段偵聽(tīng)同樣域名上的 80 端口,直接 301 跳轉(zhuǎn)到 https 協(xié)議上的地址:
server { listen 80; server_name www.mydomain.com mydomain.com; rewrite ^/(.*)$ https://$host/$1 permanent; }
5.3然后重啟一下 Nginx,這時(shí)候會(huì)要求輸入私鑰的密碼,日后每次重啟 Nginx都需要這一步。
至此就配置完畢了。
參考文檔:
SSL證書與Https應(yīng)用部署小結(jié)
HTTPS(SSL) 升級(jí)實(shí)踐手札
iOS應(yīng)用網(wǎng)絡(luò)安全之HTTPS
iOS - HTTPS
StartSSL免費(fèi)SSL證書成功申請(qǐng)
App上架重磅通知:App Store安全新規(guī)17年1月生效
日期:2018-04 瀏覽次數(shù):7013
日期:2017-02 瀏覽次數(shù):3706
日期:2017-09 瀏覽次數(shù):3990
日期:2017-12 瀏覽次數(shù):3791
日期:2018-12 瀏覽次數(shù):5137
日期:2016-12 瀏覽次數(shù):4827
日期:2017-07 瀏覽次數(shù):13890
日期:2017-12 瀏覽次數(shù):3757
日期:2018-06 瀏覽次數(shù):4502
日期:2018-05 瀏覽次數(shù):4686
日期:2017-12 瀏覽次數(shù):3786
日期:2017-06 瀏覽次數(shù):4200
日期:2018-01 瀏覽次數(shù):4194
日期:2016-12 瀏覽次數(shù):4153
日期:2018-08 瀏覽次數(shù):4639
日期:2017-12 瀏覽次數(shù):4006
日期:2016-09 瀏覽次數(shù):6755
日期:2018-07 瀏覽次數(shù):3425
日期:2016-12 瀏覽次數(shù):3466
日期:2018-10 瀏覽次數(shù):3603
日期:2018-10 瀏覽次數(shù):3724
日期:2018-09 瀏覽次數(shù):3831
日期:2018-02 瀏覽次數(shù):3845
日期:2015-05 瀏覽次數(shù):3752
日期:2018-09 瀏覽次數(shù):3524
日期:2018-06 瀏覽次數(shù):3652
日期:2017-02 瀏覽次數(shù):4095
日期:2018-02 瀏覽次數(shù):4598
日期:2018-02 瀏覽次數(shù):4468
日期:2016-12 瀏覽次數(shù):3790
Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.