亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

使用Nginx實現HTTPS雙向驗證的方法

2024-08-30 12:28:09
字體:
來源:轉載
供稿:網友

https單向驗證應用廣泛想必大家都很熟悉,我已經在一篇博文中分享過,這次來看看Nginx如何實現雙向驗證。

單向驗證與雙向驗證的區別:

單向驗證: 指客戶端驗證服務器端證書,服務器并不需要驗證客戶端證書。

雙向驗證:指客戶端驗證服務器端證書,而服務器也需要通過CA的公鑰證書來驗證客戶端證書。

詳細的握手過程:

單向驗證

瀏覽器發送一個連接請求給安全服務器。

1、服務器將自己的證書,以及同證書相關的信息發送給客戶瀏覽器。

2、客戶瀏覽器檢查服務器送過來的證書是否是由自己信賴的CA中心所簽發的。如果是,就繼續執行協議;如果不是,客戶瀏覽器就給客戶一個警告消息:警告客戶這個證書不是可以信賴的詢問客戶是否需要繼續。

3、接著客戶瀏覽器比較證書里的消息,例如域名和公鑰,與服務器剛剛發送的相關消息是否一致,如果是一致的,客戶瀏覽器認可這個服務器的合法身份。

4、瀏覽器隨機產生一個用于后面通訊的“通話密鑰”,然后用服務器的公鑰對其加密,然后將加密后的“預主密碼”傳給服務器。

5、服務器從客戶發送過來的密碼方案中,選擇一種加密程度最高的密碼方案,用服務器的私鑰加密后通知瀏覽器。

6、瀏覽器針對這個密碼方案,接著用服務器的公鑰加過密后發送給服務器。

7、服務器接收到瀏覽器送過來的消息,用自己的私鑰解密,獲得。

8、服務器、瀏覽器接下來的通訊都是用對稱密碼方案,使用相同的對稱密鑰。

雙向驗證

1、瀏覽器發送一個連接請求給安全服務器。

2、服務器將自己的證書,以及同證書相關的信息發送給客戶瀏覽器。

3、客戶瀏覽器檢查服務器送過來的證書是否是由自己信賴的CA中心所簽發的。如果是,就繼續執行協議;如果不是,客戶瀏覽器就給客戶一個警告消息:警告客戶這個證書不是可以信賴的詢問客戶是否需要繼續。

4、接著客戶瀏覽器比較證書里的消息,例如域名和公鑰,與服務器剛剛發送的相關消息是否一致,如果是一致的,客戶瀏覽器認可這個服務器的合法身份。

5、服務器要求客戶的身份認證,用戶可以建立一個隨機數然后對其進行數字簽名,將這個含有簽名的隨機數和客戶自己的證書以及加密過的“預主密碼”一起傳給服務器。

6、服務器必須檢驗客戶證書和簽名隨機數的合法性,具體的合法性驗證過程包括:客戶的證書使用日期是否有效,為客戶提供證書的CA 是否可靠,發行CA 的公鑰能否正確解開客戶證書的發行CA的數字簽名,檢查客戶的證書是否在證書廢止列表(CRL)中。檢驗如果沒有通過,通訊立刻中斷;如果驗證通過,服務器將用自己的私鑰解開加密的“預主密碼”,然后執行一系列步驟來產生主通訊密碼(客戶端也將通過同樣的方法產生相同的主通訊密碼)。

7、客戶瀏覽器告訴服務器自己所能夠支持的通訊對稱密碼方案。

8、服務器從客戶發送過來的密碼方案中,選擇一種加密程度最高的密碼方案,用客戶的公鑰加過密后通知瀏覽器。

9、瀏覽器針對這個密碼方案,選擇一個通話密鑰,接著用服務器的公鑰加過密后發送給服務器。

10、服務器接收到瀏覽器送過來的消息,用自己的私鑰解密,獲得通話密鑰。

11、服務器、瀏覽器接下來的通訊都是用對稱密碼方案,使用相同的對稱密鑰。

一、自建CA,簽署證書

#openssl配置文件路徑vim/etc/pki/tls/openssl.cnf#下面只列出配置文件中和自建CA有關的幾個關鍵指令dir=/etc/pki/CA#CA的工作目錄database=$dir/index.txt#簽署證書的數據記錄文件new_certs_dir=$dir/newcerts#存放新簽署證書的目錄serial=$dir/serial#新證書簽署號記錄文件certificate=$dir/ca.crt#CA的證書路徑private_key=$dir/private/cakey.pem#CA的私鑰路徑

使用openssl制作CA的自簽名證書

