生成CA证书

生成服务器CA证书

在配置HTTPS监听时,您可以使用自签名的CA证书,并且使用该CA证书为客户端证书签名。

  1. 执行以下命令,在/home目录下新建一个ca文件夹,并在ca文件夹下创建四个子文件夹。
sudo mkdir ca
cd ca
sudo mkdir newcerts private conf server
  • newcerts目录用于存放CA签署过的数字证书。
  • private目录用于存放CA的私钥。
  • conf目录用于存放一些简化参数用的配置文件。
  • server目录存放服务器证书文件。
  • conf目录下新建一个包含以下信息的openssl.conf文件。
 [ ca ]
 default_ca = foo
 [ foo ] 
 dir = /home/ca
 database = /home/ca/index.txt
 new_certs_dir = /home/ca/newcerts
 certificate = /home/ca/private/ca.crt
 serial = /home/ca/serial
 private_key = /home/ca/private/ca.key
 RANDFILE = /home/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
  • 执行以下命令,生成私钥Key文件。

    cd /home/ca
    sudo openssl genrsa -out private/ca.key

    执行结果如下图所示。image

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

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

    image

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

  • 执行以下命令,生成凭证crt文件。

sudo openssl x509 -req -days 365 -in private/ca.csr -signkey private/ca.key -out private/ca.crt
  • 执行以下命令,为CA的Key设置起始序列号,起始序列号可以是四个字符。本示例中设置为FACE。
sudo echo FACE > serial
  • 执行以下命令,创建CA键库。
sudo touch index.txt
  • 执行以下命令,为移除客户端证书创建一个证书撤销列表。
sudo openssl ca -gencrl -out /home/ca/private/ca.crl -crldays 7 -config "/home/ca/conf/openssl.conf"

输出为:

Using configuration from /home/ca/conf/openssl.conf

这里可能会出现如下报错:

Using configuration from /home/ca/conf/openssl.conf
Can't open /home/ca/index.txt.attr for reading, No such file or directory
140303115944384:error:02001002:system library:fopen:No such file or directory:../crypto/bio/bss_file.c:72:fopen('/home/ca/index.txt.attr','r')
140303115944384:error:2006D080:BIO routines:BIO_new_file:no such file:../crypto/bio/bss_file.c:79:

是openssl一个bug可以在ca目录下,再touch一个index.txt.attr

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/%e7%94%9f%e6%88%90ca%e8%af%81%e4%b9%a6/

(0)
AuroraAurora站点维系者
上一篇 2023年 4月 26日 下午5:03
下一篇 2023年 6月 7日 上午10:35

相关推荐

  • 内网环境搭建NTP服务器

    文章目录说在前面:ntp和ntpdate区别简介:ntp全名 network time protocol 。NTP服务器可以为其他主机提供时间校对服务。环境准备:两台服务器,一台作…

    2023年 4月 11日
  • 解决Docker镜像仓库不受信任的问题

    文章目录http:server gave HTTP response to HTTPS client常用解决方式非常用解决方式2场景的解决方式docker场景container场景…

    2021年 11月 17日
  • 通过PAC文件配置自动代理

    文章目录代理自动配置文件(PAC)文件语法参数描述预定义的函数与环境示例1 对关键域名进行代理示例2 对除本地主机以外的所有连接使用代理示例3 和例2一样,但是对防火墙外的本地服务…

    2023年 2月 26日
  • 树莓派安装ansible教程(二)

    ansible是一款方便大家对集群计算机进行管理的软件,此软件通过对master节点的设置,通过配置对slave节点的免密服务,完成部署后,即可在master操作一条指令,同时对多…

    2021年 9月 14日
  • 【Centos自动校准时间】centos时间校准

    Centos自动校准时间 1.重写clock文件 vim /etc/sysconfig/clock 2.clock文件添加一下内容 ZONE="Asia/Shanghai…

    技术分享 2023年 6月 29日
  • 4. FRP概念

    文章目录通过 SSH 访问内网机器通过自定义域名访问内网的 Web 服务转发 DNS 查询请求转发 Unix 域套接字对外提供简单的文件访问服务为本地 HTTP 服务启用 HTTP…

    2023年 3月 2日
  • 模型量化了解一下?

    编者按:随着深度学习的发展,神经网络被广泛应用于各种领域,模型性能的提高同时也引入了巨大的参数量和计算量。模型量化是一种将浮点计算转成低比特定点计算的技术,可以有效的降低模型计算强…

    2023年 4月 26日
  • Docker 存储目录的平滑迁移

    文章目录docker 目录的迁移迁移准备常用运维指令迁移停止docker服务创建新的目录或磁盘目录相关指令磁盘相关指令删除磁盘分区格式化硬盘建立挂载目录挂载硬盘卸载磁盘从旧目录迁移…

    2021年 11月 4日
  • linux主机与主机之间的免密登陆配置

    文章目录秘钥分发生成密钥对依次拷贝密钥对其他主机需要执行的指令对本机需要执行的指令尝试登陆本地主机,观察是否为免密登陆 秘钥分发 生成密钥对 ssh-keygen -t rsa 依…

    2023年 1月 29日
  • Linux 定时执行shell 脚本

    crontab 可以在指定的时间执行一个shell脚本以及执行一系列 Linux 命令。 文章目录定时执行shellcrontab命令详解常用命令基本格式示例错误捕获 定时执行sh…

    技术分享 2023年 12月 5日
Translate »