前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自制CA证书设置ssl证书

自制CA证书设置ssl证书

原创
作者头像
聂伟星
发布2020-08-14 17:40:07
5.2K0
发布2020-08-14 17:40:07
举报

1. 安装openssl工具

代码语言:javascript
复制
# yum install openssl
# yum install openssl-devel
# openssl version -a

2. 生成ca证书

2.1 生成 CA 私钥

代码语言:javascript
复制
# openssl genrsa -out ca.key 1024

2.2 生成请求文件

代码语言:javascript
复制
openssl req -new -key ca.key -out ca.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=devops/OU=devops/CN=nwx_qdlg@163.com" 

注意,这里的 Organization Name (eg, company) [Internet Widgits Pty Ltd]: 后面生成客户端和服务器端证书的时候也需要填写,O和OU不要写成一样的!!!

2.3 生成CA证书

代码语言:javascript
复制
openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt

3. 生成服务端证书并CA签发

3.1 生成服务端私钥

代码语言:javascript
复制
openssl genrsa -out server.key 1024

3.2 生成服务端公钥

代码语言:javascript
复制
openssl rsa -in server.key -pubout -out server.pem

3.3 生成服务端向CA申请签名的CSR

代码语言:javascript
复制
openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=serverdevops/OU=serverdevops/CN=nwx_qdlg@163.com"

3.4 生成服务端带有CA签名的证书

代码语言:javascript
复制
openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt

4. 生成客户端证书并CA签发

4.1 生成客户端私钥

代码语言:javascript
复制
openssl genrsa -out client.key 1024

4.2 生成客户端公钥

代码语言:javascript
复制
openssl rsa -in client.key -pubout -out client.pem

4.3 生成客户端向CA申请签名的CSR

代码语言:javascript
复制
openssl req -new -key client.key -out client.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=clientdevops/OU=clientdevops/CN=nwx_qdlg@163.com"

4.4 生成客户端带有CA签名的证书

代码语言:javascript
复制
openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in client.csr -out client.crt

5. 使用证书在nginx进行https的配置

将服务端或者客户端生成的私钥和CA签名证书拷贝到对应的服务部署机器上进行部署

例如:

配置nginx 我们拿到CA签发的这个证书后,需要将证书配置在nginx中。 首先,我们将server.crt和server.key拷贝到nginx的配置文件所在的目录 其次,在nginx的配置中添加如下配置:

代码语言:javascript
复制
server {
        listen       443 ssl;
        server_name  你的域名;
        charset utf-8;

        ssl on;
        ssl_certificate      server.crt;
        ssl_certificate_key  server.key;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 安装openssl工具
  • 2. 生成ca证书
    • 2.1 生成 CA 私钥
      • 2.2 生成请求文件
        • 2.3 生成CA证书
        • 3. 生成服务端证书并CA签发
          • 3.1 生成服务端私钥
            • 3.2 生成服务端公钥
              • 3.3 生成服务端向CA申请签名的CSR
                • 3.4 生成服务端带有CA签名的证书
                • 4. 生成客户端证书并CA签发
                  • 4.1 生成客户端私钥
                    • 4.2 生成客户端公钥
                      • 4.3 生成客户端向CA申请签名的CSR
                        • 4.4 生成客户端带有CA签名的证书
                        • 5. 使用证书在nginx进行https的配置
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
                        http://www.vxiaotou.com