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。