网站私有CA证书制作
大体步骤:
创建私有CA:
openssl的配置文件:/etc/pki/tls/openssl.cnf
三种策略:匹配、支持和可选
匹配指要求申请填写的信息跟CA设置信息必须一致,支持指必
须填写这项申请信息,可选指可有可无

1、创建所需要的文件
touch /etc/pki/CA/index.txt 生成证书索引数据库文件
echo 01 > /etc/pki/CA/serial 指定第一个颁发证书的序列号 #此处数字必须为两位数
2、 CA自签证书
生成私钥
cd /etc/pki/CA/ #路径很重要,默认的按照配置文件里的来
(umask 066; openssl genrsa -out
/etc/pki/CA/private/cakey.pem 2048)
3 创建CA
openssl req -new -x509 /etc/pki/CA/private/cakey.pem -days 7300 /etc/pki/CA/cacert.pem #路径很重要,默认的按照配置文件里的来
查看证书命令 openssl x509 -in cakey.pem -noout -text #如果不在/etc/pki/CA/private目录则路径cakey.pem文件要换成局对路径。
客户端上申请证书步骤:
1 (umask 066; openssl genrsa -out /app/service.key -des 1024) #因为客户端生成私钥没有要求所以一般自由决定放的位置。
2 openssl req -new -key /app/service.key -out /app/service.csr #客户端申请证书
Country Name (2 letter code) [XX]:CN #默认必填,必须和根证书内容一致
State or Province Name (full name) []:HN #默认必填,必须和根证书内容一致
Locality Name (eg, city) [Default City]:ZHENGZHOU
Organization Name (eg, company) [Default Company Ltd]:chykj.com #默认必填,必须和根证书内容一致
Organizational Unit Name (eg, section) []:amoukj
Common Name (eg, your name or your server's hostname) []:chykj.com #默认必填,必须和根证书内容一致
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:amoukj #可选填
An optional company name []:chykj.com #可选填
(1,2,4,6项要求和根证书资料保持一致,其他选填即可)
3 上传客户端生成的请求证书到根证书服务器
openssl ca -in /etc/pki/CA/csr/service.csr -out /etc/pki/CA/certs/service.crt -days 365 #输出的格式一般是crt或cer
三 证书的状态查询及如何吊销
1 查看证书中的信息
openssl x509 -in /PATH/FROM/CERT_FILE -noout -text |issuer|subject|serial|dates
openssl ca -status SERIAL 查看指定编号的证书状态
2 在客户端获取要吊销的证书的serial
openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
3 指定第一个吊销证书的编号
注意:第一次更新证书吊销列表前,才需要执行
echo 01 > /etc/pki/CA/crlnumber
更新证书吊销列表
openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem
查看crl文件:
openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text
4 在CA上,根据客户提交的serial与subject信息,对比校验是否与index.txt文件中的信息一致,吊销证书
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem
备注:在etc/pki/CA目录里有个index.txt.attr文件 unique_subject = yes #即为证书内容的唯一性,是否允许相同内容的证书同时存在。
网站私有CA证书制作的更多相关文章
- 自签名证书和私有CA签名的证书的区别 创建自签名证书 创建私有CA 证书类型 证书扩展名【转】
自签名的证书无法被吊销,CA签名的证书可以被吊销 能不能吊销证书的区别在于,如果你的私钥被黑客获取,如果证书不能被吊销,则黑客可以伪装成你与用户进行通信 如果你的规划需要创建多个证书,那么使用私有 ...
- k8s记录-ca证书制作(二)
1)下载cfssl #!/bin/bash wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 wget https://pkg.cfssl.org/R ...
- CA证书制作
目录 手动制作CA证书 1.安装 CFSSL 2.初始化cfssl 3.创建用来生成 CA 文件的 JSON 配置文件 4.创建用来生成 CA 证书签名请求(CSR)的 JSON 配置文件 5.生成C ...
- Linux系统搭建私有CA证书服务器
一.CA简介 CA是什么?CA是Certificate Authority的简写,从字面意思翻译过来是凭证管理中心,认证授权.它有点类似我们生活中的身份证颁发机构,这里的CA就相当于生活中颁发身份证的 ...
- Kubernetes集群部署之二CA证书制作
创建TLS证书和秘钥 kubernetes 系统的各组件需要使用 TLS 证书对通信进行加密,本文档使用 CloudFlare 的 PKI 工具集 cfssl 来生成 Certificate Auth ...
- ca证书校验用户证书
openssl verify -CAfile ca.cer server.crt 现在很多网站和服务都使用了HTTPS进行链路加密.防止信息在传输中间节点被窃听和篡改.HTTPS的启用都需要一个CA证 ...
- http的CA证书安装(也就是https)
近几年随着安全意识的提高,https流行起来,很多小伙伴不太了解https是什么,其实http和https并没有区别,简单的来说,https就是将http通信进行了加密和解密的一个过程.加上谷歌浏览器 ...
- 【HTTPS】自签CA证书 && nginx配置https服务
首先,搭建https服务肯定需要一个https证书.这个证书可以看做是一个应用层面的证书.之所以这么说是因为https证书是基于CA证书生成的.对于正式的网站,CA证书需要到有资质的第三方证书颁发机构 ...
- 基于开源CA系统ejbca community 6.3.1.1构建私有CA管理数字证书
最后更新于2017年01月24日 一.为什么 为什么写这篇文章?ca是什么?数字证书是什么?ejbca又是什么? 让我们从http与https说起.http是超文本传输协议(HyperText Tra ...
随机推荐
- Redis如何实现高可用【主从复制+哨兵机制+keepalived】
实现redis高可用机制的一些方法: 保证redis高可用机制需要redis主从复制.redis持久化机制.哨兵机制.keepalived等的支持. 主从复制的作用:数据备份.读写分离.分布式集群.实 ...
- layui 中的$符号有可以和jquery冲突,var & = layui.$
在项目上使用到了滚动条插件,但是使用var & = layui.$,会影响到插件. 错误提示: Uncaught TypeError: $(...).perfectScrollbar is n ...
- 2018百度之星B轮 degree
degree Accepts: 1581 Submissions: 3494 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/1 ...
- TTTTTTTTTTTTTTTTTT POJ 1330
题意:给一个有根树,一个查询节点(u,v)的最近公共祖先: #include <iostream> #include <cstdio> #include <cstring ...
- tensorflow的变量作用域
一.由来 深度学习中需要使用大量的变量集,以往写代码我们只需要做全局限量就可以了,但在tensorflow中,这样做既不方便管理变量集,有不便于封装,因此tensorflow提供了一种变量管理方法:变 ...
- sh_03_第1个函数
sh_03_第1个函数 # 注意:定义好函数之后,之表示这个函数封装了一段代码而已 # 如果不主动调用函数,函数是不会主动执行的 def say_hello(): print("hello ...
- 我的Android案例签到日历
2015年的Android案例之旅 案例八:签到日历 知识点: GridView的使用SQLite的使用 涉及文件: res->layout->activity_main.xml 主布局文 ...
- Selenium 元素常用操作方法(键盘和鼠标事件)
一.简单操作 click():点击 send_keys():输入 clear():清空 submit():提交表单 size:返回元素的尺寸 text:获取元素的文本 get_attribute(): ...
- 测试相关shell命令总结2——结构控制语句,命令行参数
1,shell 中单引号和双引号的区别,单引号不进行解释.双引号进行解释 1,在shell中进行数学运算,放在$和[]中 $[1+2] 有些很奇怪,在.sh文件中放在(())中貌似也能够进行数学运算. ...
- JavaScript Map 和 Object 的区别
不同点 Key filed 在 Object 中, key 必须是简单数据类型(整数,字符串或者是 symbol),而在 Map 中则可以是 JavaScript 支持的所有数据类型,也就是说可以用一 ...