-
2020-12-24 02:19:58
独立根
CA
的安装与证书申请
独立根
CA
与企业
CA
不同,独立
CA
不需要使用
Active Directory
目录服务。独
立
CA
最初是为了用作
CA
层次结构中的受信任的脱机根
CA
,或者是为了在涉及
Extranet
和
Internet
时使用。此外,如果想对
CA
使用自定义的策略模块,您需要先安装
独立
CA
然后再用您自定义的策略模块替代独立策略模块。
向独立
CA
提交证书申请时,
证书申请者必须在证书申请中明确提供所有关于自己
的标识信息以及证书申请所需的证书类型。
(向企业
CA
提交证书申请时无需提供这些信
息,因为企业用户的信息已经在
Active Directory
中并且证书类型由证书模板说明)
。申请
所需的身份验证信息可从本地计算机的
“
安全帐户管理器
”
数据库中获取。
默认情况下,
发送到独立
CA
的所有证书申请都被设置为挂起,
一直到独立
CA
的
管理员验证申请者的身份并批准申请。
这完全是出于安全性的考虑,
因为证书申请者的凭证
还没有被独立
CA
验证。
安装步骤:
第一步:构建独立根
CA
服务器,我需要先安装
IIS
(证书服务安装过程中会在
IIS
的默认
网站中写入虚拟目录,如果没有
IIS
的话,无法通过
web
浏览器的方式申请证书)
,然后再
安装证书服务,配置过程如下:
更多相关内容 -
如何自建根证书?使用openssl库自建根证书带图详解
2020-08-25 13:47:57自建根证书根证书的普通用途自建根证书步骤1、创建一个目录,存放所有证书有关资料2、进入根证书目录,创建相关目录和档案2.1、进入根证书目录2.2、创建相关目录2.3、更改private目录存取权限2.4、创建index.txt文件...自建根证书
根证书的普通用途
根证明普通的情况用途为对标志和发行传递的证明,再标志和问题终端证明由传递的证明(服务器,客户端)。
自建根证书步骤
在自建根证书之前需要安装openssl
sudo apt-get install openssl
1、创建一个目录,存放所有证书有关资料
ca的路径可自选,并在ca路径下创建root文件夹,用来存放根证书
命令:
mkdir ca mkdir ca/root
创建ca文件夹,存放所有有关文件
创建root文件夹存放根证书
2、进入根证书目录,创建相关目录和档案
2.1、进入根证书目录
cd ca/root
2.2、创建相关目录
- private :存放根证书的私钥
- cert :存放根证书
- signed_certs :放置的根证明签了字和被发布的证明副本。
mkdir private cert signed_certs
2.3、更改private目录存取权限
chmod 700 private
2.4、创建index.txt文件
每次签署和发行证明OpenSSL的根证明可能自动地更新这个文件建立index.txt,这个文件能为纪录使用根证明签署和发布证明纪录。(具体没什么用,但必须要有)
touch index.txt
2.5、建立serial
建立serial,并在文件中填入0001,被签发的证书都会有序号和位置,记录这份证明在早先签署的和发布的单位签字并且发布的证明号码,这个文件能使用为记录签署和发布证明号码的根证明,每次签署和发行证明OpenSSL的根证明可能自动地更新这个文件。(具体没什么用,但必须要有)
echo 0001 > serial
3、填写OpenSSL
填写OpenSSL的配置文件,文件名是openssl_root_ca.cnf,并放置在root目录下
填充内容使用vim打开,然后复制进去即可
[ ca ] default_ca = CA_default [ CA_default ] # 放置相关的文件和目录. dir = /home/qingmu/works/ca/root certs = $dir/cert new_certs_dir = $dir/signed_certs database = $dir/index.txt serial = $dir/serial RANDFILE = $dir/private/.rand # 放置私钥和证书的路径. private_key = $dir/private/root_ca.key.pem certificate = $dir/cert/root_ca.cert.pem default_md = sha256 name_opt = ca_default cert_opt = ca_default default_days = 365 preserve = no policy = policy_defualt [ policy_defualt ] # 签发证书文件资料的检查 (和根证书必须一样). countryName = optional stateOrProvinceName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional [ req ] # req 工具需要的參数. default_bits = 2048 distinguished_name = req_distinguished_name string_mask = utf8only default_md = sha256 [ req_distinguished_name ] # 生成证书是要输入的一些说明信息 countryName = Country Name (2 letter code) stateOrProvinceName = State or Province Name localityName = Locality Name 0.organizationName = Organization Name organizationalUnitName = Organizational Unit Name commonName = Common Name emailAddress = Email Address [ root_ca ] # 签发根证书时使用 subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always,issuer basicConstraints = critical, CA:true keyUsage = critical, digitalSignature, cRLSign, keyCertSign [ intermediate_ca ] # 签发和发布时使用 subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always,issuer basicConstraints = critical, CA:true, pathlen:0 keyUsage = critical, digitalSignature, cRLSign, keyCertSign
4、生成私钥
在private目录下生成私钥, 文件名时 root_ca.key.pem
openssl genrsa -aes256 -out private/root_ca.key.pem 4096
提示输入信息:
会提示输入私钥使用的密码,例如:alice123 (密码不会显示) Enter pass phrase for private/root_ca.key.pem:alice123 再次输入密码: Verifying - Enter pass phrase for private/root_ca.key.pem:alice123
5.用私钥来签发证书
文件名是root_ca.cert.pem
openssl req -config openssl_root_ca.cnf -new -x509 -days 7300 -sha256 -extensions root_ca -key private/root_ca.key.pem -out cert/root_ca.cert.pem
会提示输入一些信息:
# 会提示输入根证书的私钥密码, 也就是 alice123 Enter pass phrase for private/root_ca.key.pem:alice123 # 接着需要输入根证书拥有者的信息. You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- # 所在国家的缩写, 2 个字母, 例如 Taiwan = TW, Unit State = US. Country Name (2 letter code) []:TW # 所在的州或省. State or Province Name []:Taiwan # 所在的城市. Locality Name []:Taipei # 所在的公司. Organization Name []:Alice Ltd # 所在的公司的单位. Organizational Unit Name []:Alice Ltd Certificate Authority # 证书名称 Common Name []:Alice Ltd Root CA # 邮箱. Email Address []:alice@local
把证书的权限改为只读权限chmod 444 cert/root_ca.cert.pem
6、检查生成的根证书是否正确
openssl x509 -noout -text -in cert/root_ca.cert.pem
7、信息正确,自建根证书完成
-
自建CA签证书签发https证书
2021-08-06 20:46:58自建CA,利自建CA签发https证书。(不用购买证书、使用https传输、解决信任问题,可以在内网中使用) openssl可以做到,但是命令太繁琐,可以使用工具进行操作。 将证书封装exe文件,双击自动静默安装根CA证书 2....1.简介
- 自建CA,利自建CA签发https证书。(不用购买证书、使用https传输、解决信任问题,可以在内网中使用)
- openssl可以做到,但是命令太繁琐,可以使用工具进行操作。 将证书封装exe文件,双击自动静默安装根CA证书
2.创建CA
以管理员的身份运行程序
CA创建完成3.创建web服务器证书
- 利用上一步的CA签发证书,以管理员的身份运行程序。
4.服务器配置
根据导出来的证书,在web服务器上进行配置。例在Nginx上配置*.crt、*.key文件,crt为证书的一种格式由于服务器返回给浏览器使用,key为私钥用于解密数据使用。
5.客户端配置
客户端需要安装CA后,在客户端的浏览器访问 https://example.com才不会有安全提示。
5.1手动安装
- 客户端安装CA根证书,以crt证书为例子:双击执行-》本地计算机-》将所有的证书放入下列存储-》受信任的根证书颁发机构-》下一步完成。
- 浏览器使用https打开 https://example.com 不会有安全提示。(证书生效有延迟,可以重启系统)
5.2自动安装
使用WinRAR封装成exe,双击自动安装。
- 创建install.bat脚本
rem 将证书导入到受信任的根证书颁发机构 rem 证书路径必须为绝对路径 certutil -f -addstore root "C:\Users\Admin\Desktop\ca\MyCA1.crt" > install.log
- 将InstallCert.bat 和MyCA.crt 放在同一个文件内,使WinRAR压缩为exe可执行程序。
- 高级-》自解压选项-》解压路径(双击时解压,自动解压到C:\Users\Admin\Desktop\ca路径下)
- 设置解压后执行的脚本
- 全程静默执行
- 解压时如果路径下有相同的文件,自动覆盖
- “确定”,到此可执行exe文件制作完成
-
自建 ca 及使用 ca 颁发证书
2020-12-22 14:13:27创建CA:一、安装openssl[root@localhost ~]# yum install -y openssl二、创建CA的相关文件及目录mkdir /opt/root_ca &&\cd root_ca&&\mkdir newcerts private crl &&\touch index.txt &...创建CA:
一、安装openssl
[root@localhost ~]# yum install -y openssl
二、创建CA的相关文件及目录
mkdir /opt/root_ca &&\
cd root_ca&&\mkdir newcerts private crl &&\touch index.txt &&\touch serial &&\echo 01 >serial &&\
说明:
#newcerts目录用于存放CA签署(颁发)过的数字证书(证书备份目录)。
#private目录用于存放CA的私钥。
#文件serial和index.txt分别用于存放下一个证书的序列号和证书信息数据库。
#文件serial填写第一个证书序列号(如10000001),之后每前一张证书,序列号自动加1。
三、修改openssl配置文件
vim /etc/pki/tls/openssl.cnf
[ CA_default ]dir = /opt/root_ca
[ policy_match ]
countryName=match
stateOrProvinceName=optional
organizationName=optional
organizationalUnitName=optional
commonName=supplied
emailAddress= optional
说明:
match 表示严格校验国家名称
optional 表示可选
这个“匹配”指的是在颁发证书的时候,检查请求中的信息是否和根证书中所对应的信息匹配;
加粗的部分为需要修改的配置,具体配置根据实际情况修改
四、生成CA私钥
[root@localhost root_ca] openssl genrsa -out private/ca.key
Generating RSA private key,2048 bit longmodulus
..................+++...............................+++e is65537 (0x10001)
五、使用私钥生成CA请求信息
[root@localhost root_ca]# openssl req -new -key private/ca.key -out ca.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter'.', the field will be left blank.-----Country Name (2letter code) [XX]:CN
State or Province Name (full name) []:BJ
Locality Name (eg, city) [Default City]:BJ
Organization Name (eg, company) [Default Company Ltd]:ESTREND
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:www.estrend.com
Email Address []:admin@estrend.com
Please enter the following'extra'attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
六、使用CA私钥和证书请求,生成CA根证书
[root@localhost root_ca]# openssl x509 -req -days 3650 -in ca.csr -signkey private/ca.key -out ca.crt
Signature ok
subject=/C=CN/ST=BJ/L=BJ/O=ESTREND/OU=IT/CN=www.estrend.com/emailAddress=admin@estrend.com
Getting Private key
颁发证书:
一、生成私钥
[root@localhost s1]# openssl genrsa -out server.key
Generating RSA private key,2048 bit longmodulus
..................+++...............................+++e is65537 (0x10001)
二、生成请求
[root@localhost server]# openssl req -new -key server.key -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter'.', the field will be left blank.-----Country Name (2letter code) [XX]:CN
State or Province Name (full name) []:BJ
Locality Name (eg, city) [Default City]:BJ
Organization Name (eg, company) [Default Company Ltd]:ESTREND
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:www.123.com
Email Address []:admin@123.com
Please enter the following'extra'attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
三、颁发证书
[root@localhost server]# openssl ca -in server.csr -cert /opt/root_ca/ca.crt -keyfile /opt/root_ca/private/ca.key -out server.crt -days 3650Using configuration from/etc/pki/tls/openssl.cnf
Check that the request matches the signature
Signature ok
Certificate Details:
Serial Number:1 (0x1)
Validity
Not Before: May9 07:50:01 2019GMT
Not After : May6 07:50:01 2029GMT
Subject:
countryName=CN
stateOrProvinceName=BJ
organizationName=ESTREND
organizationalUnitName=IT
commonName= www.123.com
emailAddress= admin@123.com
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
EA:DB:4B:E6:18:C6:23:15:33:86:EA:C2:7B:D5:60:85:FB:45:41:D4
X509v3 Authority Key Identifier:
DirName:/C=CN/ST=BJ/L=BJ/O=ESTREND/OU=IT/CN=www.estrend.com/emailAddress=admin@estrend.com
serial:B8:7C:0A:A8:8D:2E:AF:23Certificate is to be certifieduntil May 6 07:50:01 2029 GMT (3650days)
Sign the certificate? [y/n]:y1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with1new entries
Data Base Updated
-
openssl自建CA后颁发证书
2020-12-22 14:13:52一 自签证书实践在介绍颁发证书之前先做一个试验,用自签证书来通过chrome访问:1 通过openssl一键自签证书,生成证书和私钥:sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ./nginx4.key -out... -
【k8s部署】2. 创建CA根证书和秘钥
2021-01-17 00:23:43CA (Certificate Authority) 是自签名的根证书,用来签名后续创建的其它证书。CA 证书是集群所有节点共享的,只需要创建一次,后续用它签名其它所有证书。安装 cfssl 工具集使用 CloudFlare 的 ... -
debian自建CA证书
2021-05-12 19:53:54新建 /etc/ca mkdir /etc/ca 配置openssl.cnf vim /etc/ssl/openssl.cnf 新建初始文件 第一步:touch index.txt 第二步:echo 01 > serial 第三步:mkdir ./newcerts 生成根密钥 *注意:必须切换到/etc/ca... -
Windows下用OpenSSL生成CA根证书及签发server端证书
2021-08-14 10:11:09当然也可以用于公网部署,只要您能引导用户在浏览器端下载安装你自己生成的CA根证书即可。对某些特殊局部业务系统,完全可以自己生成CA证书,没有必要花冤枉钱来购买某些认证机构签发的证书。 根证书的概念请参见:... -
openssl自建CA服务器自签证书服务器
2021-07-27 17:42:34自建CA服务器自签证书服务器 一、配置证书服务器模板 #修改openssl.cnf文件 vi /etc/pki/tls/openssl.cnf #确保[ req ]下存在以下两行 [ req ] distinguished_name = req_distinguished_name req_extensions = v3_... -
自建CA 颁发证书
2017-11-07 17:50:36正规的做法是:到国际知名的证书颁发机构,如VeriSign申请一本服务器证书,比如支付宝的首页,点击小锁的图标,可以看到支付宝是通过VeriSign认证颁发的服务器证书: 我们用的操 -
基于openssl工具完成自建CA以及为server,client颁发证书
2021-06-03 16:39:40本文总结了openssl工具的常用命令,并基于openssl完成自建CA,并使用该自建CA给server和client颁发证书,进一步完成基于https协议的server和client的通信。 -
自建CA证书认证
2020-04-05 11:18:10自建CA证书认证 CA证书认证通常包含三部分,CA认证服务器、业务服务器、客户端,也可以简单分成两部分CA/业务服务器,和客户端 CA服务器 生成私钥(pem) openssl genrsa -out cakey.pem -des 2048 gen:生成 rsa:... -
如何创建私有 CA 并签发证书
2020-12-24 02:19:53因为公共 CA (比如排名前几的这几家:Comodo, Symantec, GlobalSign, DigiCert, StartCom)颁发证书要收费,而且价格很贵。当然现在也有了像 Letsencrypt 这样的免费 CA。我们的应用是企业内网,域名使用私有域名,... -
OpenSSL 自建CA及签发证书
2017-02-08 22:53:09ref: http://rhythm-zju.blog.163.com/blog/static/310042008015115718637/利用 OpenSSL ...创建默认CA下的目录及文件如下图(.old文件和.attr文件是签发证书后自动生成的文件)。 其中, newcerts目录用于存放CA -
自建CA及签发证书
2020-12-22 14:13:28一,环境准备1, 创建所需目录cd /etc/pki/mkdir CAcd CAmkdir certs crl newcerts private2,创建所需文件创建证书起始序列号echo 01 > serial创建CA 签发证书列表文件touch index.txt创建openssl配置文件vi ... -
openssl 自建CA,生成自签名证书,导入证书库
2020-07-21 11:35:381. 自建CA #生成CA私钥 cd /etc/pki/CA && touch index.txt && echo 01 > serial cd /etc/pki/CA && openssl genrsa -out private/cakey.pem 2048 && chmod 400 private/cakey.... -
自建CA并签名server证书实现https
2018-05-14 19:37:20因为目前环境在本地进行测试,所以我们采用自建CA并签名server证书的方式实现https。(如果使用AWS服务则是AWS作为CA,并根据我们提供的资料生成server证书) 数字签名相关知识课参阅:... -
Android——自建CA证书,实现https请求
2021-02-03 17:58:12拿自建CA证书创建 server端证书 创建 https 服务 Android客户端操作 创建项目并引入相关依赖 生成 Android端 keystore MainActivity.java &布局文件 activity_main.xml 修改 Android... -
OpenSSL自建CA和签发二级CA及颁发SSL证书
2019-01-02 22:57:25自己签发CA证书再签发服务器证书的场景非常简单。把根CA证书导入到浏览器后,就可以信任由这个根...本文就来演示,自签CA,由自签CA签发二级CA,最后由二级CA签发网站证书 ---------------------------------------... -
证书加密(二):自建CA,证书加密,双向SSL分析
2020-08-05 23:05:58双向SSL的流程如上,综合来看,上面用到了CA根证书,client.key(客户端私钥),client.cer(客户端证书,包含公钥),server.key(服务端私钥),server.cer(服务端证书,包含公钥)。 CA根证书从何而来? 如果是权威CA机构... -
创建私有CA证书签署自定义域名证书
2021-01-14 04:49:57一 创建 CA 证书#!/bin/bashmkdir CAcd CAopenssl genrsa -out ca.key 4096// openssl req -new -x509 -days 3650 -key ca.key -out ca.crtopenssl req -new -x509 -days 3650 -key ca.key -out ca.crt -subj "/C=... -
openssl自建ca并颁发证书
2020-12-20 15:30:54在同一台主机建立站点并访问,自建CA为该站颁发证书,使得在火狐浏览器访问该站时锁标识为绿色。 前提 已安装 apache 和 openssl ubuntu 自带 apache 和 openssl 可使用以下命令查看二者的版本,若需更新查看该链接... -
Debian10自签CA证书
2022-02-11 17:40:05基础知识 1.3思路 想构建CA必须要了解CA构建的情况,请先参照加密解密方面博客 简单思路如下; 构建私有CA: ...自签署证书;...-x509:专用于CA生成自签证书,如果不是自签证书则不需要此项 -key:... -
Debian技能大赛笔记(七)CA根证书的创建和配置
2022-03-30 16:59:22这个根目录建了哪叫什么都无所谓,只不过这个路径是要记下的 我就直接建到root下了 mkdir ca 然后在ca文件夹里面再建几个文件夹 进入ca文件夹 cd ca #进入ca文件夹 创建文件夹 mkdir 1 #存放已颁布的证书 mkdir 2... -
基本OpenSSL自建本地CA和签发用户证书
2019-10-28 16:19:09基本OpenSSL自建本地CA和签发用户证书 -
OpenSSL自建CA和颁发SSL证书
2019-01-01 21:59:23系统环境: ...一:自建CA 1:依次创建如下目录 mkdir -p /opt/ca/root mkdir /opt/ca/root/key 2:vim /opt/ca/root/openssl.cnf [ ca ] default_ca = CA_default [ CA_default ] dir ... -
iOS 自签名证书建立(ca)
2021-08-02 02:16:59请求ca key:openssl genrsa -out ca.key 1024建立ca 证书:openssl req -new -x509 -days 3650 -key ca.key -out ca.crt -subj "/C=CN/ST=Shanghai/L=Shanghai/O=ule/OU=ule.com Root CA"请求服务器私钥:openssl ... -
openssl 自建CA,并签发证书
2015-02-09 09:21:08注:为了更好管理自建CA,在下文中,为没有特殊说明的情况,CA根目录都是指的自建CA的根目录。 1. 创建CA根目录,并初始化一些文件: mkdir $HOME/myca cd $HOME/myca mkdir certs private conf echo "01" > ... -
腾讯云CentOS自建CA证书搭建https服务器
2019-12-09 16:26:13为了完成实验以及不同电脑虚拟机不同,索性买了一个腾讯云的服务器,学生价,...CA服务器生成自己的密钥对,并颁发给自己一个证书(根证书) 在浏览器中加入此根证书,即信任由该机构颁发的证书 网站服务器生成自己...