【NGINX入門】7.Nginx配置安全證書SSL實例

1静袖,環(huán)境說明

服務(wù)器系統(tǒng):centos7
服務(wù)器IP地址:云服務(wù)器的公網(wǎng)IP
域名:bjubi.com

簡單步驟流程:
擁有一臺服務(wù)器(省略)> 申請注冊域名(省略)> 申請免費ssl安全證書》Centos安裝Nginx > Nginx配置ssl > 網(wǎng)站https訪問成功

2膏斤,域名解析到服務(wù)器

在阿里云控制臺-產(chǎn)品與服務(wù)-云解析DNS-找到需要解析的域名點“解析”,進入解析頁面后選擇【添加解析】按鈕會彈出如下頁面:
主機記錄這里選擇@伐割,記錄值就是服務(wù)器ip地址,確認刃唤。

3隔心,申請ca證書

在阿里云控制臺-產(chǎn)品與服務(wù)-安全(云盾)-CA證書服務(wù)(數(shù)據(jù)安全),點擊購買證書尚胞。(阿里云SSL免費證書申請地址

選擇“免費版DV SSL”硬霍,點擊立即購買:

然后點去支付:

最后確認支付:

就會回到管理界面:

點擊“補全”,輸入要解析的域名笼裳,點下一步:

說明:因為我們這里申請的是開發(fā)版免費證書唯卖,所以一個證書僅支持一個域名認證,不支持通配符躬柬。

等待幾分鐘拜轨,證書狀態(tài)變?yōu)椤耙押灠l(fā)”后,證書就申請成功了允青。

4橄碾,下載證書

列表中找到已簽發(fā)的證書,下載:


進入下載頁面颠锉,找到ngin頁簽中nginx配置信息法牲,并“下載證書 for Nginx”:

記錄以下內(nèi)容,為了一會兒配置nginx用:

下載的文件有兩個:
1琼掠,214292799730473.pem
2拒垃,214292799730473.key

5,服務(wù)器安裝瓷蛙,配置nginx

這里安裝
注意:這里安裝Nginx的過程省略了恶复,如果需要詳細的安裝Nginx教程,可以參考:NGINX入門】1.Nginx基本介紹和安裝入門

登錄到服務(wù)器:

$ apt-get update // 更新軟件
$ apt-get install nginx // 安裝nginx

6速挑,配置ca證書

1谤牡,nginx的安裝目錄為:/etc/nginx/。進入目錄姥宝,增加cert/文件夾翅萤,把剛剛下載的兩個文件上傳到cert/文件夾中。

2,在/etc/nginx/sites-enabled/下套么,增加bjubi.com文件培己。內(nèi)容如下:

說明:下面的配置是對443端口和80端口進行監(jiān)聽,443端口要啟用ssl胚泌。監(jiān)聽443端口的server配置可以仿照上面ca認證頁面的nginx配置示例進行配置省咨。

root節(jié)點筆者創(chuàng)建了一個bjubi.com/的文件夾,專門存放來自這個域名的請求以示區(qū)分玷室。

bjubi.com/文件夾下增加一個index.html文件零蓉,里面僅僅寫了一行 welcome。

server {
    listen 443;
    server_name bjubi.com; // 你的域名
    ssl on;
    root /var/www/bjubi.com; // 前臺文件存放文件夾穷缤,可改成別的
    index index.html index.htm;// 上面配置的文件夾里面的index.html
    ssl_certificate  cert/214292799730473.pem;// 改成你的證書的名字
    ssl_certificate_key cert/214292799730473.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 / {
        index index.html index.htm;
    }
}

server {
    listen 80;
    server_name bjubi.com;// 你的域名
    rewrite ^(.*)$ https://bjubi.com:443/$1 permanent;// 把http的域名請求轉(zhuǎn)成https
}

配置完成后敌蜂,檢查一下nginx配置文件是否可用,有successful表示可用津肛。

$ nginx -t // 檢查nginx配置文件

配置正確后章喉,重新加載配置文件使配置生效:

nginx -s reload // 使配置生效

至此,nginx的https訪問就完成了身坐,并且通過rewrite方式把所有http請求也轉(zhuǎn)成了https請求秸脱,更加安全。

如需重啟nginx部蛇,用以下命令:

$ service nginx stop // 停止$ service nginx start // 啟動$ service nginx restart // 重啟

ngx_http_ssl_module模塊相關(guān)的配置說明:

