亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

有HTTP了,為什么需要HTTPS

主要原因是HTTP數據傳輸時沒有對數據進行加密,所以導致數據不安全。而HTTPS在HTTP上加了一層,對數據進行加密,這樣就保證了數據的安全性。防止傳輸的數據過程中被不法分子盜用、劫持、篡改,而導致數據信息的泄露。

HTTPS協議的實現

對傳輸內容進行加密以及身份驗證

  • 對稱加密:加密秘鑰和解密秘鑰是一樣的
Nginx系列:https配置

 

  • 非對稱加密:加密密鑰與解密密鑰是不一樣的,但是是成對的。
Nginx系列:https配置

 

  • HTTPS加密協議原理
Nginx系列:https配置

 

中間人偽造客戶端和服務端:(中間人可以偽裝成客戶端和服務端,中間人可以對數據進行劫持,不安全

Nginx系列:https配置

 

 

HTTPS的CA簽名證書:(服務端和客戶端通過實現約定好的證書進行認證,都會對證書進行校驗,所以中間人沒法劫持數據,故安全

 

Nginx系列:https配置

 

 

0x01:先驗證Nginx安裝情況

在【Nginx系列:Nginx源碼安裝】 文章中,知道安裝Nginx時,必須首先安裝openssl openssl-devel依賴 模塊,而這兩個模塊就是HTTPS需要用戶的類庫;所以毫無疑問安裝Nginx時,linux系統肯定安裝了這兩個模塊;

Nginx的https需要安裝with-stream_ssl_preread_module目錄,在nginx的源碼目錄執行以下命令,可以看出nginx默認并不會安裝stream_ssl_preread_module模塊的,需要重新編譯安裝一下

cat auto/options | grep YES  | grep ssl
Nginx系列:https配置

 

安裝一下stream_ssl_preread_module模塊

./configure --prefix=/usr/local/nginx --user=nginx 
 --group=nginx --with-http_secure_link_module 
--with-http_stub_status_module --with-stream_ssl_preread_module
--with-http_ssl_modulemake
cd objs/mv nginx /usr/local/nginx/sbin/

 

0x02:生成秘鑰和CA證書

  • 生成key秘鑰

先進入Nginx的安裝目錄,然后生成一個目錄,存放密鑰和CA證書

cd /usr/local/nginx/conf/
mkdir httpsKeyscd httpsKeys

先看下openssl命令的基本用法

基本語法:
openssl genrsa [args] [numbits]
說明:args1 對生成的私鑰文件是否要使用加密算法進行對稱加密: 
    -des : CBC模式的DES加密 
    -des3 : CBC模式的3DES加密 
    -aes128 : CBC模式的AES128加密 
    -aes192 : CBC模式的AES192加密 
    -aes256 : CBC模式的AES256加密 
args2 對稱加密密碼
    -passout passwords
    其中passwords為對稱加密(des、3des、aes)的密碼(使用這個參數就省去了console交互提示輸入密碼的環節) 
args3 輸出文件
    -out file : 輸出證書私鑰文件 
[numbits]: 密鑰長度,理解為私鑰長度 

使用如下命令生成key秘鑰

openssl genrsa -idea -out jesonc.key 2048
Nginx系列:https配置

 

執行以上命令需要輸入密鑰key的密碼,這里使用密碼:admin,最終在當前目錄生成一個jesonc.key的密鑰文件。

  • 生成證書簽名請求文件(csr文件)

根據密鑰文件jesonc.key生成證書簽名請求文件jesonc.csr

openssl req -new -key jesonc.key -out jesonc.csr

 

Nginx系列:https配置

 

執行命令的過程中需要根據提示輸入一些相關的信息,最終會在當前目錄生成jesonc.csr文件。

  • 生成證書簽名文件(CA文件)

生成證書簽名文件(CA文件),有效期設置為10年,這個有效期根據自己的要求設置。

openssl x509 -req -days 3650 -in jesonc.csr 
-signkey jesonc.key -out jesonc.crt

 

0x03:nginx配置https

Nginx配置HTTPS的基本語法如下

ssl開關:

配置語法:listen 443 ssl;  # 1.1版本后這樣寫

ssl證書文件

配置語法:ssl_certificate file;
默認狀態:-配置方法:http、server

ssl密碼文件

配置語法:ssl_certificate_key file;
默認狀態:ssl off;
配置方法:http、server

在server模塊添加如下配置

        listen       443 ssl;
        server_name  localhost;
        ssl_session_cache   shared:SSL:10m;
        ssl_session_timeout 10m;
        ssl_certificate /usr/local/nginx/conf/httpsKeys/jesonc.crt; # 證書路徑
        ssl_certificate_key /usr/local/nginx/conf/httpsKeys/jesonc.key; # 請求認證 key 的路徑
Nginx系列:https配置

 

啟動Nginx

Nginx系列:https配置

 

啟動Nginx時需要輸入密碼,這時因為生成證書簽名請求文件(csr文件)在A challenge password時我輸入了密碼。這個密碼可以不輸入。

驗證是否可以訪問,雖然目前自簽名的證書已經不能使用;但是nginx的HTTPS大致是這樣配置的。

Nginx系列:https配置

 

分享到:
標簽:配置 https
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定