未來(lái)已來(lái)!免費(fèi)數(shù)字證書(shū)使你的node.js服務(wù)器支持https

前言

SSL數(shù)字簽名實(shí)現(xiàn)網(wǎng)站的HTTPS化事示,可以使網(wǎng)站可信早像,防劫持、防篡改肖爵、防竊聽(tīng)卢鹦,是未來(lái)網(wǎng)站安全的發(fā)展趨勢(shì)。

今天,我將以個(gè)人的名義申請(qǐng)SSL數(shù)字證書(shū)冀自,并部署在node.js服務(wù)器上揉稚。


1.在阿里云申請(qǐng)免費(fèi)的個(gè)人SSL數(shù)字證書(shū)

阿里云的數(shù)字證書(shū)服務(wù)地址: https://www.aliyun.com/product/cas?spm=5176.8142029.388261.120.BiDYTi

阿里云的數(shù)字證書(shū)服務(wù)

注意到這里有多種類(lèi)型的證書(shū),個(gè)人網(wǎng)站的證書(shū)只要用DV即可(阿里云是免費(fèi)的)熬粗。

  • 域名驗(yàn)證型SSL(Domain Validation SSL)搀玖,不顯示任何信息,是最基礎(chǔ)級(jí)的SSL證書(shū)驻呐」嘧纾可10分鐘快速頒發(fā),能起到加密傳輸?shù)淖饔煤珶o(wú)法向用戶(hù)證明網(wǎng)站的真實(shí)身份猜拾。目前市面上的免費(fèi)證書(shū)都是這個(gè)類(lèi)型的,只是提供了對(duì)數(shù)據(jù)的加密佣盒,但是對(duì)提供證書(shū)的個(gè)人和機(jī)構(gòu)的身份不做驗(yàn)證挎袜。
  • 機(jī)構(gòu)驗(yàn)證型SSL(Organization Validation SSL),提供加密功能,對(duì)申請(qǐng)者做嚴(yán)格的身份審核驗(yàn)證,提供可信身份證明肥惭。適合電子商務(wù)盯仪、電子政務(wù)網(wǎng)站、企事業(yè)單位管理系統(tǒng)蜜葱、電子郵件系統(tǒng)使用全景,證書(shū)里顯示單位名稱(chēng)。
  • 擴(kuò)展驗(yàn)證型SSL(Extended Validation SSL)牵囤,超安=EV=最安全蚪燕、最嚴(yán)格 超安EV SSL證書(shū)遵循全球統(tǒng)一的嚴(yán)格身份驗(yàn)證標(biāo)準(zhǔn),是目前業(yè)界安全級(jí)別最高的頂級(jí) (Class 4級(jí))SSL證書(shū)奔浅。適合銀行金融類(lèi)電子商務(wù)網(wǎng)站(網(wǎng)上購(gòu)物)使用馆纳,證書(shū)里顯示單位名稱(chēng),顯示綠色地址欄汹桦。

2.驗(yàn)證身份并增加域名解析

進(jìn)入后臺(tái)(證書(shū)服務(wù))鲁驶,根據(jù)提交你的資料。

證書(shū)服務(wù)控制臺(tái)

如果你的域名是在阿里云的外網(wǎng)管理的舞骆,可勾選并自動(dòng)寫(xiě)入一個(gè)記錄钥弯;如果不是,那么不是督禽,則在提交驗(yàn)證資料后脆霎,按照提示進(jìn)入域名控制臺(tái)增加一個(gè)記錄。

域名管理控制臺(tái)

3.下載證書(shū)

在身份驗(yàn)證通過(guò)并設(shè)置好解析后狈惫,在證書(shū)控制臺(tái)就可以看到這樣的內(nèi)容:

數(shù)字證書(shū)控制臺(tái)

點(diǎn)擊“下載”:

證書(shū)下載頁(yè)面

發(fā)現(xiàn)并沒(méi)有node.js的類(lèi)型睛蛛。這個(gè)無(wú)所謂,選擇“其他”,直接下載證書(shū)即可忆肾。這樣下載的證書(shū)是最完整的荸频。

下載的文件

我們?cè)趎ode.js服務(wù)中,需要用到2個(gè)文件:

// 私鑰
xxxxx.key

// 證書(shū)
xxxxx.pem

4.啟用https服務(wù)

