自建CA生成证书详解

简介: 自建CA生成证书详解

今天继续给大家介绍Linux运维相关知识,本文主要内容是自建CA,并对客户CSR进行签名生成证书过程。
关于CA认证与https的原理可以参考以下文章:
CA认证与HTTPs原理介绍

一、CA认证中心配置
今天,我们使用192.168.136.210设备来作为我们的CA认证中心,提供证书签名服务。首先,我们需要安装openssl,安装命令如下:

yum install -y openssl
1
安装完成后,我们需要修改openssl的配置文件,打开文件/etc/pki/tls/openssl.cnf。将该文件172行处的basicContraints的CA:FALSE改为CA:TRUE。修改前文件如下所示:

之后,CA要生成自己的公私钥对,执行命令:

/etc/pki/tls/misc/CA -newca
1
执行结果如下:

该命令运行时需要和用户有所交互,在此过程中要注意:
①在第一处CA Certificate filename处直接回车,不用输入任何名称。
②其余项目可以根据自己实际情况进行配置。
配置完成后,我们可以查看自身证书,证书为/etc/pki/CA/cacert.pem,打开后如下所示:

CA的私钥存储在/etc/pki/CA/private/cakey.pem,如下所示:

二、web服务器生成证书请求文件
在CA配置完成后,接下来web服务器就可以向CA申请证书了,web服务器首先需要做的事生成自己的证书请求文件。
web客户端首先需要生成自己的公私钥对,在安装openssl后,执行命令:

openssl genrsa -des3 -out /etc/httpd/conf.d/https.key
1
执行结果如下:

然后,就可以使用web服务器的公钥生成证书请求文件了,执行命令:

openssl req -new -key /etc/httpd/conf.d/https.key -out /etc/httpd/conf.d/https.csr
1
就可以生成证书请求文件/etc/httpd/conf.d/https.csr。
之后,就需要把该文件发送给CA,可以使用scp命令,如下:

三、CA认证中心生成证书
CA在收到web服务端的证书请求文件后,需要对该证书申请者进行验证,在验证成功后,就可以用自己的私钥对该请求文件进行签名并生成证书。
根据证书请求文件生成证书的命令如下:

openssl ca -keyfile /etc/pki/CA/private/cakey.pem -cert /etc/pki/CA/cacert.pem -in /root/https.csr -out /root/https.crt
1
执行结果如下:

接下来,就可以把生成的证书发送给web服务器了。

四、WEB服务器配置实现https
web服务器在收到CA发送的证书文件后,需要做的是根据证书文件,配置自己的https功能。
首先,web服务器需要安装mod_ssl,该模块可以使得Apache支持https,安装命令如下:

yum install -y mod_ssl
1
安装后,在/etc/httpd/conf/目录下,会出现ssl.conf配置文件,接下来,我们需要修改该配置文件。打开该配置文件,大概在100行和107行处,有SSLCertifacateFile和SSLCertificateKeyFile两个参数,我们需要将其改为与自己的证书文件和密钥文件存储的位置,修改完成后的文件如下所示:

完成上述操作后,我们就可以启动Apache了,注意,由于配置了证书,而证书是受密码保护的,因此在启动时可能需要输入证书的密码,打开后结果如下所示:

可以看到,服务正常开启后,系统开始监听443端口。

五、结果验证
最后,我们队上述结果进行验证,在浏览器访问https://192.168.136.101,结果如下:

注意:尽管我们配置了CA中心,并且实现了https,但是由于我们的CA中心没有经过认证,所以浏览器选择拒绝相信该证书。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/121895791

目录
相关文章
|
网络协议 Linux Go
Centos7CA认证中心
CA是Certificate Authority的缩写,负责发放、更新、撤销和验证数字证书,用于身份认证和数据不可否认性,常通过443端口。配置CA涉及修改openssl.cnf,创建并设置认证中心,删除并新建index文件。客户端则需生成密钥和CSR,将CSR发送至CA,CA签名后回传证书。最终,客户端可查看收到的证书。
348 0
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
261126 0
|
8月前
|
安全 网络安全 Apache
如何为服务器生成一个TLS证书
通过以上步骤,您可以成功地为服务器生成并配置TLS证书,确保网站的安全性。本文涵盖了从生成私钥、创建CSR、使用自签名证书到获取正式证书的详细步骤,并且对每个步骤进行了详细的解释,使即使是非专业人士也能顺利完成TLS证书的配置。
916 79
|
8月前
|
存储 人工智能 固态存储
DeepSeek开源周第五弹之一!3FS:支撑V3/R1模型数据访问的高性能分布式文件系统
3FS是DeepSeek开源的高性能分布式文件系统,专为AI训练和推理任务设计,提供高达6.6 TiB/s的读取吞吐量,支持强一致性保障和通用文件接口,优化AI工作负载。
1243 2
DeepSeek开源周第五弹之一!3FS:支撑V3/R1模型数据访问的高性能分布式文件系统
|
12月前
|
Docker 容器
marco-o1 + ollama + Open-WebUI 实现 o1 的折叠推理效果
marco-o1 + ollama + Open-WebUI 实现 o1 的折叠推理效果
1265 2
|
安全 API 数据安全/隐私保护
基于Keycloak的认证与授权
【10月更文挑战第27天】Keycloak 是一个开源的身份和访问管理解决方案,提供用户认证、授权、单点登录等功能,保护应用程序和服务的安全。其认证流程包括用户登录、凭证验证、身份验证令牌生成、令牌返回给应用、应用验证令牌、用户身份确认。Keycloak 支持资源定义、权限定义、角色创建与分配、用户角色分配、访问请求与授权决策等授权流程。其优势在于集中式管理、高安全性、良好扩展性和社区支持。适用于企业应用集成、微服务架构、移动应用及 API 安全等多种场景。
640 3
|
存储 安全 算法
公钥基础设施(PKI)的核心概念详解
【8月更文挑战第31天】
2400 0
|
人工智能 Linux Docker
一文详解几种常见本地大模型个人知识库工具部署、微调及对比选型(1)
近年来,大模型在AI领域崭露头角,成为技术创新的重要驱动力。从AlphaGo的胜利到GPT系列的推出,大模型展现出了强大的语言生成、理解和多任务处理能力,预示着智能化转型的新阶段。然而,要将大模型的潜力转化为实际生产力,需要克服理论到实践的鸿沟,实现从实验室到现实世界的落地应用。阿里云去年在云栖大会上发布了一系列基于通义大模型的创新应用,标志着大模型技术开始走向大规模商业化和产业化。这些应用展示了大模型在交通、电力、金融、政务、教育等多个行业的广阔应用前景,并揭示了构建具有行业特色的“行业大模型”这一趋势,大模型知识库概念随之诞生。
156301 30
|
网络安全 数据安全/隐私保护
【网络安全 | Crypto】hidden key 江苏工匠杯
【网络安全 | Crypto】hidden key 江苏工匠杯
540 0
【网络安全 | Crypto】hidden key 江苏工匠杯
|
存储 算法 安全
详细解读CA认证原理以及实现(上)
详细解读CA认证原理以及实现(上)
557 0