SSL虛擬主機
條件:【 源碼安裝Nginx時必須使用--with-http_ssl_module參數,啓用加密模塊,對於需要進行SSL加密處理的站點添加ssl相關指令(設置網站需要的私鑰和證書)。 】
解析:
加密算法一般分爲對稱算法、非對稱算法、信息摘要。
對稱算法有:AES、DES,主要應用在單機數據加密。
非對稱算法有:RSA、DSA,主要應用在網絡數據加密。
信息摘要:MD5、sha256,主要應用在數據完整性校驗、數據秒傳等。
步驟:
1.生成私鑰和證書:
# cd /usr/local/nginx/conf 【進入存放配置文件目錄】
# openssl genrsa > cert.key 【生成私鑰到指定文件(原配置文件已指定文件名)】
# openssl req -new -x509 -key cert.key > cert.pem 【生成證書】
2.修改Nginx配置文件,設置加密網站的虛擬主機
vim /usr/local/nginx/conf/nginx.conf
… …
server { 【因配置文件內含配置,只需取消註釋,進行稍微修改即可】
listen 443 ssl;
server_name www.c.com; 【創建新的虛擬主機】
ssl_certificate cert.pem;
ssl_certificate_key cert.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
注:證書和私鑰文件名需與配置文件內指定的一致,否則無法使用
3.客戶端驗證
1)修改客戶端主機192.168.4.100的/etc/hosts文件,進行域名解析
# vim /etc/hosts
192.168.4.5 www.c.com www.a.com www.b.com
2)登錄192.168.4.100客戶端主機進行測試
# firefox https://www.c.com //信任證書後可以訪問
注:訪問是需在http後加s。