nginx配置ssl證書實現https訪問


轉載:https://www.cnblogs.com/tianhei/p/7726505.html 

一,環境說明

服務器系統:ubuntu16.04LTS

服務器IP地址:47.89.12.99

域名:bjubi.com

二,域名解析到服務器

在阿里雲控制台-產品與服務-雲解析DNS-找到需要解析的域名點“解析”,進入解析頁面后選擇【添加解析】按鈕會彈出如下頁面:

主機記錄這里選擇@,記錄值就是服務器ip地址,確認。

三,申請ca證書

在阿里雲控制台-產品與服務-安全(雲盾)-CA證書服務(數據安全),點擊購買證書,

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

然后點去支付:

最后確認支付:

就會回到管理界面:

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

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

等待幾分鍾,證書狀態變為“已簽發”后,證書就申請成功了。

四,下載證書

列表中找到已簽發的證書,下載:

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

 

記錄以下內容,為了一會兒配置nginx用:

下載的文件有兩個:

1,214292799730473.pem

2,214292799730473.key

五,服務器安裝,配置nginx

登錄到服務器:

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

六,配置ca證書

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

2,在/etc/nginx/sites-enabled/下,增加bjubi.com文件。內容如下:

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

root節點筆者創建了一個bjubi.com/的文件夾,專門存放來自這個域名的請求以示區分。

bjubi.com/文件夾下增加一個index.html文件,里面僅僅寫了一行<h1>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://$host$1 permanent;// 把http的域名請求轉成https
}

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

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

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

$ nginx -s reload // 使配置生效

至此,nginx的https訪問就完成了,並且通過rewrite方式把所有http請求也轉成了https請求,更加安全。

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

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

七,訪問效果

輸入http:bjubi.com也會自動跳轉至https頁面。

說明:如果是雲服務器比如阿里雲ECS,需要到阿里雲ECS的管理后台的安全組,修改端口過濾規則把80端口和443端口開放才能訪問到。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM