自签名证书颁发及验证-创新互联

1.使用openSSL生成证书
一个根SSL证书是由颁发的证书信任的证书颁发机构(CA) 。
生成一个RSA-2048密钥并保存到一个文件rootCA.key。该文件将被用作生成根SSL证书的密钥。
命令:openssl genrsa -des3 -out rootCA.key 2048
您可以使用您生成的密钥来创建新的根SSL证书。并将其保存为rootCA.pem。
命令:openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem
自签名证书颁发及验证
对应输入的密码为:12345678

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的兖州网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

2.使用根SSL生成域SSL证书
创建一个新的OpenSSL配置文件,server.csr.cnf以便在创建证书时可以导入这些设置。

[req]
default_bits = 2048
prompt = no
default_md = sha256
distinguished_name = dn

[dn]
C=CN
L=Beijing
O=Senseshield
CN = Virbox SS Dom CA

创建v3.ext文件,以创建一个x509 v3证书。指定subjectAltName选项。

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names

[alt_names]
DNS.1 = localhost
DNS.2 = test.sensese.com

创建server.key,使用存储在配置设置server.csr.cnf
openssl req -new -sha256 -nodes -out server.csr -newkey rsa:2048 -keyout server.key -config <(cat server.csr.cnf)

证书签名通过我们创建的根SSL证书颁发,创建一个localhost及testsensese.com的域名证书。输出一个名为server,crt的证书文件。
openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 3650 -sha256 -extfile v3.ext
3.验证颁发的域证书是否生效。
搭建nginx,配置nginx.conf。配置内容如下:

 server {
        listen 80 default;
        server_name test.sensese.com;#这个根据上文中创建v3.ext文件定义的DNS.2 = test.sensese.com来填写
        rewrite ^(.*)$  https://$host$1 permanent;
     }
    server {
    listen 443 ssl http2;#https默认使用443端口
    server_name test.sensese.com; 
    #ssl on;
    ssl_certificate /etc/nginx/key/server.crt; #这个即上文生成的域证书
    ssl_certificate_key /etc/nginx/key/server.key; #这个即上文生成的域证书秘钥。
    ssl_session_timeout 5m;
    ssl_protocols SSLv2 SSLv3 TLSv1;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;

        include /etc/nginx/default.d/*.conf;

        location / {
         root         /usr/share/nginx/html;
         index        index.html  index.htm;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

随后在window上的浏览器访问,在访问前需要在window系统的证书界面中导入上文生成的SSL根证书。
Ctr+R ==》cmd==》 certmgr.msc,弹出如下:`
自签名证书颁发及验证
按顺序执行:右击【受信任的根证书颁发机构】-【所有任务】-【导入】-【证书导入向导】,导入rootCA.pem即完成。
最后,在本地配置host,即添加192.168.100.103 test.sensese.com;
192.168.100.103为nginx地址(根据自己实际nginx配置)
用ie浏览器访问页面test.sensese.com正常打开,同时也跳转到https.
自签名证书颁发及验证

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文题目:自签名证书颁发及验证-创新互联
本文URL:http://azwzsj.com/article/cspgjj.html