ssl會話的簡化過程
客戶端傳送可供選擇的加密方式,並向伺服器請求證書;
伺服器端傳送證書以及選定的加密方式給客戶端;
客戶端取得證書並進行證書驗正:
如果信任給其發證書的ca:
驗正證書**的合法性;用ca的公鑰解密證書上數字簽名;
驗正證書的內容的合法性:完整性驗正
檢查證書的有效期限;
檢查證書是否被吊銷;
證書中擁有者的名字,與訪問的目標主機要一致;
客戶端生成臨時會話金鑰(對稱金鑰),並使用伺服器端的公鑰加密此資料傳送給伺服器,完成金鑰交換;
服務用此金鑰加密使用者請求的資源,響應給客戶端;
回顧幾個術語:pki,ca,crl,x.509 (v1, v2, v3)
配置httpd支援https:
為伺服器申請數字證書;
測試:通過私建ca發證書
建立私有ca
[root@repo conf]# cat /etc/pki/tls/openssl.cnf | sed 『/^\[[[:space:]]ca_default/,/# comment out/p』 –n
[root@repo ca]# touch index.txt
[root@repo ca]# echo 01 > serial
[root@repo ca]# ls
certs crl index.txt newcerts private serial
[root@repo ca]# cat serial
[root@repo ca]# (umask 077;openssl genrsa -out /etc/pki/ca/private/cakey.pem 2048)
[root@repo ca]# openssl req -new -x509 -key /etc/pki/ca/private/cakey.pem -days 3560 -out /etc/pki/ca/cacert.pem
在伺服器建立證書簽署請求
ca簽證
配置httpd支援使用ssl,及使用的證書;
配置檔案:/etc/httpd/conf.d/ssl.conf
documentroot
servername
sslcertificatefile
sslcertificatekeyfile
測試基於https訪問相應的主機;
瀏覽器瀏覽:
# openssl s_client [-connect host:port] [-cert filename] [-capath directory] [-cafile filename]
[root@repo ca]# openssl s_client -connect 172.16.31.124:443 -cafile /etc/pki/ca/cacert.pem
https 配置自建ca
ssl會話的簡化過程 客戶端傳送可供選擇的加密方式,並向伺服器請求證書 伺服器端傳送證書以及選定的加密方式給客戶端 客戶端取得證書並進行證書驗正 如果信任給其發證書的ca 驗正證書 的合法性 用ca的公鑰解密證書上數字簽名 驗正證書的內容的合法性 完整性驗正 檢查證書的有效期限 檢查證書是否被吊銷 ...
Nginx自建CA配置https伺服器
一 openssl openssl1.0.1g以上 二 自建ca,用ca證書進行簽名,建立伺服器證書 1.使用ca.sh建立ca跟證書 首先,修改openssl的配置檔案 sudo vim usr local ssl openssl.cnf mac system library openssl 修改...
Linux系統下自建CA實現https訪問
1.安裝apache2 用於充當伺服器的角色 需要在配置檔案apache2.conf最後加入下面兩句 servername localhost directoryindex index.html index.htm index.php 其中 servername localhost是為了防止最後開啟...