美文网首页
OpenSSL生成SSL证书

OpenSSL生成SSL证书

作者: 风吹我已散博客 | 来源:发表于2018-05-17 10:57 被阅读0次

    1.制作CA证书

    1. ca.key CA私钥
      步骤与使用OpenSSL自签发服务器https证书所述大同小异。

      openssl genrsa -des3 -out ca.key 2048    //制作ca.key 私钥
      //输入密码后生成
      
    2. 制作解密后的CA私钥(一般无此必要)

      openssl rsa -in ca.key -out ca_decrypted.key
      //输入ca.key私钥 
      
      //解密后的ca私钥和ca私钥:
      ca_decrypted.key  
      ca.key              
      
    3. ca.crt CA根证书(公钥)

      openssl req -new -x509 -days 7305 -key ca.key -out ca.crt
      //输入ca.key私钥后继续  
      
      //填写相关信息
      Country Name (2 letter code) [XX]:             //输入一个国家的名字,两字母代码  可为空
      State or Province Name (full name) []:         //州或省名称 ,全名   可为空
      Locality Name (eg, city) [Default City]:       //地区名称,如城市  可为空
      Organization Name (eg, company) [Default Company Ltd]:         //组织名称,默认有限公司 可为空
      Organizational Unit Name (eg, section) []:        //组织单元名称 ,可为空   
      Common Name (eg, your name or your server’s hostname) []:www.amber.com     //常见的名字(例如你的名字或你的服务器的主机名),输入该网址的域名,必填
      Email Address []:  //邮件地址,可为空
      
      Please enter the following ‘extra’ attributes
      to be sent with your certificate request
      A challenge password []:    //输入密码 可为空
      An optional company name []:ZX    //输入一个公司的名称
      
      //生成的ca公钥
      ca.crt  
      ca_decrypted.key  
      ca.key           
      

    2.制作生成网站的证书并用CA签名认证

    1. 生成www.amber.comt证书私钥

      openssl genrsa -des3 -out www.amber.com.pem 2048
      //输入www.amber.com.pem口令
      //再次输入www.amber.com.pem口令
      
    2. 制作解密后的www.amber.oom证书私钥

      openssl rsa -in www.amber.com.pem -out www.amber.com.key
      //输入www.amber.com.pem口令
      
      //解密后的wwwamber.com.key证书私钥
      ca.crt  
      ca_decrypted.key  
      ca.key  
      www.amber.com.key  
      www.amber.com.pem
      
    3. 生成签名请求

      openssl req -new -key www.amber.com.pem -out www.amber.com.csr
      //输入www.amber.com.pem口令后继续
      //填写相关信息,主机名必填
      //注:在common name中填入网站域名,如blog.creke.net即可生成改站点的证书,同时也可以使用泛域名如*.creke.net来生成所有二级域名可用的网站证书
      
    4. 用CA进行签名

      openssl ca -policy policy_anything -days 1460 -cert ca.crt -keyfile ca.key -in www.amber.com.csr -out www.amber.com.crt
      //输入ca私钥继续
      
    • 报错解决

      /etc/pki/CA/index.txt: No such file or directory
      unable to open '/etc/pki/CA/index.txt' //报错,不能打开这个目录..
      140576737036104:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('/etc/pki/CA/index.txt','r')

      执行签名命令时,出现“I am unable to access the ../../CA/newcerts directory”

      进入目录/etc/pki/CA/
      然后运行命令:
      touch CA/index.txt
      touch CA/serial
      echo "01" > CA/serial
      

      再重新执行签名命令。

    1. 把ca.crt的内容粘贴到www.amber.com.crt后面
      这个比较重要,因为不这样做可能会有某些浏览器不支持。
      cat ca.crt >> www.amber.com.crt
      
      现在证书已经生成完成,可以配置到服务器使用了。

    相关文章

      网友评论

          本文标题:OpenSSL生成SSL证书

          本文链接:https://www.haomeiwen.com/subject/yrfbdftx.html