nginx服務器配置StartSSL證書

概述

ssl基礎
服務器操做系統:aliyun ubuntu 12.04
WEB服務器:nginx 1.4.x
免費ssl認證服務:startssl.html

SSL/TLS協議運行機制的概述

百度百科解釋:node

SSL(Secure Sockets Layer 安全套接層),及其繼任者傳輸層安全(Transport Layer Security,TLS)是爲網絡通訊提供安全及數據完整性的一種安全協議。TLS與SSL在傳輸層對網絡鏈接進行加密。nginx

詳情參見阮一峯老師的網絡日誌
SSL/TLS協議運行機制的概述web

StartSSL 介紹

StartSSL是StartCom公司旗下的SSL證書,貌似是如今惟一一家提供免費SSL證書服務而且被主流瀏覽器支持的免費SSL,包括Chrome、Firefox、IE等瀏覽器均可以正常識別StartSSL,任何我的均可以從StartSSL中申請到免費一年的SSL證書。
StartSSL申請雖然要審覈,可是通常十幾分鍾就會回覆郵件了。並且通過部落的幾回申請測試發現,StartSSL申請審覈並不嚴格,若是遇到問題,你只要回覆一封郵件過去回答郵件當中所提的問題,經過率幾乎是100%。ubuntu

使用StartSSL前必須先在本身的電腦上安裝StartSSL證書,這個證書就是你用來登陸和管理StartSSL申請到的SSL惟一憑證,沒有了這個憑證就沒法對已經申請的SSL進行管理和續期了,只能從新申請一個了,因此須要特別保存好。瀏覽器

申請免費StartSSL登陸證書過程

  1. 打開網站之後找到Sign-up按鈕,果斷按下去,而後出來輸入你的我的資料的表單,進行提交。
    圖片描述安全

  2. 全部的資料都最好使用正確的。由於註冊SSL是一件很嚴肅的事情。還有就是若是你的IP地址是在大陸,你輸入香港也是會被拒絕的。並且你的地址也是也是要詳細的。 按照表單寫完之後點擊Continue按鈕。而後你填寫的郵箱會收到一個驗證碼。
    圖片描述服務器

  3. 把驗證碼輸入到你的瀏覽器Code的框裏,而後繼續。
    圖片描述網絡

  4. 而後再受到驗證郵箱的驗證碼,再輸入到瀏覽器中。而後等待驗證,他說了6個小時,其實通常一兩分鐘就會出結果。
    圖片描述session

  5. 經過驗證的郵件的URL,輸入到瀏覽器中進行下一步安裝證書。若是彈出的窗口依然還讓你輸入Code,那則輸入郵件下面連接的Code。 點擊Continue,接下來你的瀏覽器開始安裝私鑰,至關於創建用戶名密碼。
    圖片描述

  6. 而後密鑰安裝成功之後提示你開始安裝證書。
    圖片描述

  7. 證書安裝完畢之後會祝賀你。點擊完成。
    圖片描述

  8. 而後會給你發郵件說你安裝好啦,可使用了。
    圖片描述

服務器生成證書

服務器須要openssl 支持,並安裝了nginx.

root@iZ238l3t:~# cd /etc/nginx/
root@iZ238l3t:~# mkdir ssl
root@iZ238l3t:~# cd ssl
root@iZ238l3t:~# openssl genrsa -out server.key 2048
root@iZ238l3t:~# openssl req -new -key server.key -out server.csr

查看/etc/nginx/ssl 目錄下將會生成兩個文件(server.key和server.csr
圖片描述
安裝提示輸入按在startssl中填寫的同樣就能夠了。
先複製server.csr文件夾中的內容,會在接下來過程當中須要。

Startssl 申請免費一年證書

驗證域名

在控制面板中Validations Wizard的選項卡中選擇Domain Name Validation,而後輸入你的域名。(這個驗證期30內有效)

圖片描述
圖片描述

接下來他會提示讓你選擇如下幾個郵箱中的任意一個來發送驗證碼,其中我選擇的郵箱是他根據Whois查到的管理郵箱。若是你不想使用管理員郵箱你能夠創建一個他提示的郵箱。
圖片描述

而後把收到的驗證碼再輸入到Code框中,域名驗證完成。
圖片描述
圖片描述

申請免費一年域名證書

接下來申請域名SSL證書。點擊Certificates Wizard ,選擇下拉菜單中的Web Server
圖片描述
而後進入下一步他會問你驗證方式神馬的,咱們都已經在VPS上設置過了,因此這裏直接跳過。
圖片描述
而後在下面的網頁中輸入剛纔server.csr中拷貝出來的一串字符。
圖片描述
而後提示你證書信息收集好了,點擊繼續。
圖片描述
圖片描述
系統提示你必需要選擇一個二級域名來進行,你們若是申請根域名就輸入www好了。
圖片描述
圖片描述
提示成功,返回一個讓你等待的網頁。接下來就是等待官方進行審覈驗證,驗證後會發送成功或失敗的郵件到你的填寫的郵箱中。

導出證書

打開StartSSL控制面板,選擇導出證書。
圖片描述
圖片描述

將代碼拷貝出來。保存成.crt格式。

nginx配置ssl訪問

# HTTPS server
#
server {
    listen       443 ssl;
    server_name  pass.test.com;
    ssl_certificate      /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key  /etc/nginx/ssl/server.key;

    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout  5m;

    ssl_ciphers  "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !EXPORT !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";
    ssl_prefer_server_ciphers   on;
        
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    location / {
        root   /mnt/web/ssl;
        index  index.html index.htm;
    }
}

重啓nginx

service nginx restart

訪問

訪問域名顯示工做正常。
圖片描述


參考:
How to Install Nginx and a StartSSL Certificate on Debian 7 (Wheezy)
https://www.linode.com/docs/websites/nginx/how-to-install-nginx-and-a-startssl-certificate-on-debian-7-wheezy
Nginx上配置Startssl 免費SSL
http://blog.nicky1605.com/the-free-ssl-configuration-startssl-on-nginx.html

相關文章
相關標籤/搜索