溫馨提示×

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

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

Nginx怎么配置SSL證書部署HTTPS網(wǎng)站

發(fā)布時(shí)間:2022-04-27 14:11:50 來源:億速云 閱讀:304 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容主要講解“Nginx怎么配置SSL證書部署HTTPS網(wǎng)站”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Nginx怎么配置SSL證書部署HTTPS網(wǎng)站”吧!

自行頒發(fā)不受瀏覽器信任的ssl證書

手動(dòng)頒發(fā)

xshell登錄服務(wù)器,使用openssl生成rsa密鑰及證書

# 生成一個(gè)rsa密鑰 
$ openssl genrsa -des3 -out tfjybj.key 1024

# 拷貝一個(gè)不需要輸入密碼的密鑰文件
$ openssl rsa -in dmsdbj.key -out tfjybj_nopass.key

# 生成一個(gè)證書請(qǐng)求
$ openssl req -new -key tfjybj.key -out tfjybj.csr

 這里會(huì)提示輸入省份、城市、域名等信息,email得是域名后綴。這樣就生成一個(gè)csr文件,提交給ssl提供商的時(shí)候就是這個(gè)csr文件。

 (這里由于我沒有截圖,所以從網(wǎng)上找了一個(gè)圖片,需要替換的是下面的33iq,換成tfjybj)

中間輸入密碼的時(shí)候,沒有什么顯示,不過就那么輸入就好

Nginx怎么配置SSL證書部署HTTPS網(wǎng)站

# 自己簽發(fā)證書
$ openssl x509 -req -days 365 -in tfjybj.csr -signkey tfjybj.key -out tfjybj.crt

把生成的證書放到nginx配置文件同級(jí)目錄;

nginx配置

編輯nginx配置文件 nginx.conf,加https協(xié)議

server {
  server_name tfjybj.com;
  listen 443;
  ssl on;
  ssl_certificate /usr/local/nginx/conf/tfjybj.crt;
  ssl_certificate_key /usr/local/nginx/conf/tfjybj_nopass.key;
  # 若ssl_certificate_key使用tfjybj.key,則每次啟動(dòng)nginx服務(wù)器都要求輸入key的密碼。
  (開始我不知道,納悶為啥啟動(dòng)nginx、關(guān)閉nginx都要輸入密碼)
}

重啟nginx

自己頒發(fā)的ssl證書能夠?qū)崿F(xiàn)加密傳輸功能,但瀏覽器并不信任,會(huì)給出提示:

Nginx怎么配置SSL證書部署HTTPS網(wǎng)站

通過第三方頒發(fā)證書–阿里云

頒發(fā)證書

登錄阿里云管理控制臺(tái),【云盾】菜單選擇【證書服務(wù)】,選擇購(gòu)買證書;

我弄得免費(fèi)版的做的測(cè)試,申請(qǐng)之后,經(jīng)過一兩天的審核,然后就可以下載證書了。下載解壓后是兩個(gè)文件,一個(gè)key結(jié)尾,私鑰,一個(gè)是pem結(jié)尾,是公鑰;

配置nginx

文件說明:

證書文件”申請(qǐng)的證書名字.pem”,包含兩段內(nèi)容,請(qǐng)不要?jiǎng)h除任何一段內(nèi)容。

如果是證書系統(tǒng)創(chuàng)建的csr,還包含:證書私鑰文件”申請(qǐng)的證書名字.key”。

( 1 ) 在nginx的安裝目錄下創(chuàng)建cert目錄,并且將下載的全部文件拷貝到cert目錄中。如果申請(qǐng)證書時(shí)是自己創(chuàng)建的csr文件,請(qǐng)將對(duì)應(yīng)的私鑰文件放到cert目錄下并且命名為”申請(qǐng)的證書名字.key”;

( 2 ) 打開 nginx 安裝目錄下 conf 目錄中的 nginx.conf 文件,找到:

# https server
# #server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols sslv2 sslv3 tlsv1;
# ssl_ciphers all:!adh:!export56:rc4+rsa:+high:+medium:+low:+sslv2:+exp;
# ssl_prefer_server_ciphers on;
# location / {
#
#
#}
#}

( 3 ) 將其修改為 (以下屬性中ssl開頭的屬性與證書配置有直接關(guān)系,其它屬性請(qǐng)結(jié)合自己的實(shí)際情況復(fù)制或調(diào)整) :

server { 
listen 443; 
server_name localhost; 
ssl on; 
root html; 
index index.html index.htm; 
ssl_certificate cert/申請(qǐng)的證書名字.pem; 
ssl_certificate_key cert/申請(qǐng)的證書名字.key; 
ssl_session_timeout 5m; 
ssl_ciphers ecdhe-rsa-aes128-gcm-sha256:ecdhe:ecdh:aes:high:!null:!anull:!md5:!adh:!rc4; 
ssl_protocols tlsv1 tlsv1.1 tlsv1.2; 
ssl_prefer_server_ciphers on; 
location / { 
root html; 
index index.html index.htm; 
} 
}

保存退出。

( 4 )重啟 nginx。

( 5 ) 通過 https 方式訪問您的站點(diǎn)

到此,相信大家對(duì)“Nginx怎么配置SSL證書部署HTTPS網(wǎng)站”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

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

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

AI