#切換到CA的工作目錄cd/etc/pki/CA#制作CA私鑰(umask077;opensslgenrsa-outprivate/cakey.pem2048)#制作自簽名證書opensslreq-new-x509-keyprivate/cakey.pem-outca.crt#生成數據記錄文件,生成簽署號記錄文件,給文件一個初始號。touchindex.txttouchserialecho'01'>serial#自建CA完成

準備服務器端證書

#制作服務器端私鑰(umask077;opensslgenrsa-outserver.key1024)#制作服務器端證書申請指定使用sha512算法簽名(默認使用sha1算法)opensslreq-new-keyserver.key-sha512-outserver.csr#簽署證書opensslca-inserver.csr-outserver.crt-days3650

準備客戶端證書

#制作客戶端私鑰(umask077;opensslgenrsa-outkehuduan.key1024)#制作客戶端證書申請opensslreq-new-keykehuduan.key-outkehuduan.csr#簽署證書opensslca-inkehuduan.csr-outkehuduan.crt-days3650

注意事項:

1、制作證書時會提示輸入密碼,設置密碼可選,服務器證書和客戶端證書密碼可以不相同。

2、服務器證書和客戶端證書制作時提示輸入省份、城市、域名信息等,需保持一致。

3、以下信息根證書需要和客戶端證書匹配,否則可能出現簽署問題。

countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = match

如何指定簽署證書的簽名算法

<strong>opensslreqxx-[digest]Digesttosignwith(seeopenssldgst-hforlist)</strong>

查看使用的簽名算法:

nginx,https,雙向認證

<strong>#使用-sha256指定算法opensslreq-new-keyserver.key-sha256-outserver.csr</strong>

二、提供Nginx配置文件

