linux下生成https的crt和key证书

今天在配置kibana权限设置时,kibana要求使用https连接。linux

因而总结了一下linux下openssl生成 签名的步骤:算法


x509证书通常会用到三类文,key,csr,crtwindows


Key 是私用密钥openssl格,一般是rsa算法。浏览器

Csr 是证书请求文件,用于申请证书。在制做csr文件的时,必须使用本身的私钥来签署申,还能够设定一个密钥。bash

crt是CA认证后的证书文,(windows下面的,实际上是crt),签署人用本身的key给你签署的凭证。 ide

 

1.key的生成 spa

openssl genrsa -des3 -out server.key 2048

这样是生成rsa私钥,des3算法,openssl格式,2048位强度。server.key是密钥文件名。为了生成这样的密钥,须要一个至少四位的密码。能够经过如下方法生成没有密码的key:server

openssl rsa -in server.key -out server.key

server.key就是没有密码的版本了。 ssl

 

2. 生成CA的crtopenssl

openssl req -new -x509 -key server.key -out ca.crt -days 3650

生成的ca.crt文件是用来签署下面的server.csr文件。 

 

3. csr的生成方法

openssl req -new -key server.key -out server.csr

须要依次输入国家,地区,组织,email。最重要的是有一个common name,能够写你的名字或者域名。若是为了https申请,这个必须和域名吻合,不然会引起浏览器警报。生成的csr文件交给CA签名后造成服务端本身的证书。 

 

4. crt生成方法

CSR文件必须有CA的签名才可造成证书,可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不本身作CA呢。

openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt

输入key的密钥后,完成证书生成。-CA选项指明用于被签名的csr证书,-CAkey选项指明用于签名的密钥,-CAserial指明序列号文件,而-CAcreateserial指明文件不存在时自动生成。

最后生成了私用密钥:server.key和本身认证的SSL证书:server.crt

证书合并:

cat server.key server.crt > server.pem
相关文章
相关标签/搜索