騰訊雲申請SSL證書與Nginx配置Https


0x00 為什么要安裝證書

  1. 信息傳輸的保密性
  2. 數據交換的完整性
  3. 信息的不可否認性
  4. 交易者身份確定性

如今各大瀏覽器廠商不斷推進Https安全訪問強制性要求,為了避免以后網站數據量增多時安裝證書造成不必要的麻煩(根據要求,使用Https時頁面內使用的鏈接包括圖片,js,css,socket,流媒體等都需要為Https鏈接),所以建議盡早安裝證書。

0x01 在騰訊雲申請TrustAsia免費SSL證書

該證書免費申請,有效期一年,只限單域名(泛域名收費)

登錄騰訊雲控制台SSL證書管理,選擇申請免費證書

選擇證書類型:亞洲誠信TrustAsia
填寫自己的域名(圖片中的域名為本文演示使用)

驗證方式推薦選擇手動DNS驗證,文件驗證會很慢而且麻煩

查看詳情

按提示去你的域名管理頁面添加DNS解析(你在哪買的或者申請的域名就去哪添加)

完成后在證書詳情頁面可以查看配置解析是否正確,如果正確只需要等待辦法機構掃描驗證就行了

驗證成功后,騰訊雲會給你發送郵件,你就可以在管理頁面下載證書了(一般只要幾分鍾就可以完成)

0x02 Nginx配置SSL證書

下載下來的壓縮包里有好幾種格式的證書,我們只需要Nginx的pem證書即可,解壓出來

將這crt和key兩個文件(公鑰和私鑰)修改好名字上傳到你的服務器

修改nginx配置文件

vi /etc/nginx/nginz.conf

依此例子修改server配置

server#這個server用來實現http自動跳轉到https
{
  listen 80;
  server_name test.onbeta.com;
  rewrite ^(.*)$ https://$host$1 permanent;
}
server {

#端口改成443
  listen          443 ssl;  
  server_name     test.onbeta.com;
  root            /var/www/test;
  index           index.html index.htm index.php;

#此處為ssl證書配置
  ssl_certificate  /etc/nginx/cert/test.onbeta.com.crt;
  ssl_certificate_key /etc/nginx/cert/test.onbeta.com.key;
  ssl_session_cache shared:SSL:1m;
  ssl_session_timeout 5m;
  ssl_ciphers HIGH:!aNULL:!MD5;
  ssl_prefer_server_ciphers on;

  if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php$1 last;
  }

  location ~ .*\.php(\/.*)*$ {
    include fastcgi.conf;
    fastcgi_pass  127.0.0.1:9000;
  }
}
重啟nginx

sudo service nginx restart
此時如果沒有報錯你就可以使用https訪問你的網站了

0x03 關於Windows下nginx配置

本文完全可以套用Windows下nginx的ssl證書配置,不過有一點需要注意的是:conf文件中文件路徑應該使用反斜杠\

ssl_certificate  D:\\nginx\cert\ssl.crt;
ssl_certificate_key D:\\nginx\cert\ssl.key;

0x04 問題解決:您與此網站建立的連接並非完全安全

如果訪問你的網站瀏覽器地址欄沒有出現綠鎖,而且提示是“您與此網站建立的連接並非完全安全”,那么原因可能是你的網頁引用了非https鏈接,查看源文件搜索"http://",想辦法修改掉這些不安全鏈接即可



本文轉載自Kiros博客https://kiros.onbeta.com/Linux/teng-xun-yun-shen-qingSSL-zheng-shu-yuNginx-pei-zh.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM