Nginx+SSL實(shí)現(xiàn)雙向認(rèn)證的示例代碼
首先創(chuàng)建一個(gè)目錄
cd /etc/nginx mkdir ssl cd ssl
CA與自簽名
制作CA私鑰
openssl genrsa -out ca.key 2048
制作 CA 根證書(shū)(公鑰)
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
注意:
1、Common Name 可以隨意填寫(xiě)
2、其他需要填寫(xiě)的信息為了避免有誤,都填寫(xiě) . 吧
服務(wù)器端證書(shū)
制作服務(wù)器端私鑰:
openssl genrsa -out server.pem 1024 openssl rsa -in server.pem -out server.key
生成簽發(fā)請(qǐng)求:
openssl req -new -key server.pem -out server.csr
注意:
1、Common Name 得填寫(xiě)為訪(fǎng)問(wèn)服務(wù)時(shí)的域名,這里我們用 usb.dev 下面 NGINX 配置會(huì)用到
2、其他需要填寫(xiě)的信息為了避免有誤,都填寫(xiě) . 吧(為了和 CA 根證書(shū)匹配)
用CA簽發(fā)
openssl x509 -req -sha256 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650 -out server.crt
客戶(hù)端證書(shū)
與服務(wù)端證書(shū)類(lèi)似
注意:
1、Common Name可以隨意填寫(xiě)
2、其他需要填寫(xiě)的信息為了避免有誤,都填寫(xiě) . 吧(為了和 CA 根證書(shū)匹配)
至此需要的證書(shū)都弄好了,我們可以開(kāi)始配置 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; }
請(qǐng)求驗(yàn)證
驗(yàn)證過(guò)程可以選擇在其他機(jī)器或是本機(jī),為了能夠解析 usb.dev,還需要配置一下 /etc/hosts:
ip地址 usb.dev
如果用瀏覽器驗(yàn)證,需要把客戶(hù)端證書(shū)導(dǎo)出成 p12 格式的
openssl pkcs12 -export -clcerts -in client.crt -inkey client.pem -out client.p12
從服務(wù)器上將幾個(gè)證書(shū)下載下來(lái),然后安裝到可信的證書(shū)列表,點(diǎn)擊剛才生成的p12文件輸入證書(shū)的密碼將安裝至個(gè)人列表。
然后關(guān)閉瀏覽器,重新輸入域名,會(huì)出現(xiàn)ssl雙向驗(yàn)證的證書(shū)提示。選擇證書(shū)即可。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- nginx配置https的雙向認(rèn)證方式
- https如何通過(guò)nginx完成雙向認(rèn)證轉(zhuǎn)發(fā)
- Nginx配置Https安全認(rèn)證的實(shí)現(xiàn)
- 詳解Nginx SSL快速雙向認(rèn)證配置(腳本)
- nginx環(huán)境下配置ssl加密(單雙向認(rèn)證、部分https)
- Nginx中配置用戶(hù)服務(wù)器訪(fǎng)問(wèn)認(rèn)證的方法示例
- 使用Lua編寫(xiě)Nginx服務(wù)器的認(rèn)證模塊的方法
- Nginx用戶(hù)認(rèn)證配置方法詳解(域名/目錄)
- 使用LDAP實(shí)現(xiàn)Nginx用戶(hù)認(rèn)證的示例
相關(guān)文章
nginx php-fpm環(huán)境中chroot功能的配置使用方法
這篇文章主要介紹了nginx php-fpm環(huán)境中chroot功能的配置使用方法,此方法是比禁用PHP敏感函數(shù)更好的一個(gè)安全防護(hù)手手段,需要的朋友可以參考下2014-05-05Nginx實(shí)現(xiàn)瀏覽器可實(shí)時(shí)查看訪(fǎng)問(wèn)日志的步驟詳解
我們經(jīng)常需要在頁(yè)面上實(shí)時(shí)查看nginx的日志輸出,并且能在頁(yè)面上顯示,那么下面小編就給大家說(shuō)下怎么在瀏覽器上實(shí)時(shí)動(dòng)態(tài)的查看nginx的訪(fǎng)問(wèn)日志,有需要的朋友們可以參考借鑒。2016-09-09Nginx 路由轉(zhuǎn)發(fā)和反向代理location配置實(shí)現(xiàn)
本文主要介紹了Nginx 路由轉(zhuǎn)發(fā)和反向代理location配置實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11Nginx?ingress?controller高可用的實(shí)現(xiàn)
本文主要介紹了Nginx?ingress?controller高可用的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-06-06nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟
nginx+uwsgi+django是我們常用的django部署方式。這篇文章主要介紹了nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-10-10修改Nginx源碼實(shí)現(xiàn)worker進(jìn)程隔離實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了修改Nginx源碼實(shí)現(xiàn)worker進(jìn)程隔離實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10nginx訪(fǎng)問(wèn)控制的實(shí)現(xiàn)示例
這篇文章主要介紹了nginx訪(fǎng)問(wèn)控制的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11nginx配置客戶(hù)端保存cookie的實(shí)現(xiàn)
本文主要介紹了nginx配置客戶(hù)端保存cookie的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03