TSL 是傳輸層安全協定,英文是transport layer security
SSL 是安全套接字層,英文是security socket layer
這兩個的差別對于不是搞安全的開發人員來講的人來說不大
KEY 通常指私鑰
CSR 是英文certificate signing request的縮寫 中文名為證書簽名請求,他不是證書,他是我們要申請證書時一個必要的檔案, 需要給CA,CA幫我們頒發出來的證書才是我們真正的證書,這個現在可以了解為公鑰
CRT 是英文certificate的縮寫,中文名就是證書檔案
X.509是一種證書格式,對X.509證書來說,認證者總是CA或由CA指定的人,一份X.509證書是一些标準字段的集合,這些字段包含有關使用者或裝置及其相應公鑰的資訊。一般以.crt結尾,根據檔案内容編碼可以分為以下兩種
PEM - privacy Enhanced Mail 以文本的形式打開,以"-----BEGIN..."開頭, "-----END..."結尾,内容是BASE64編碼.Apache和*NIX伺服器偏向于使用這種編碼格式.
DER - Distinguished Encoding Rules,打開看是二進制格式,不可讀.Java和Windows伺服器偏向于使用這種編碼格式
下面是給自己頒發證書的步驟
生成私鑰
生成證書請求檔案
生成CA憑證
利用CA憑證給自己頒發一個證書
建立目錄用來存放我們的證書檔案
<code># mkdir /tmp/cert/</code>
<code># openssl genrsa -des3 -out server.key 2048</code>
這一步執行完以後,cert目錄下會生成server.key檔案
生成證書請求檔案CSR
<code># openssl req -new -key server.key -out server.csr</code>
<a href="https://s4.51cto.com/oss/201710/23/b342115b608e7719c27633989a1732eb.png" target="_blank"></a>
前面提過X.509證書的認證者總是CA或由CA指定的人,是以得先生成一個CA的證書
<code>openssl req -new -x509 -key server.key -out ca.crt -days 3650</code>
最後用第3步的CA憑證給自己頒發一個證書玩玩
<code>openssl x509 -req -days 3650 -</code><code>in</code> <code>server.csr \</code>
<code> </code><code>-CA ca.crt -CAkey server.key \</code>
<code> </code><code>-CAcreateserial -out server.crt</code>
執行完以後,cert目錄下server.crt 就是我們需要的證書。當然,如果要在google等浏覽器顯示出安全的綠鎖标志,自己頒發的證書肯定不好使,得花錢向第三方權威證書頒發機構申請(即:第4步是交給權威機構來做,我們隻需要送出server.key、server.csr,哦,還有毛爺爺就好了)
下面我們認證一下我們的證書有沒有問題
自己安裝nginx,然後編輯配置檔案nginx.conf
<a href="https://s4.51cto.com/oss/201710/23/c0973d0295ffb75f856906eb7e6e5970.png" target="_blank"></a>
其中紅色的方框是要自己改的
443為ssl的端口
www.zhouziqi.com是你剛剛在生成證書請求檔案CSR中Common Name選項你填的網址。記住 這裡你填了什麼 你在通路的時候你就要怎麼通路,如上,我填寫了www.zhouziqi.com,那麼我們就要去通路https://www.zhouziqi.com,不過我們還要去改一下hosts檔案。
ssl on代表開啟安全的超文本連結
ssl_certificate是ssl的證書檔案的路徑
ssl_certificate_key是ssl密鑰的路徑
重新開機服務
192.168.65.128 www.zhouziqi.com
通路結果如下:
<a href="https://s2.51cto.com/oss/201710/23/35c168540f243e995ad5b7606688f386.png" target="_blank"></a>
本文章轉載http://www.cnblogs.com/lan1x/p/5872915.html網址
本文轉自 周子琪 51CTO部落格,原文連結:http://blog.51cto.com/izhouyu/1975388