首先客冈, https服務(wù)需要監(jiān)聽(tīng) 443 端口旭从,所以在開(kāi)啟服務(wù)之前,先檢查 443 端口是否被占用场仲。如果已被占用和悦,需要關(guān)閉占用的服務(wù)。

我們先搭建一個(gè)Express框架的node.js服務(wù)器(如果不知道如何搭建渠缕,請(qǐng)閱讀 Node.js框架之Express)摹闽。

首先,我們?cè)诟夸浵聞?chuàng)建一個(gè)文件夾 cert 褐健,用于存放私鑰和證書(shū)。把下載到的兩個(gè)文件(私鑰xxxxx.key 和 證書(shū)xxxxx.pem)放入此文件夾澜汤,分別將私鑰xxxxx.key 重命名為 private.key 和 證書(shū)xxxxx.pem重命名為 file.crt蚜迅。

bin/www 文件中,在監(jiān)聽(tīng)默認(rèn)端口后面增加下面代碼:


// ...

// server.listen(port);
// server.on('error', onError);
// server.on('listening', onListening);

// https
var https = require('https');
var fs = require('fs');
var privateKey  = fs.readFileSync('./cert/private.key', 'utf8'),
      certificate = fs.readFileSync('./cert/file.crt', 'utf8');
var credentials = {key: privateKey, cert: certificate};
var httpsServer = https.createServer(credentials, app);
var SSLPort = 443;
httpsServer.listen(SSLPort, function() {
    console.log('OneLib https is running', SSLPort);
});

// ...

然后在瀏覽器中輸入 https:// 和 你的網(wǎng)站域名進(jìn)行訪(fǎng)問(wèn)俊抵;也可在本地進(jìn)行調(diào)試:

https://127.0.0.1

不過(guò)在本地調(diào)試谁不,一定會(huì)提示你證書(shū)風(fēng)險(xiǎn)或證書(shū)錯(cuò)誤的,因?yàn)槟闵暾?qǐng)到的證書(shū)在用于申請(qǐng)的域名的徽诲。

測(cè)試

參考資料:

  1. http://blog.csdn.net/diandianxiyu_geek/article/details/53175214
  2. https://www.zhihu.com/question/52493697
  3. http://www.reibang.com/p/853099ae2edd
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末刹帕,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子谎替,更是在濱河造成了極大的恐慌偷溺,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,843評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钱贯,死亡現(xiàn)場(chǎng)離奇詭異挫掏,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)秩命,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)尉共,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人弃锐,你說(shuō)我怎么就攤上這事袄友。” “怎么了霹菊?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,187評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵剧蚣,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng)券敌,這世上最難降的妖魔是什么唾戚? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,264評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮待诅,結(jié)果婚禮上叹坦,老公的妹妹穿的比我還像新娘。我一直安慰自己卑雁,他們只是感情好募书,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著测蹲,像睡著了一般莹捡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上扣甲,一...
    開(kāi)封第一講書(shū)人閱讀 51,231評(píng)論 1 299
  • 那天篮赢,我揣著相機(jī)與錄音,去河邊找鬼琉挖。 笑死启泣,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的示辈。 我是一名探鬼主播寥茫,決...
    沈念sama閱讀 40,116評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼矾麻!你這毒婦竟也來(lái)了纱耻?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,945評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤险耀,失蹤者是張志新(化名)和其女友劉穎弄喘,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體甩牺,經(jīng)...
    沈念sama閱讀 45,367評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡限次,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了柴灯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片卖漫。...
    茶點(diǎn)故事閱讀 39,754評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖赠群,靈堂內(nèi)的尸體忽然破棺而出羊始,到底是詐尸還是另有隱情,我是刑警寧澤查描,帶...
    沈念sama閱讀 35,458評(píng)論 5 344
  • 正文 年R本政府宣布突委,位于F島的核電站柏卤,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏匀油。R本人自食惡果不足惜缘缚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望敌蚜。 院中可真熱鬧桥滨,春花似錦、人聲如沸弛车。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,692評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)纷跛。三九已至喻括,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間贫奠,已是汗流浹背唬血。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,842評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留唤崭,地道東北人拷恨。 一個(gè)月前我還...
    沈念sama閱讀 47,797評(píng)論 2 369
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像浩姥,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子状您,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容