SSL證書 - 基于Nginx配置HTTPS


前言


前段時間買了一臺服務(wù)器,搞了一個博客系統(tǒng),但是苦于沒有SSL證書,導(dǎo)致訪問的過程一直是沒有安全證書的情況下,對于一些不搞程序的童鞋一看到訪問不安全鏈接,立馬就是提示勸退(PS:流下菜雞的眼淚). 所以就去網(wǎng)上瞅了瞅,發(fā)現(xiàn)SSL證書賊幾兒貴,對于我服務(wù)器小白來說,SSL證書的需求比重不算太高,只是想把 HTTPHTTPS, 找來找去,發(fā)現(xiàn)阿里云有免費(fèi)證書可以白嫖,正所謂不(qiong)嫖(de)白(dou)不(diao)嫖(zha).所以這是就使用免費(fèi)的阿里云SSL證書.

具體的環(huán)境如下所示.

· 阿里云ECS
· centos 8.0
· nginx 1.14.0


申請證書


  • 我們先來說一下如何免費(fèi)申請證書.只要你是阿里云實名主體個人/企業(yè)聂儒,一個自然年內(nèi)可以領(lǐng)取一次數(shù)量為20的免費(fèi)證書資源包.具體的領(lǐng)取傳送門如下所示.

阿里云SSL證書領(lǐng)取傳送門

  • 領(lǐng)取形式如下圖所示.
  • 然后我們進(jìn)入阿里云控制臺的SSL證書模塊.然后選擇云盾SSL證書,如下圖所示.
  • 然后選擇證書申請,這里我已經(jīng)申請了兩個了,所以就只剩下18次了.如下圖所示.
  • 如下圖,點(diǎn)擊單域名模式,然后點(diǎn)擊確定即可.
  • 然后下面列表就會出現(xiàn)一條你申請的證書記錄,點(diǎn)擊證書記錄后面的"證書申請"即可.
  • 接下來就是配置一些基本信息,如下圖所示.這里證書綁定域名就選擇你需要綁定的域名即可. 例如我想讓 www.coder-dong.com 生成證書,填寫 www.coder-dong.com 即可. CSR生成方法關(guān)閉手動填寫即可,讓阿里云直接自動生成即可,最后點(diǎn)擊下一步.
  • 然后需要去你的域名那添加一條解析記錄,并且進(jìn)行驗證.解析信息都在這個頁面上了,如果你的域名在當(dāng)前阿里云賬號上,那么它會幫你自動添加解析記錄,然后點(diǎn)擊驗證即可.
image
  • 對于阿里云當(dāng)前賬號則不需要手動添加,如果是其他賬號或者是別的運(yùn)營方申請的域名則需要手動自己添加.假設(shè)記錄值數(shù)據(jù)如下所示.那么添加解析記錄的時候就如圖所示即可.
記錄值 : TXT
主機(jī)記錄 : XXXXXX
記錄值 : YYYYYY
  • 添加完成之后,驗證成功狀態(tài)如下圖所示.
  • 簽發(fā)完成之后我們點(diǎn)擊SSL證書列表當(dāng)前證書記錄后面的 "下載" 按鈕來下載證書和秘鑰. 如下圖所示.
  • 然后選擇Nginx下載即可,具體如下圖所示.
  • 下載好了,解壓文件就得到一個.pem證書文件,一個.key秘鑰文件,具體如下所示.這兩個文件我們都需要上傳到我們的服務(wù)器中,上傳過程就不過多敘述了,我使用的是rz命令進(jìn)行文件的上傳.
  • ??????證書正好了之后,我們需要開啟服務(wù)器的 443 端口.這一步非常重要,這里我們需要去安全組中進(jìn)行配置.
image


