开发者社区> 问答> 正文

不能自己用openssl生成证书么?

用openssl生成的ssl证书和付费的有什么区别?

展开
收起
干嘛呀 2020-05-19 09:40:39 4986 0
4 条回答
写回答
取消 提交回答
  • 最佳回答

    如果您需要使用一张证书绑定多个域名或者通配符域名,免费证书无法满足该要求。免费证书无SLA保证,建议商业化的网站签发收费证书。

    点击进入:阿里云SSL证书详细介绍,以及4大优势

    更多参考地址阿里云官方(新用户需官网注册查看)

    2020-08-31 09:03:44
    赞同 展开评论 打赏
  • 如果您需要使用一张证书绑定多个域名或者通配符域名,免费证书无法满足该要求。免费证书无SLA保证,建议商业化的网站签发收费证书。

    点击进入:阿里云SSL证书详细介绍,以及4大优势

    2020-07-02 20:09:25
    赞同 1 展开评论 打赏
  • openssl生成的SSL证书也叫自签名SSL证书,签发很随意无任何安全保障,任何人都可以签发,容易被黑客仿冒利用。不是由正规的CA机构颁发的,所以不受浏览器的信任。 而付费的SSL证书,是由受信任的CA机构颁发的,申请时会对域名所有权和企业相关信息进行验证,安全级别是比较高的,而且备受各大浏览器的信任。 与此对比建议选购付费证书。

    2020-05-19 22:27:17
    赞同 展开评论 打赏
  • 使用Open SSL生成CA证书
    执行如下命令,在/root目录下新建一个ca文件夹,并在ca文件夹下创建四个子文件夹。

     $ sudo mkdir ca
     $ cd ca
     $ sudo mkdir newcerts private conf server
    

    newcerts目录将用于存放CA签署过的数字证书。 private目录用于存放CA的私钥。 conf目录用于存放一些简化参数用的配置文件。 server目录存放服务器证书文件。

    2.在conf目录下新建一个包含如下信息的openssl.conf文件。

     [ ca ]
     default_ca = foo
     [ foo ] 
     dir = /root/ca
     database = /root/ca/index.txt
     new_certs_dir = /root/ca/newcerts
     certificate = /root/ca/private/ca.crt
     serial = /root/ca/serial
     private_key = /root/ca/private/ca.key
     RANDFILE = /root/ca/private/.rand
     default_days = 365
     default_crl_days= 30
     default_md = md5
     unique_subject = no
     policy = policy_any
     [ policy_any ]
     countryName = match
     stateOrProvinceName = match
     organizationName = match
     organizationalUnitName = match
     localityName = optional
     commonName      = supplied
     emailAddress    = optional
    

    3.执行如下命令,生成私钥key文件。

    $ cd /root/ca
     $ sudo openssl genrsa -out private/ca.key
    

    执行结果如下图所示。
    image.png

    4.执行如下命令,按照提示输入所需信息,然后按下回车键生成证书请求csr文件。

    $ sudo openssl req -new -key private/ca.key -out private/ca.csr
    

    说明 Common Name需要输入负载均衡的域名。

    image.png

    5.执行如下命令,生成凭证crt文件。

    $ sudo openssl x509 -req -days 365 -in private/ca.csr -signkey private/ca.key -out private/ca.crt
    

    6.执行如下命令,为CA的key设置起始序列号,可以是任意四个字符。

    $ sudo echo FACE > serial
    

    7.执行如下命令,创建CA键库。

    $ sudo touch index.txt
    

    8.执行如下命令,为移除客户端证书创建一个证书撤销列表。

    $ sudo openssl ca -gencrl -out /root/ca/private/ca.crl -crldays 7 -config "/root/ca/conf/openssl.conf"
    

    输出为:

    Using configuration from /root/ca/conf/openssl.conf
    
    2020-05-19 10:33:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载