Linux环境下生成openssl证书注意细节介绍

 更新时间:2021年12月06日 09:15:55   作者:古道青阳  
大家好,本篇文章主要讲的是Linux环境下生成openssl证书注意细节介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览

一、环境:CentOS7,Openssl1.1.1k。

二、概念:

根证书:是生成服务器证书和客户端证书的基础,也可以叫自签发证书,即CA证书

服务器证书:由根证书签发,配置在服务器。

客户端证书:由根证书签发,配置在客户端。也可以配置在web服务器,安装在浏览器。

对称加密:用一个密码加密文件,然后解密也用同样的密码。

非对称加密:加密用的一个密码,而解密用另外一组密码。包括以下两种情况:

用于加密数据时:公钥加密,私钥解密

用于文件签名时:私钥签名,公钥验签

三、步骤:

1、查看openssl的配置文件openssl.cnf

vim /etc/pki/tls/openssl.cnf

2、创建为根证书CA所需的目录及文件

cd /etc/pki/CA

#创建配置文件信息中所需的目录及文件

mkdir -pv {certs,crl,newcerts,private}

touch {serial,index.txt}

3、指明证书的开始编号

echo 01 >> serial

4、生成根证书

# 生成CA私钥(ca.key)
openssl genrsa -des3 -out ca.key 2048 
# 生成CA证书签名请求(ca.csr)
openssl req -new -key ca.key -out ca.csr
# 生成自签名CA证书(ca.cert)
openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt

5、生成服务器证书

# 生成服务端私钥(server.key)
openssl genrsa -des3 -out server.key 2048 
# 生成服务端证书签名请求(server.csr)
openssl req -new -key server.key -out server.csr
# 使用ca证书签署服务端csr以生成服务端证书(server.cert)
openssl ca -days 3650 -in server.csr -out server.crt -cert ca.crt -keyfile ca.key

6、生成客户端证书

# 生成客户端私钥(client.key)
openssl genrsa -des3 -out client.key 2048
# 生成客户端证书签名请求(client.csr)
openssl req -new -key client.key -out client.csr
# 使用ca证书签署客户端csr以生成客户端证书(client.cert)
openssl ca -days 3650 -in client.csr -out client.crt -cert ca.crt -keyfile ca.key

7、查看证书内容

openssl x509 -in server.crt -noout -text

8、将crt转换为pem

openssl x509 -in ca.crt -out ca.pem -outform PEM

openssl x509 -in server.crt -out server.pem -outform PEM

openssl x509 -in client.crt -out client.pem -outform PEM

9、剥离私钥key的密码

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

openssl rsa -in client.key -out clientkey.pem

生成后的证书列表:      

        

到此这篇关于Linux环境下生成openssl证书注意细节介绍的文章就介绍到这了,更多相关Linux生成openssl证书内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS7.2安装MySql5.7并开启远程连接授权的教程

    CentOS7.2安装MySql5.7并开启远程连接授权的教程

    这篇文章主要介绍了CentOS7.2安装MySql5.7并开启远程连接授权的教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07
  • Deepin下安装神器Pyenv的步骤记录

    Deepin下安装神器Pyenv的步骤记录

    这篇文章主要给大家介绍了关于Deepin下安装神器Pyenv的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Deepin具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-08-08
  • Linux服务使用宝塔面板搭建网站并发布公网访问

    Linux服务使用宝塔面板搭建网站并发布公网访问

    宝塔面板作为简单好用的服务器运维管理面板,它支持Linux/Windows系统,本文我们将演示使用宝塔面板快速简单搭建本地web网站,并做内网穿透,实现不在同个局域网下的用户也可以访问到本地web站点,无需公网IP,也不用设置路由器,需要的朋友可以参考下
    2023-08-08
  • Linux 查看cpu 信息的命令及简单实例

    Linux 查看cpu 信息的命令及简单实例

    这篇文章主要介绍了Linux 查看cpu 信息的命令及简单实例的相关资料,需要的朋友可以参考下
    2016-10-10
  • Linux中chown与chmod两个命令的区别详解

    Linux中chown与chmod两个命令的区别详解

    今天小编就为大家分享一篇关于Linux中chown与chmod两个命令的区别详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Apache安装配置避坑指南

    Apache安装配置避坑指南

    这篇文章主要介绍了Apache安装配置避坑,很多小伙伴会遇到两个问题,一个是80端口被占用另一个是监听端口443端口被占用,本文给大家分享解决方法,需要的朋友可以参考下
    2022-09-09
  • centos7.6批量增加修改删除虚拟网卡操作介绍

    centos7.6批量增加修改删除虚拟网卡操作介绍

    大家好,本篇文章主要讲的是centos7.6批量增加修改删除虚拟网卡操作介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-12-12
  • Linux服务器被黑以后的详细处理步骤

    Linux服务器被黑以后的详细处理步骤

    作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显得至关重要,个人结合自己的工作经历,整理了几种常见的机器被黑情况供参考
    2018-01-01
  • 使用 Apache Dubbo 实现远程通信(微服务架构)

    使用 Apache Dubbo 实现远程通信(微服务架构)

    Apache Dubbo 是一个分布式服务框架,主要实现多个系统之间的高性能、透明化调用,本文给大家介绍使用 Apache Dubbo 实现远程通信的详细过程,感兴趣的朋友跟随小编一起看看吧
    2022-01-01
  • Linux 解决Deepin无法在root用户启动Google Chrome浏览器的问题

    Linux 解决Deepin无法在root用户启动Google Chrome浏览器的问题

    这篇文章主要介绍了Linux 解决Deepin无法在root用户启动Google Chrome浏览器的问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07

最新评论