https協議證書部署實戰
一:
HTTP就是我們平時瀏覽網頁時候使用的一種協議。HTTP協議傳輸的數據都是未加密的,也就是明文的,因此使用HTTP協議傳輸隱私信息非常不安全。為了保證這些隱私數據能加密傳輸,於是網景公司設計了SSL(Secure Sockets Layer)協議用於對HTTP協議傳輸的數據進行加密,從而就誕生了HTTPS。
二:
HTTPS在傳輸數據之前需要客戶端(瀏覽器)與服務端(網站)之間進行一次握手,在握手過程中將確立雙方加密傳輸數據的密碼信息。TLS/SSL協議不僅僅是一套加密傳輸的協議,更是一件經過藝術家精心設計的藝術品,TLS/SSL中使用了非對稱加密,對稱加密以及HASH算法。
三:
部署https協議
環境要求 yum安裝opensslopenssl-devel
創建秘鑰證書存放目錄
mkdir/usr/local/nginx/ssl
執行命令 openssl genrsa -des3 -out server.key 1024 #生成秘鑰
執行命令 openssl req -new -key server.key -outserver.csr #創建簽名請求的證書(CSR)
執行命令 openssl rsa -inserver.key -out server_nopassword.key #進行解密
執行命令 openssl x509 -req -days 365 -in server.csr-signkey server_nopassword.key -out server.crt # 進行標記證書使用上述私鑰和CSR
修改nginx配置文件,加載ssl證書
vim /usr/local/nginx/conf/nginx.conf #進去nginx配置文件(在http標題裏面加入可以選擇最後一行)
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate /usr/local/nginx/ssl/server.crt;
ssl_certificate_key /usr/local/nginx/ssl/server.nopasswd.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphersAESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
}
本文出自 “centos7” 博客,請務必保留此出處http://12832314.blog.51cto.com/12822314/1961898
https協議證書部署實戰