原創(chuàng)|使用教程|編輯:龔雪|2013-12-17 09:55:05.000|閱讀 1484 次
概述:在iOS中使用自簽名SSL證書(shū)時(shí),常常會(huì)收到瀏覽器關(guān)于站點(diǎn)的安全警告。如何設(shè)置iOS才能避免接收此類警告呢?在上文中,我們講到了不要在移動(dòng)Safari中接受自簽名證書(shū)的原因以及安裝自簽名證書(shū)作為iOS的配置參數(shù)文件的優(yōu)勢(shì)。在下文中,我們接著來(lái)看在iOS中創(chuàng)建及使用自簽名SSL證書(shū)還應(yīng)該注意哪些。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
在IIS中創(chuàng)建自簽名證書(shū)似乎很容易——只需選擇“Create Self-Signed Certificate”菜單項(xiàng)就行了:
值得注意的是,IIS是使用計(jì)算機(jī)名作為證書(shū)中的主機(jī)名的:
而在大多數(shù)情況下,計(jì)算機(jī)名與你預(yù)想的主機(jī)名是不匹配的,這將會(huì)導(dǎo)致你的自簽名證書(shū)不能被信任, 即使把它添加到iOS中:
通過(guò)從IIS6工具箱安裝和運(yùn)行SelfSSL工具這個(gè)問(wèn)題可以解決。不過(guò),接下來(lái)這個(gè)使用OpenSSL的方法或許更容易。
創(chuàng)建自簽名證書(shū),其中一個(gè)最簡(jiǎn)單的方法就是使用,這個(gè)方法適用于大多數(shù)平臺(tái),且它在Mac OSX上是默認(rèn)安裝的。
首先創(chuàng)建一個(gè)私人秘鑰文件:
openssl genrsa -out myselfsigned.key 2048
然后:創(chuàng)建自簽名證書(shū):
openssl req -new -x509 -key myselfsigned.key -out myselfsigned.cer -days 365 -subj /CN=www.mysite.com
你可以使用任意文件名作為密鑰和證書(shū)(.cer)文件的文件名。/ CN參數(shù)需根據(jù)所需主機(jī)名(例如上面例子中的//www.mysite.com)來(lái)設(shè)置。days參數(shù)指定過(guò)期日,從今天開(kāi)始算起。
如果你不想下載OpenSSL的話,有一個(gè)網(wǎng)站可以幫你做:Self-Signed Certificate Generator,不過(guò),自己做當(dāng)然是最安全的。
在Apache服務(wù)器上,密鑰和證書(shū)文件可以直接在SSL配置中使用。而在IIS中你需要一個(gè)PFX文件,以便將證書(shū)導(dǎo)入到IIS的服務(wù)器證書(shū)部分。 OpenSSL也可以為你創(chuàng)建PFX文件:
openssl pkcs12 -export -out myselfsigned.pfx -inkey myselfsigned.key -in myselfsigned.cer
使用自簽名證書(shū)的一個(gè)問(wèn)題是,你需要在每個(gè)設(shè)備上為每個(gè)證書(shū)設(shè)置信任關(guān)系。避開(kāi)這個(gè)麻煩的一個(gè)方法就是創(chuàng)建你自己的認(rèn)證機(jī)構(gòu)(CA)根證書(shū),然后基于它來(lái)創(chuàng)建證書(shū)。
你可以購(gòu)買一個(gè)商業(yè)CA來(lái)創(chuàng)建SSL證書(shū),然而你也可以自己充當(dāng)自己的CA。自己創(chuàng)建認(rèn)證機(jī)構(gòu)的優(yōu)勢(shì)在于:你自定義的CA證書(shū)在每個(gè)設(shè)備上只需安裝一次。設(shè)備會(huì)根據(jù)你的根CA證書(shū)自動(dòng)信任你發(fā)出的任何證書(shū)。
創(chuàng)建CA證書(shū)只需兩步,首先仍是創(chuàng)建一個(gè)私人秘鑰:
openssl genrsa -out myCA.key 2048
然后創(chuàng)建證書(shū):
openssl req -x509 -new -key myCA.key -out myCA.cer -days 730 -subj /CN="My Custom CA"
上面創(chuàng)建的證書(shū)文件(myCA.cer)可公開(kāi)分享,也可安裝到iOS或其他操作系統(tǒng)中作為受信任根CA證書(shū)的一個(gè)嵌入。自定義的CA證書(shū)在iOS中保存在General->Settings->Profile下:
私人秘鑰文件(myCA.key)只在創(chuàng)建新的SSL證書(shū)時(shí)才會(huì)使用。
基于這個(gè)CA證書(shū),你可以根據(jù)需要?jiǎng)?chuàng)建任意數(shù)量的證書(shū)。這里還有一個(gè)步驟,就是創(chuàng)建一個(gè)CSR(客戶端簽名請(qǐng)求),正如你購(gòu)買一個(gè)商業(yè)SSL證書(shū)一樣。
首先創(chuàng)建一個(gè)私人秘鑰:
openssl genrsa -out mycert1.key 2048
然后創(chuàng)建CSR:
openssl req -new -out mycert1.req -key mycert1.key -subj /CN=www2.mysite.com
再使用CSR來(lái)創(chuàng)建證書(shū):
openssl x509 -req -in mycert1.req -out mycert1.cer -CAkey myCA.key -CA myCA.cer -days 365 -CAcreateserial -CAserial serial
創(chuàng)建的證書(shū)(mycert.cer)可以安裝在Web服務(wù)器上,且能從任何安裝了該CA證書(shū)的iOS設(shè)備進(jìn)行訪問(wèn)。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)