linux生成自验证ssl证书的具体命令和步骤

Posted 你如水中月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux生成自验证ssl证书的具体命令和步骤相关的知识,希望对你有一定的参考价值。

1.首先要生成服务器端的私钥(key文件):
    openssl genrsa -des3 -out server.key 1024

2.去除key文件口令的命令:
    openssl rsa -in server.key -out server.key

3.生成服务端证书
    openssl req -new -key server.key -out server.csr -config /etc/ssl/openssl.cnf

4.对客户端也作同样的命令生成key及csr文件:
    openssl genrsa -des3 -out client.key 1024
    openssl req -new -key client.key -out client.csr -config /etc/ssl/openssl.cnf

5.CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢.
    openssl req -new -x509 -keyout ca.key -out ca.crt -config /etc/ssl/openssl.cnf

6.mkdir demoCA && cd demoCA && mkdir newcerts && touch index.txt && echo "01" > serial && cd ..

7.用自己生成的CA证书签名
    openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config /etc/ssl/openssl.cnf
    openssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key -config /etc/ssl/openssl.cnf

8.问题openssl TXT_DB error number 2
    failed to update database
    方法一:修改demoCA下 index.txt.attr
    unique_subject = yes 里面的yes改为no
    方法二:删除demoCA下的index.txt,并再touch下
    方法三:将 common name设置成不同的

9.openssl.cnf的路径一定要写对

10.现在我们所需的全部文件便生成了.
    另:
    client使用的文件有:ca.crt,client.crt,client.key
    server使用的文件有:ca.crt,server.crt,server.key

















以上是关于linux生成自验证ssl证书的具体命令和步骤的主要内容,如果未能解决你的问题,请参考以下文章

Linux下生成能用的SSL证书的步骤

自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书

如何创建一个自签名的SSL证书

如何创建一个自签名的SSL证书

自签名证书颁发及验证

iOS适配HTTPS,创建一个自签名的SSL证书(x509)具体步骤