<strong>server{listen443;server_namepro.server.com;ssion;ssi_silent_errorson;ssi_typestext/shtml;sslon;ssl_certificate/data/server/nginx/ssl/self/server.crt;ssl_certificate_key/data/server/nginx/ssl/self/server.key;ssl_client_certificate/data/server/nginx/ssl/self/ca/ca.crt;ssl_verify_clienton;ssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_ciphersECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-RC4-SHA:!ECDHE-RSA-RC4-SHA:ECDH-ECDSA-RC4-SHA:ECDH-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:!RC4-SHA:HIGH:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!CBC:!EDH:!kEDH:!PSK:!SRP:!kECDH;ssl_prefer_server_ciphersOn;indexindex.htmlindex.htmindex.php;root/data/www;location~.*/.(php|php5)?${#fastcgi_passunix:/tmp/php-cgi.sock;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;includefastcgi.conf;}location~.*/.(gif|jpg|jpeg|png|bmp|swf)${expires30d;}location~.*/.(js|css)?${expires1h;}###thisistouseopenwebsitelianjielikeonapache##location/{if(!-e$request_filename){rewrite^(.*)$/index.php?s=$1last;break;}keepalive_timeout0;}location~/.svn/{denyall;}###end##include/data/server/nginx/conf/rewrite/test.conf;access_log/log/nginx/access/access.log;}</strong>

客戶端證書格式轉換

<strong>#將文本格式的證書轉換成可以導入瀏覽器的證書opensslpkcs12-export-clcerts-inclient.crt-inkeyclient.key-outclient.p12</strong>

三、將證書導入瀏覽器,這里以Chrome為例

1、在瀏覽器窗口右上角找到設置

nginx,https,雙向認證

2、在設置窗口中找到高級設置

nginx,https,雙向認證

3、找到管理證書

nginx,https,雙向認證

4、點擊導入證書,然后選擇證書路徑就可以了

nginx,https,雙向認證

5、在導入證書之后就可以正常訪問到服務器數據了

nginx,https,雙向認證

6、如果沒有成功導入客戶端證書就訪問服務器的話,那么服務器驗證客戶端證書這步就會失敗,然后返回如下錯誤

nginx,https,雙向認證

由于用的是自簽證書不被公有CA信任,所以https那里會有紅叉。

以上所述是小編給大家介紹的使用Nginx實現HTTPS雙向驗證的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩精品在线视频| 亚洲激情视频在线| 欧美大码xxxx| 亚洲男人第一av网站| 久久久成人的性感天堂| 欧美激情在线有限公司| 日韩av电影免费观看高清| 久久频这里精品99香蕉| 亚洲区免费影片| 国产精品日韩久久久久| 精品国产福利在线| 国产一区二区黑人欧美xxxx| 亚洲a∨日韩av高清在线观看| 国产精品久久婷婷六月丁香| 久久久久久久久久国产| 久久久人成影片一区二区三区观看| 久久久精品久久久久| 国产精品久久色| 国产成人一区二区三区电影| 亚洲欧美日韩国产精品| 亚洲最大的成人网| 日韩美女av在线| 主播福利视频一区| 国产精品吴梦梦| 色一情一乱一区二区| 成人性生交xxxxx网站| 成人免费自拍视频| 国产精品精品国产| 最近2019年日本中文免费字幕| 精品久久久久久中文字幕大豆网| 国语自产精品视频在线看抢先版图片| 性欧美办公室18xxxxhd| 久久国产精品久久精品| 国产日韩换脸av一区在线观看| 久久久久久久久久亚洲| 日韩成人在线免费观看| 青青久久aⅴ北条麻妃| 91av视频在线| 国产精品h片在线播放| 精品视频久久久久久久| 欧美中文字幕精品| 国产精品久久久久久久7电影| 色无极亚洲影院| 欧美性在线观看| 亚洲国产精品99久久| 91国偷自产一区二区三区的观看方式| 亚洲国产成人在线播放| 亚洲成人精品久久久| 欧美黄色成人网| 91色精品视频在线| 欧美日韩亚洲高清| 精品国产区一区二区三区在线观看| 91极品女神在线| 精品久久久香蕉免费精品视频| 91性高湖久久久久久久久_久久99| 97久久国产精品| 国产精品欧美日韩一区二区| 97免费视频在线| 97**国产露脸精品国产| 精品国产拍在线观看| 日本亚洲欧美成人| 91av在线免费观看| 日韩免费高清在线观看| 夜夜躁日日躁狠狠久久88av| 亚洲综合中文字幕在线观看| 国产欧美精品一区二区三区-老狼| 亚洲成人精品在线| 欧美国产日韩一区二区在线观看| 国产精品嫩草视频| 狠狠色狠色综合曰曰| 成人免费看黄网站| 国产婷婷成人久久av免费高清| 国产精品久久久久不卡| 黑人欧美xxxx| 欧洲亚洲免费在线| 九九久久综合网站| 热99在线视频| 川上优av一区二区线观看| 国产视频久久网| 欧美视频二区36p| 亚洲色图18p| 欧美乱大交做爰xxxⅹ性3| 欧美人与性动交a欧美精品| 九九热最新视频//这里只有精品| 国产精选久久久久久| 久久男人av资源网站| 欧美天天综合色影久久精品| 亚洲精品一区二区在线| 亚洲视频在线视频| 久久久视频免费观看| 欧美日韩综合视频网址| 日韩在线一区二区三区免费视频| 欧美一区二区三区……| 国产精品一久久香蕉国产线看观看| 欧美精品午夜视频| 日韩美女在线播放| 亚洲国产日韩精品在线| 国产v综合ⅴ日韩v欧美大片| 亚洲欧美一区二区三区在线| 久久国产精品久久精品| 色爱av美腿丝袜综合粉嫩av| 欧美激情伊人电影| 久久这里只有精品视频首页| 57pao成人永久免费视频| 亚洲精品视频在线播放| 日韩中文字幕视频在线观看| 疯狂做受xxxx欧美肥白少妇| 国产视频精品va久久久久久| 国产女精品视频网站免费| 神马久久桃色视频| 国产成人激情小视频| 色综合天天综合网国产成人网| 欧美激情视频在线| 亚洲а∨天堂久久精品9966| 在线观看国产精品淫| 久久亚洲春色中文字幕| 欧美激情亚洲国产| 啊v视频在线一区二区三区| 在线亚洲男人天堂| 亚洲jizzjizz日本少妇| 久久精品国产一区二区三区| 欧美日韩美女视频| 国产日韩欧美黄色| 日韩av不卡电影| 久久人人97超碰精品888| 久久精品视频导航| 亚洲福利视频免费观看| 日韩中文字幕网| 欧美在线免费视频| 国产成人精品一区二区| xvideos国产精品| 国产成人91久久精品| 91午夜在线播放| 日韩av一卡二卡| 国产精品电影在线观看| www.亚洲免费视频| 日韩中文字幕在线免费观看| 成人午夜高潮视频| 亚洲一区中文字幕在线观看| 亚洲色图日韩av| 国产综合香蕉五月婷在线| 亚洲国产精品热久久| 久久天天躁狠狠躁夜夜av| 91精品视频免费| 日韩激情视频在线| 欧洲成人免费aa| 国产激情999| 欧美综合激情网| 国产97免费视| 欧美日韩成人精品| 午夜精品福利在线观看| 亚洲欧洲日产国码av系列天堂| 日韩第一页在线| 国产精品久久久久久久久久| 精品国产乱码久久久久久虫虫漫画| 欧美电影在线观看| 亚洲大胆美女视频| 日韩69视频在线观看| 国产精品影院在线观看| 日韩一区二区精品视频| 欧美一区二区三区四区在线| 亚洲成人a级网| 日韩免费在线电影| 国产精品女视频|