Nginx配置


  • 首先我們先把.pem證書文件和.key秘鑰文件上傳到服務(wù)器上去.由于網(wǎng)上教程的原因,我也在配置文件目錄下創(chuàng)建的了 cert 的文件夾,并且把證書我恩建和秘鑰文件上傳到該文件夾下了.

  • 然后我們需要在Nginx的配置文件nginx.conf配置證書信息.假設(shè)我們申請的證書單域名為 www.coder-dong.com, 那么需要在http這個下添加一個443端口的serve模塊.配置如下所示.

    server {
        listen       443;
        server_name  www.coder-dong.com;
        ssl on;# 打開SSL

        ssl_certificate cert/www.coder-dong.com.pem; # 證書路徑
        ssl_certificate_key cert/www.coder-dong.com.key; # 秘鑰路徑

        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#表示使用的加密套件的類型巨税。
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS協(xié)議的類型。
        ssl_prefer_server_ciphers on;
        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
           root   html;
           index  index.html index.htm;
           proxy_pass http://127.0.0.1:8000; # 443端口指向本地的8000端口
        }
    }
  • 如上配置完成之后我們就重啟Nginx就可以使用 https://www.coder-dong.com 來訪問我們的本地8000端口了,但是我們平常訪問哪里會加 https 的前綴,都是直接訪問域名,所以這里我們還需要把常用的 80 端口的訪問重定向到 443 端口,假設(shè)我們想只輸入 www.coder-dong.com 就能訪問 443端口,那么我們還需要在Nginx中http模塊添加 server 模塊,具體配置如下所示.
    # 關(guān)于模塊中 rewrite 的具體使用,請自行百度.或者直接照葫蘆畫瓢抄襲即可.
    server {
         listen 80;
         server_name www.coder-dong.com; #需要將yourdomain.com替換成證書綁定的域名。
         rewrite ^/(.*) https://www.coder-dong.com/$1 permanent;  #將所有HTTP請求通過rewrite指令重定向到HTTPS。
    }
  • 再例如,我想把 coder-dong.com 也映射到 443 端口,配置和上面類似.
   server {
         listen 80;
         server_name coder-dong.com; #需要將yourdomain.com替換成證書綁定的域名放典。
         rewrite ^/(.*) https://www.coder-dong.com/$1 permanent;  #將所有HTTP請求通過rewrite指令重定向到HTTPS晒衩。
    }
  • OK,這樣就算完成了,最后保存退出,然后重啟Nginx即可.我們就配置完成了.

  • 當(dāng)然了,這里我們上面所有的配置羅列出來,供大家參考.


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
         listen 80;
         server_name www.coder-dong.com; #需要將yourdomain.com替換成證書綁定的域名涌攻。
         rewrite ^/(.*) https://www.coder-dong.com/$1 permanent;  #將所有HTTP請求通過rewrite指令重定向到HTTPS逛绵。
    }

    server {
         listen 80;
         server_name coder-dong.com; #需要將yourdomain.com替換成證書綁定的域名诀蓉。
         rewrite ^/(.*) https://www.coder-dong.com/$1 permanent;  #將所有HTTP請求通過rewrite指令重定向到HTTPS栗竖。
    }

    server {
        listen       443;
        server_name  www.coder-dong.com;
        ssl on;

        ssl_certificate cert/coderdong.pem;
        ssl_certificate_key cert/coderdong.key;

        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#表示使用的加密套件的類型。
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS協(xié)議的類型渠啤。
        ssl_prefer_server_ciphers on;

        location / {
           root   html;
           index  index.html index.htm;
           proxy_pass http://127.0.0.1:8000;
        }
    }
}


結(jié)語


SSL證書的配置整體來說還是比較簡單的,如果喜歡騷棟,歡迎點(diǎn)贊關(guān)注,如果有任何問題,可以評論留言.感謝各位大佬的閱讀了.

image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市添吗,隨后出現(xiàn)的幾起案子沥曹,更是在濱河造成了極大的恐慌,老刑警劉巖碟联,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件妓美,死亡現(xiàn)場離奇詭異,居然都是意外死亡鲤孵,警方通過查閱死者的電腦和手機(jī)壶栋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來普监,“玉大人贵试,你說我怎么就攤上這事】” “怎么了歹叮?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵抵卫,是天一觀的道長。 經(jīng)常有香客問我,道長椭盏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任棉圈,我火速辦了婚禮吭敢,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缭受。我一直安慰自己胁澳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布贯涎。 她就那樣靜靜地躺著听哭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪塘雳。 梳的紋絲不亂的頭發(fā)上陆盘,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天,我揣著相機(jī)與錄音败明,去河邊找鬼隘马。 笑死,一個胖子當(dāng)著我的面吹牛妻顶,可吹牛的內(nèi)容都是我干的酸员。 我是一名探鬼主播蜒车,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼幔嗦!你這毒婦竟也來了酿愧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤邀泉,失蹤者是張志新(化名)和其女友劉穎嬉挡,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體汇恤,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡庞钢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了因谎。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片基括。...
    茶點(diǎn)故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖财岔,靈堂內(nèi)的尸體忽然破棺而出风皿,到底是詐尸還是另有隱情,我是刑警寧澤使鹅,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布揪阶,位于F島的核電站,受9級特大地震影響患朱,放射性物質(zhì)發(fā)生泄漏鲁僚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一裁厅、第九天 我趴在偏房一處隱蔽的房頂上張望冰沙。 院中可真熱鬧,春花似錦执虹、人聲如沸拓挥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽侥啤。三九已至,卻和暖如春茬故,著一層夾襖步出監(jiān)牢的瞬間盖灸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工磺芭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留赁炎,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓钾腺,卻偏偏與公主長得像徙垫,于是被迫代替她去往敵國和親讥裤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評論 2 354

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