生成ssl證書:
1、首先要生成服務器端的私鑰,運行時會提示輸入密碼,此密碼用於加密key文件;
openssl genrsa -des3 -out server.key 1024
2、去除key文件口令的命令;
openssl rsa -in server.key -out server.key
3、生成根證書簽發申請文件(csr文件)
使用上一步生成的私鑰(pem文件),生成證書請求文件(csr文件)
openssl req -new -key server.key -out server.csr
4、生成nginx端私鑰
openssl rsa -in server.key -out server_nopwd.key
5、使用OpenSSL對該證書進行自簽發,生成有效期10年的CA證書
openssl x509 -req -days 3650 -in server.csr -signkey server_nopwd.key -out server.crt
6、將server.crt證書添加瀏覽器受信任
google瀏覽器為例:
1.進入google瀏覽器設置;
2、選擇顯示高級設置;
3、點擊HTTPS/SSL下的“管理證書...”
4、選擇“導入”
4、點擊“下一步”
5、點擊“瀏覽”,選擇剛剛生成的證書(server.crt),點擊“下一步”
6、點擊“瀏覽”,選擇“受信任的根證書頒發機構”,點擊“下一步”
7、點擊“完成”,完成證書導入。
Nginx配置:
server{
#比起默認的80 使用了443 默認 是ssl方式 多出default之后的ssl
listen 443 default ssl;
#default 可省略
#開啟 如果把ssl on;這行去掉,ssl寫在443端口后面。這樣http和https的鏈接都可以用
ssl on;
#證書(公鑰.發送到客戶端的)
ssl_certificate ssl/server.crt;
#私鑰,
ssl_certificate_key ssl/server.key;
#下面是綁定域名
server_name www.daj.com;
location / {
#禁止跳轉
proxy_redirect off;
#代理淘寶
proxy_pass https://IP:PORT/;
}
}
開啟Nginx的ssl模塊:
1、the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:37