亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

https如何通過nginx完成雙向認證轉(zhuǎn)發(fā)

 更新時間:2024年11月19日 09:18:05   作者:darkeering  
文章詳細介紹了HTTPS單向認證和雙向認證的概念,并提供了生成自簽證書、配置Nginx進行雙向認證的具體步驟,通過雙向認證,服務(wù)端和客戶端可以互相驗證身份,提升安全性,在測試過程中,使用瀏覽器訪問HTTPS接口時,需要安裝客戶端證書才能成功獲取數(shù)據(jù)

https 單向認證和雙向認證

具體可以看看這篇文章 https雙向認證,寫的很詳細和形象

  • 單向認證

  • 雙向認證

生成自簽證書、服務(wù)端證書和客戶端證書

具體可以看這篇文章 Nginx配置ssl雙向認證

1.CA 與自簽名

# 生成CA私鑰,會讓你輸自定義密碼(例:000000)
openssl genrsa -aes256 -out ca.key 2048

# 制作CA公鑰/根證書
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
# 輸入CA密碼:000000
# Common Name 隨意填寫(test.com);其它隨意

2.服務(wù)端證書(server.client server.key)

# 生成服務(wù)器私鑰(.pem文件),會讓你輸自定義密碼(例:111111)
openssl genrsa -aes256 -out server.pem 1024
# .pem文件轉(zhuǎn)換.key文件
openssl rsa -in server.pem -out server.key
# 輸入Server密碼:111111

# 生成簽發(fā)請求
openssl req -new -key server.pem -out server.csr
# 輸入Server密碼:111111
# Common Name填寫自己的ip地址即可,其他隨意

# 用CA簽發(fā)證書
openssl x509 -req -sha256 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650 -out server.crt
# 輸入CA密碼:000000

3.客戶端證書(client.client client.key)

# 生成客戶端私鑰(.pem文件),會讓你輸自定義密碼(例:222222)
openssl genrsa -aes256 -out client.pem 1024
# .pem文件轉(zhuǎn)換.key文件
openssl rsa -in client.pem -out client.key
# 222222

# 生成簽發(fā)請求
openssl req -new -key client.pem -out client.csr
# 輸入Client密碼:222222
# Common Name填寫自己的ip地址即可,其他隨意

# 用CA簽發(fā)證書
openssl x509 -req -sha256 -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650 -out client.crt
# 輸入CA密碼:000000

# 使用瀏覽器訪問時,需要生成p12格式的客戶端證書,會讓你輸入自定義密碼(例:123456)
openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12

服務(wù)端使用 https 進行通信,并使用雙向認證

const express = require("express");
const https = require("https");
const fs = require("fs");
const app = express();
const PORT = 7000;
const options = {
  key: fs.readFileSync("./ssl/server.key"),
  cert: fs.readFileSync("./ssl/server.crt"),
  ca: [fs.readFileSync("./ssl/ca.crt")],
  requestCert: true,
  rejectUnauthorized: true,
};

https
  .createServer(options, app)
  .listen(PORT, () => console.log(`App listening on port ${PORT}!`));

app.get("/v1", (req, res) => res.send("Hello World!"));

配置 nginx,進行轉(zhuǎn)發(fā)

server {
    listen       8080;
    server_name  localhost;

    location /api {
        proxy_ssl_certificate ssl/client.crt;
        proxy_ssl_certificate_key ssl/client.key;
        # client-pw.txt 里面是Client密碼:222222
        proxy_ssl_password_file ssl/client-pw.txt;
        proxy_pass https://localhost:7000/v1;

    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

測試

  1. 直接使用瀏覽器訪問 https://loalhost:7000/v1 是獲取不到數(shù)據(jù)的
  2. 使用 http://loalhost:8080/api 是可以獲取到數(shù)據(jù)的
  3. 或者瀏覽器安裝 client.p12 證書(安裝時輸入的密碼是 p12 密碼:123456)也是可以通過 https://loalhost:7000/v1 獲取數(shù)據(jù)

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx如何實現(xiàn)pathinfo模式的方法詳解

    Nginx如何實現(xiàn)pathinfo模式的方法詳解

    pathinfo是偽靜態(tài)的一種,對于用過thinkphp的朋友們來說應(yīng)該都不陌生,下面這篇文章主要給大家介紹了關(guān)于Nginx如何實現(xiàn)pathinfo模式的方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
    2017-09-09
  • 你知道Nginx嗎,利用Nginx反向代理的操作方法

    你知道Nginx嗎,利用Nginx反向代理的操作方法

    Nginx是一個高性能的HTTP和反向代理服務(wù)器,可以用于反向代理,客戶端只與Nginx交互,而不知道后端服務(wù)器的存在,以下是一個簡單的Nginx反向代理配置示例,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • nginx界面管理工具之nginxWebUI?搭建與使用方法

    nginx界面管理工具之nginxWebUI?搭建與使用方法

    本文主要介紹了nginx界面管理工具之nginxWebUI?搭建與使用方法
    2024-08-08
  • nginx?gzip?動態(tài)靜態(tài)壓縮詳解

    nginx?gzip?動態(tài)靜態(tài)壓縮詳解

    這篇文章主要為大家介紹了nginx?gzip?動態(tài)靜態(tài)壓縮實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Nginx如何配置Http、Https、WS、WSS的方法步驟

    Nginx如何配置Http、Https、WS、WSS的方法步驟

    這篇文章主要介紹了Nginx如何配置Http、Https、WS、WSS的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-05-05
  • 簡單指南:在Linux上安裝Nginx

    簡單指南:在Linux上安裝Nginx

    本文將介紹如何在Linux系統(tǒng)下安裝Nginx,Nginx是一款高性能的Web服務(wù)器和反向代理服務(wù)器,被廣泛用于構(gòu)建高可靠性、高性能的網(wǎng)站和應(yīng)用程序,通過本文的指導(dǎo),您將學(xué)會如何在Linux系統(tǒng)上安裝Nginx,并進行基本的配置,需要的朋友可以參考下
    2023-10-10
  • 基于Nginx實現(xiàn)限制某IP短時間訪問次數(shù)

    基于Nginx實現(xiàn)限制某IP短時間訪問次數(shù)

    這篇文章主要介紹了基于Nginx實現(xiàn)限制某IP短時間訪問次數(shù),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-12-12
  • Nginx服務(wù)器做負載均衡反向代理的超級攻略

    Nginx服務(wù)器做負載均衡反向代理的超級攻略

    這篇文章主要介紹了Nginx服務(wù)器做負載均衡反向代理的超級攻略,包括緩存的相關(guān)設(shè)定以及負載均衡的一些常見問題的解決,極力推薦!需要的朋友可以參考下
    2015-08-08
  • 強大的Nginx配置生成器詳解

    強大的Nginx配置生成器詳解

    Nginx?Config?是一款可以一鍵生成?Nginx?配置的神器,相當給力,這篇文章主要介紹了強大的Nginx配置生成器,需要的朋友可以參考下
    2022-11-11
  • Nginx+Tomcat高性能負載均衡集群搭建教程

    Nginx+Tomcat高性能負載均衡集群搭建教程

    這篇文章主要為大家詳細介紹了Nginx+Tomcat高性能負載均衡集群搭建教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04

最新評論