ssl_certificate file;指明證書路徑
ssl_certificate_key file;證書對應(yīng)的私鑰文件摊唇;
ssl_ciphers ciphers;指明由nginx使用的加密算法,可以是OpenSSL庫中所支持的各種加密套件搪花;
ssl_protocols [SSLv2][SSLv3][TLSv1.1][TLSv1.2];指明使用的SSL協(xié)議版本遏片;默認為后三個嘹害;
ssl_session_cahce off|none|[builtin[:size]][shared:name:size];指明ssl會話緩存機制撮竿;
builtin:使用openssl內(nèi)置的ssl會話緩存。各worker私有笔呀;
shared:在各worker之間使用一個共享的緩存幢踏;
name:獨有名稱;
size:緩存空間大小
ssl_session_timeout time;ssl會話超時時長许师;即ssl session cache中的緩存有效時長房蝉;

7,訪問效果

輸入http:bjubi.com也會自動跳轉(zhuǎn)至https頁面微渠。

說明:如果是云服務(wù)器比如阿里云ECS搭幻,需要到阿里云ECS的管理后臺的安全組,修改端口過濾規(guī)則把80端口和443端口開放才能訪問到逞盆。

問題:缺少ssl_module模塊

CentOS下配置Nginx的https時報錯:缺少ngx_http_ssl_module

1.首先檀蹋,找到Nginx安裝包的位置。比如云芦,我的是:/usr/local/sr

c/nginx-1.15.1cd /usr/local/src/nginx-1.15.1

如果忘記安裝包放哪里了俯逾,可以find命令找一下贸桶。

如果還是找不到(比如刪除了)∽离龋可以查看當(dāng)前Nginx的版本號皇筛,重新下載一個。

【查看Nginx版本命令】

/usr/local/nginx/sbin/nginx -V  (/usr/local/nginx/是你Nginx服務(wù)器的實際位置)

2.生成新的Nginx配置坠七。執(zhí)行

/usr/local/nginx/sbin/nginx -V 

查看configure arguments:后邊有沒有值水醋,如果有,就復(fù)制下來灼捂。

然后執(zhí)行

./configure --原來有的模塊(如果有的話) --with-http_ssl_module
make

3.關(guān)閉現(xiàn)在運行的Nginx服務(wù)器离例。

/usr/local/nginx/sbin/nginx -s stop

由于我的配置文件報錯,缺少

nginx: emerg the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:121

所以無法關(guān)閉悉稠。于是宫蛆,我嘗試把新的正確的nginx.conf替換出問題的nginx.conf。

再次執(zhí)行關(guān)閉的猛,成功耀盗。

4.OK,執(zhí)行最后的步驟卦尊。把編譯好的nginx覆蓋掉原有的nginx叛拷。

cp ./objs/nginx /usr/local/nginx/sbin/

系統(tǒng)會提示是否覆蓋,輸入y岂却。

我運行時忿薇,系統(tǒng)提示Text file busy,執(zhí)行失敗躏哩。

沒關(guān)系署浩!

ps -A

找到所有Nginx的進程。

Kill 1234

再次執(zhí)行

cp ./objs/nginx /usr/local/nginx/sbin/

沒有報錯扫尺。把正確的nginx.conf文件夾上傳筋栋。

啟動nginx。

./nginx -c /usr/local/nginx/conf/nginx.conf

運行成功Uぁ弊攘!

8. 參考

(1)Nginx系列教程(8) nginx配置安全證書SSL
https://blog.csdn.net/wx_15323880413/article/details/106014438

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市姑曙,隨后出現(xiàn)的幾起案子襟交,更是在濱河造成了極大的恐慌,老刑警劉巖伤靠,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捣域,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機竟宋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門提完,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人丘侠,你說我怎么就攤上這事徒欣。” “怎么了蜗字?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵打肝,是天一觀的道長。 經(jīng)常有香客問我挪捕,道長粗梭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任级零,我火速辦了婚禮断医,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘奏纪。我一直安慰自己鉴嗤,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布序调。 她就那樣靜靜地躺著醉锅,像睡著了一般。 火紅的嫁衣襯著肌膚如雪发绢。 梳的紋絲不亂的頭發(fā)上硬耍,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天,我揣著相機與錄音边酒,去河邊找鬼经柴。 笑死,一個胖子當(dāng)著我的面吹牛甚纲,可吹牛的內(nèi)容都是我干的口锭。 我是一名探鬼主播朦前,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼介杆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了韭寸?” 一聲冷哼從身側(cè)響起春哨,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎恩伺,沒想到半個月后赴背,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年凰荚,在試婚紗的時候發(fā)現(xiàn)自己被綠了燃观。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡便瑟,死狀恐怖缆毁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情到涂,我是刑警寧澤脊框,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站践啄,受9級特大地震影響浇雹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜屿讽,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一昭灵、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧伐谈,春花似錦虎锚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至非春,卻和暖如春柱徙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背奇昙。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工护侮, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人储耐。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓羊初,卻偏偏與公主長得像,于是被迫代替她去往敵國和親什湘。 傳聞我的和親對象是個殘疾皇子长赞,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容