溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

nginx ssl單向和雙向配置

發(fā)布時間:2020-07-20 08:43:24 來源:網(wǎng)絡(luò) 閱讀:336 作者:大屁孩兒 欄目:系統(tǒng)運維

Nginx配置SSL
https://coding.net/u/aminglinux/p/nginx/git/blob/master/ssl/nginx.md

Nginx配置SSL
Nginx配置示例(單向)

cp /etc/pki/ca_test/server/server.* /usr/local/nginx/conf/
{
listen 443 ssl;
server_name www.aminglinux.com;
index index.html index.php;
root /data/wwwroot/aminglinux.com;
ssl on;
ssl_certificate server.crt;
ssl_certificate_key server.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
ssl_prefer_server_ciphers on;
...
}

配置說明

  1. 443端口為ssl監(jiān)聽端口。
  2. ssl on表示打開ssl支持。
  3. ssl_certificate指定crt文件所在路徑,如果寫相對路徑,必須把該文件和nginx.conf文件放到一個目錄下。
  4. ssl_certificate_key指定key文件所在路徑。
  5. ssl_protocols指定SSL協(xié)議。
  6. ssl_ciphers配置ssl加密算法,多個算法用:分隔,ALL表示全部算法,!表示不啟用該算法,+表示將該算法排到最后面去。
  7. ssl_prefer_server_ciphers 如果不指定默認(rèn)為off,當(dāng)為on時,在使用SSLv3和TLS協(xié)議時,服務(wù)器加密算法將優(yōu)于客戶端加密算法。

配置完成后出現(xiàn)的問題
nginx ssl單向和雙向配置

nginx ssl單向和雙向配置

經(jīng)查找資料將ssl on注釋掉就可以了 (和新版本的nginx有關(guān))
第二個報錯如下
nginx ssl單向和雙向配置
發(fā)現(xiàn)是.crt文件問題 重新生成。crt文件的過程遇到了上節(jié)中出現(xiàn)的如下問題
nginx ssl單向和雙向配置

然后 sed -i 's/unique_subject = yes/unique_subject = no/' /etc/pki/ca_test/index.txt.attr
重新生成.crt文件成功
重啟nginx成功
訪問https成功
nginx ssl單向和雙向配置

Nginx配置雙向認(rèn)證

cp /etc/pki/ca_test/root/ca.crt /usr/local/nginx/conf/
配置示例:
{
listen 443 ssl;
server_name www.aminglinux.com;
index index.html index.php;
root /data/wwwroot/aminglinux.com;
ssl on;
ssl_certificate server.crt;
ssl_certificate_key server.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
ssl_prefer_server_ciphers on;
ssl_client_certificate ca.crt; //這里的ca.crt是根證書公鑰文件
ssl_verify_client on;
...
}

客戶端(瀏覽器)操作

如果不進行以下操作,瀏覽器會出現(xiàn)400錯誤。400 Bad Request(No required SSL certificate was sent)
首先需要將client.key轉(zhuǎn)換為pfx(p12)格式

cd /etc/pki/ca_test/client

openssl pkcs12 -export -inkey client.key -in client.crt -out client.pfx //這一步需要輸入一個自定義密碼,一會在windows上安裝的時候要用到,需要記一下。

然后將client.pfx拷貝到windows下,雙擊即可安裝。

也可以直接curl測試:
curl -k --cert /etc/pki/ca_test/client/client.crt --key /etc/pki/ca_test/client/client.key https://www.aminglinux.com/index.html

配置如下
nginx ssl單向和雙向配置
重加載nginx 瀏覽器訪問如下
nginx ssl單向和雙向配置
將客戶端證書導(dǎo)入
nginx ssl單向和雙向配置
nginx ssl單向和雙向配置

nginx ssl單向和雙向配置

nginx ssl單向和雙向配置
雙向配置完成

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI