HTTPS服務器配置
一、SSL證書申請
1、確認需要申請證書的域名
2、生成私鑰和csr文件
在linux機器上執(zhí)行以下命令生成私鑰
#openssl genrsa -out server.key 2048
在linux機器上執(zhí)行以下命令生成csr文件
#openssl req -new -key server.key -out certreq.csr
以下黑色標識文字僅供參考,請根據(jù)商戶自己實際情況進行填寫
Country Name: CN????????????????????? //您所在國家的ISO標準代號,中國為CN
State or Province Name:guandong?????? //您單位所在地省/自治區(qū)/直轄市
Locality Name:shenzhen???????????????? //您單位所在地的市/縣/區(qū)
Organization Name: Tencent Technology (Shenzhen) Company Limited???????????????? //您單位/機構(gòu)/企業(yè)合法的名稱?
Organizational Unit Name: R&D???????? //部門名稱?
Common Name: www.example.com???? //通用名,例如:www.itrus.com.cn。此項必須與您訪問提供SSL服務的服務器時所應用的域名完全匹配。
Email Address:????????????????????????? //您的郵件地址,不必輸入,直接回車跳過
"extra"attributes??????????????????????? //以下信息不必輸入,回車跳過直到命令執(zhí)行完畢。
執(zhí)行上面的命令后,在當前目錄下即可生成私鑰文件server.key和certreq.csr csr文件
3、將生成的csr文件提交給第三方證書頒發(fā)機構(gòu)申請對應域名的服務器證書,同時將私鑰文件保存好,以免丟失。
4、證書申請后,證書頒發(fā)機構(gòu)會提供服務器證書內(nèi)容和兩張中級CA證書,請按證書頒發(fā)機器說明生成服務器證書,此處假設服務器證書文件名稱為server.pem
5、將生成的私鑰文件server.key和服務器證書server.pem拷貝至服務器指定的目錄即可進行HTTPS服務器配置
二、HTTPS服務器配置
1、 Nginx配置
server {
listen?????? 443;?? #指定ssl監(jiān)聽端口
server_name? www.example.com;
ssl on;??? #開啟ssl支持
ssl_certificate????? /etc/nginx/server.pem;??? #指定服務器證書路徑
ssl_certificate_key? /etc/nginx/server.key;??? #指定私鑰證書路徑
ssl_session_timeout? 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;???? #指定SSL服務器端支持的協(xié)議版本
ssl_ciphers? ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;??? #指定加密算法
ssl_prefer_server_ciphers?? on;??? #在使用SSLv3和TLS協(xié)議時指定服務器的加密算法要優(yōu)先于客戶端的加密算法
#以下內(nèi)容請按域名需要進行配置,此處僅供參考
location / {
return 444;
}
}
2、其它web服務器配置
請參考文檔:《服務器證書配置指南》
三、相關事項
1、證書頒發(fā)機構(gòu)
推薦天威誠信,具體請見:http://www.itrus.com.cn
2、 參考文檔
3、常見問題
(1)證書受信任的問題
部分國內(nèi)簽發(fā)的SSL證書,在Android上不受信任,推薦GeoTrust;
(2)如果頁面有動靜分離,靜態(tài)資源使用獨立域名的話,也需要為該域名申請證書;
(3)android低版本不支持SNI擴展,受此限制,一臺服務器只能部署一個數(shù)字證書;