主頁 > 知識庫 > Nginx+SSL實現雙向認證的示例代碼

Nginx+SSL實現雙向認證的示例代碼

熱門標簽:涪陵商都400電話開通辦理 外呼系統的經營范圍 柳州市機器人外呼系統報價 云會外呼系統 申請400電話價格多少 智能電話機器人坐席 廈門營銷外呼系統平臺 外呼系統不彈窗 安陽ai電銷機器人軟件

首先創(chuàng)建一個目錄

cd /etc/nginx
mkdir ssl
cd ssl

CA與自簽名

制作CA私鑰

openssl genrsa -out ca.key 2048

制作 CA 根證書(公鑰)

openssl req -new -x509 -days 3650 -key ca.key -out ca.crt

注意:

1、Common Name 可以隨意填寫
2、其他需要填寫的信息為了避免有誤,都填寫 . 吧

服務器端證書

制作服務器端私鑰:

openssl genrsa -out server.pem 1024
openssl rsa -in server.pem -out server.key

生成簽發(fā)請求:

openssl req -new -key server.pem -out server.csr

注意:

1、Common Name 得填寫為訪問服務時的域名,這里我們用 usb.dev 下面 NGINX 配置會用到
2、其他需要填寫的信息為了避免有誤,都填寫 . 吧(為了和 CA 根證書匹配)

用CA簽發(fā)

openssl x509 -req -sha256 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650 -out server.crt

客戶端證書

與服務端證書類似

注意:

1、Common Name可以隨意填寫
2、其他需要填寫的信息為了避免有誤,都填寫 . 吧(為了和 CA 根證書匹配)

至此需要的證書都弄好了,我們可以開始配置 NGINX 了。

Nginx配置

server {
    listen 443;
    server_name usb.dev;

    index index.html;

    root /data/test/;

    ssl on;
    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;
    ssl_client_certificate /etc/nginx/ssl/ca.crt;
    ssl_verify_client on;
}

請求驗證

驗證過程可以選擇在其他機器或是本機,為了能夠解析 usb.dev,還需要配置一下 /etc/hosts:

ip地址 usb.dev

如果用瀏覽器驗證,需要把客戶端證書導出成 p12 格式的

openssl pkcs12 -export -clcerts -in client.crt -inkey client.pem -out client.p12

從服務器上將幾個證書下載下來,然后安裝到可信的證書列表,點擊剛才生成的p12文件輸入證書的密碼將安裝至個人列表。
然后關閉瀏覽器,重新輸入域名,會出現ssl雙向驗證的證書提示。選擇證書即可。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:南充 綏化 孝感 巴中 撫順 晉城 福州 蕪湖

巨人網絡通訊聲明:本文標題《Nginx+SSL實現雙向認證的示例代碼》,本文關鍵詞  Nginx+SSL,實現,雙向,認證,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Nginx+SSL實現雙向認證的示例代碼》相關的同類信息!
  • 本頁收集關于Nginx+SSL實現雙向認證的示例代碼的相關信息資訊供網民參考!
  • 推薦文章