1. 程式人生 > >Nginx配置https實現加密認證

Nginx配置https實現加密認證

開發十年,就只剩下這套架構體系了! >>>   

關於https所需要的證書,可以到StartSSL上申請,原理部分請移步將網站打造為https,nginx的server模組配置443埠的監聽,並且將證書,私鑰資訊也羅列完整,nginx的server模組配置80埠,強制跳轉到https。
HTTPS的基本原理

公鑰私鑰 ssh-keygen -t rsa -C “new email”證書,公鑰加上CA的認證

CA是頒發受信任的證書的機構

TLS1.2是目前最高版本,還沒有發現bug。不要選擇SSL,TLS是SSL的後續版本,比SSL更加安全。OpenSSL是支援TLS的。

關於一系列的RSA加密解密,包括對稱加解密,SHA摘要簽名等,注意理解其原理即可。其中SHA1已被山東大學的王小云教授破解,改用SHA2.

302瀏覽器端跳轉需要重新進行tcp握手

伺服器端傳送的證書,瀏覽器需要到其CA進行驗證是否可信

證書私鑰主要用來協商對稱加密祕鑰

申請證書

StartSSL是一個免費的全球範圍認證的證書提供商。具體的註冊以及使用參考其官網,這篇博文講解得還是比較細緻的。

nginx配置支援
#redirect to https
server {
    listen 80;
    server_name blog.huachao.me;
    return 301 https://$server_name$request_uri;
}
proxy & ssl
server {
    listen 443 ssl;
    server_name blog.huachao.me;
    ssl on;
    ssl_certificate /path/to/cert_file;
    ssl_certificate_key /path/to/private_key;
    location / {
        proxy_pass http://localh