使用OpenSsl自己CA根证书,二级根证书和颁发证书(亲测步骤)
---恢复内容开始---
一、介绍
企业自用, 到证书机构签发证书的费用和时间等都可以省下.....
SSl证书的背景功用.......(省略万字,不废话)
可以参考:
开源的可视化管理工具 :)
https://github.com/chris2511/xca
二、创建CA根
1.创建 Root CA
创建 root 文件夹, 在root文件夹上级建立配置文件 openssl.cnf
a.创建 root 密钥
命令:
openssl genrsa -des3 -out root/private.pem
然后要输入 密码, 用以保护 私钥.
b.创建自签名证书
命令:
openssl req -x509 -new -key root/private.pem -out root/root.crt -days -config ../openssl.cnf
输入上一步密钥的密码 , 然后填写要签名的各个项目 (直接回车使用默认信息, 输入`.`(英文句号)此项留空不填信息)
至此,自签名证书就生成好了.
c.创建要颁发证书时要用到的文件和文件夹 (这些 都在 openssl.cnf 里配置的)
index.txt OpenSSL在创建自签证书时会向该文件里写下索引
database.txt OpenSSL会模拟数据库将一些敏感信息写在该文件里
serial.txt 创建该文件后,请编辑在第一行写下 01
new_certs 文件夹,openssl 自动备份签发的证书的文件夹
三、创建中间CA证书
创建 ca 文件夹, 重复上面的操作.
这里仍然需要将创建root CA用的配置文件拷贝到中间CA证书目录下,该配置文件在生成CSR文件和以后签发client文件时都要用到
1.创建私钥
openssl genrsa -des3 -out ca/private.pem
输入保护密钥的密码
2.创建自签名证书
openssl req -new -x509 -key ca/private.pem -out ca/cert.crt -config openssl.cnf
密钥的密码 , 填写要签名的各个项目 (直接回车使用默认信息, 输入`.`(英文句号)此项留空不填信息
"A challenge password" 不用填,
"An optional company name" 可以填一下.
要注意的是, 这些字段要与root证书一样,不然不能通过:
stateOrProvinceName 州或省名
organizationName 组织单位名称
3.用 root 证书对证书请求文件签名
openssl ca -ss_cert ca/cert.crt -cert root/root.crt -keyfile root/private.pem -out ca/cacert.crt -config openssl.cnf
openssl x509 -req -in ca/cert.csr -CA root/root.crt -CAkey root/private.pem -out ca/cacert.crt -days 3650 -set_serial 03 -extfile v3.ext
openssl ca -in ca/cert.csr -cert root/root.crt -keyfile root/private.pem -out ca/cacert.crt -extensions v3_ca -notext -md sha256 -config openssl.cnf
最后把 root CA 的证书 和 中间CA证书 合并, (就是 简单的放到一个文件中就行了)
copy ca\cacert.crt + root\root.crt ca_chain.crt
https 握手, 服务器会先验证证书中的第一个, 无法验证信任就会验证其上一级(就是证书里面的第二个)第二个无法验证就继续验证第三个...直到root证书,如果root证书可信任, 这个证书链就是可信任的了
四、颁发证书
颁发证书之前, 被颁发的证书需要 生成自己的私钥和证书请求文件
1.生成域名的私钥
openssl genrsa -out mydomain.key
2.用此私钥生成证书请求文件
openssl req -new -key mydomain.pem -out mydomain.csr -days -config openssl.cnf
填写请求签名的信息
Common Name 可以填写域名('xxx.com' 或'*.xxx.com'等), 就是颁发域名证书了
3.也可以用一条命令同时生成私钥和证书请求文件
openssl req -new -keyout mydomain.pem -out mydomain.csr -config openssl.cnf
同样需要填写信息
3.查看证书请求内容
openssl req -in client.req -noout -text -subject
4.使用CA证书对证书请求文件签名,生成颁发的证书
openssl ca -in mydomain.csr -cert ca/cacert.pem -keyfile ca/cakey.pem -out mydomain.crt -config openssl.cnf
将私钥和证书转换成 .pfx 格式(iis等使用)
openssl pkcs12 -export -inkey server.key -in server.crt -out server.pfx
五、附配置
################################################################
# openssl example configuration file.
# This is mostly used for generation of certificate requests.
################################################################# [default] # The default ca section
name = root # 自定义变量(可以放在开头也可以放在中间), 使用方式: $name , ${name}
default_ca = CA_default
name_opt = CA_default
cert_opt = CA_default ################################################################# [ CA_default ]
dir=. # 自定义变量(可以放在开头也可以放在中间), 使用方式: $dir , ${dir}
# 这是第一个openssl目录结构中的目录
certs=$dir # Where the issued certs are kept(已颁发的证书路径,即CA或自签的)
# 这是第二个openssl目录结构中的目录,但非必须
crl_dir= $dir/crl # Where the issued crl are kept(已颁发的crl存放目录)
# 这是第三个openssl目录结构中的目录
database= $dir/index.txt # database index file
#unique_subject = no # 设置为yes则database文件中的subject列不能出现重复值
# 即不能为subject相同的证书或证书请求签名
# 建议设置为no,但为了保持老版本的兼容性默认是yes
new_certs_dir= $dir/new_certs # default place for new certs(将来颁发的证书存放路径)
# 这是第四个openssl目录结构中的目录
serial= $dir/serial.txt # The current serial number(提供序列号的文件,如:创建收输入`01`)
crl= $dir/crl.pem # The current CRL当前crl序列号)
private_key= $dir/CA/private.key # The private key(签名时需要的私钥,即CA自己的私钥)
certificate=$dir/CA/$name # The CA certificate(CA自己的证书文件)
RANDFILE= $dir/.rand # private random number file(提供随机数种子的文件)
x509_extensions = usr_cert # The extentions to add to the cert(添加到证书中的扩展项)
## 以下两行是关于证书展示格式的,虽非必须项,但推荐设置。一般就如下格式不用修改
name_opt = ca_default # Subject Name options
cert_opt = ca_default # Certificate field options
## 以下是copy_extensions扩展项,需谨慎使用
# copy_extensions = copy # 生成证书时扩展项的copy行为,可设置为none/copy/copyall
# 不设置该name时默认为none
# 建议简单使用时设置为none或不设置,且强烈建议不要设置为copyall
# crl_extensions = crl_ext
default_days= 3650 # how long to certify for(默认的证书有效期)
default_crl_days= 30 # how long before next CRL(CRL的有效期)
default_md= sha256 # which message digest to use(默认摘要算法)
preserve= no # keep passed DN ordering(Distinguished Name顺序,一般设置为no
# 设置为yes仅为了和老版本的IE兼容 # A few different ways of specifying how closely the request should
# conform to the details of the CA policy= policy_match # For the CA policy(证书匹配策略,此处表示引用[ policy_match ]的策略) [ policy_match ]
countryName= match # match 表示请求中填写的该字段信息要和CA证书中的匹配
stateOrProvinceName= optional
organizationName= optional
organizationalUnitName= optional # optional表示该字段信息可提供可不提供
commonName= supplied # supplied表示该字段信息必须提供
emailAddress= optional # For the `anything' policy
# At this point in time, you must list all acceptable `object'
# types
# 以下是没被引用的策略扩展,只要是没被引用的都是被忽略的
[ policy_anything ]
countryName = optional
stateOrProvinceName= optional
localityName= optional
organizationName = optional
organizationalUnitName = optional
commonName= supplied
emailAddress= optional # 以下是添加的扩展项usr_cert的内容*/
[ usr_cert ]
basicConstraints=critical,CA:TRUE,pathlen:2 # 基本约束,CA:FALSE表示颁发的证书不能作为CA证书,即不能给其他人颁发证书
keyUsage = critical,keyCertSign,cRLSign,digitalSignature,nonRepudiation,keyEncipherment,dataEncipherment # 指定证书的目的,也就是限制证书的用法用途
#subjectAltName=email:copy,email:my@other.address #这个参数很重要,现在被很多地方用来签署多域名证书,但它除了DNS,还可指定email, IP,DN等
## 除了上面两个扩展项可能会修改下,其余的扩展项别管了,如下面的
nsComment = "OpenSSL Generated Certificate"
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer ## req相关的段
[ req ]
default_bits = 2048 # 生成证书请求时用到的私钥的密钥长度
default_md = sha256 # 证书请求签名时的单向加密算法
default_keyfile= privkey.pem # 默认新创建的私钥存放位置,
# 如-new选项没指定-key时会自动创建私钥
# -newkey选项也会自动创建私钥
distinguished_name = req_distinguished_name # 可识别的字段名(常被简称为DN)
# 引用req_distinguished_name段的设置
x509_extensions = v3_ca # 加入到自签证书中的扩展项
#req_extensions = v3_req # 加入到证书请求中的扩展项
attributes = req_attributes # 证书请求的属性,引用req_attributes段的设置,可以不设置它
encrypt_key = no # 自动生成的私钥文件要加密否?一般设置no,和-nodes选项等价
## 输入和输出私钥文件的密码,如果该私钥文件有密码,不写该设置则会提示输入
#input_password = secret
#output_password = secret
#prompt = yes | no # 设置为no将不提示输入DN field,而是直接从配置文件中读取,需要同时设置DN默认值,否则创建证书请求时将出错
utf8 = yes
string_mask = utf8only [ req_distinguished_name ]
## 以下项均可指定可不指定,但ca段的policy中指定为match和supplied一定要指定
## 以下选项都可以自定义,如countryName = C,commonName = CN
countryName= 国名(C)(2个字母代码) # 国家名(C)
countryName_default = "CN" # 默认的国家名
countryName_min= 2 # 填写的国家名的最小字符长度
countryName_max = 2 # 填写的国家名的最大字符长度
stateOrProvinceName= 省/州名(S)(全名) # 省份(S)
stateOrProvinceName_default = "SH"
localityName = 城市/地点名称(LT) # 城市(LT)
localityName_default = "SH"
organizationName = 公司/组织名称(ON) # 公司(ON)
organizationName_default = "Foxcall"
organizationalUnitName = 部门/单位名称(OU) # 部门(OU)
organizationalUnitName_default = "Foxcall"
## 以下的commonName(CN)一般必须给,如果作为CA,那么需要在ca的policy中定义CN = supplied
## CN定义的是将要申请SSL证书的域名或子域名或主机名。
## 例如要为zhonghua.com申请ssl证书则填写zhonghua.com,而不能填写www.zhonghua.com
## 要为www.zhonghua.com申请SSL则填写www.zhonghua.com
## CN必须和将要访问的网站地址一样,否则访问时就会给出警告
## 该项要填写正确,否则该请求被签名后证书中的CN与实际环境中的CN不对应,将无法提供证书服务
commonName = 域名/主机名称(CN) # 主机名(CN)
commonName_max = 64
commonName_default = "Foxcall"
emailAddress = 电子邮件地址(E) # Email地址,很多时候不需要该项
emailAddress_max = 40
emailAddress_default = "foxcall@foxcallcrm.com" [ req_attributes ] # 该段是为了某些特定软件的运行需要而设定的
# 现在一般都不需要提供challengepassword
# 所以该段几乎用不上
# 所以不用管这段
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
unstructuredName = An optional company name
[ v3_req ]
## Extensions to add to a certificate request
basicConstraints = critical,CA:true
keyUsage = critical,keyCertSign,cRLSign # nonRepudiation, digitalSignature, keyEncipherment
subjectKeyIdentifier=hash
[ v3_ca ]
## Extensions for a typical CA
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
keyUsage = cRLSign, keyCertSign # 典型的CA证书的使用方法设置,由于测试使用所以注释了
# 如果真的需要申请为CA, 么该设置可以如此配置
好了, 做个记录
---恢复内容开始---
一、介绍
企业自用, 到证书机构签发证书的费用和时间等都可以省下.....
SSl证书的背景功用.......(省略万字,不废话)
可以参考:
二、创建CA根
1.创建 Root CA
创建 root 文件夹, 在root文件夹上级建立配置文件 openssl.cnf
a.创建 root 密钥
命令:
openssl genrsa -des3 -out root/private.pem
然后要输入 密码, 用以保护 私钥.
b.创建自签名证书
命令:
openssl req -x509 -new -key root/private.pem -out root/root.crt -days -config ../openssl.cnf
输入上一步密钥的密码 , 然后填写要签名的各个项目 (直接回车使用默认信息, 输入`.`(英文句号)此项留空不填信息)
至此,自签名证书就生成好了.
c.创建要颁发证书时要用到的文件和文件夹 (这些 都在 openssl.cnf 里配置的)
index.txt OpenSSL在创建自签证书时会向该文件里写下索引
database.txt OpenSSL会模拟数据库将一些敏感信息写在该文件里
serial.txt 创建该文件后,请编辑在第一行写下 01
new_certs 文件夹,openssl 自动备份签发的证书的文件夹
三、创建中间CA证书
创建 ca 文件夹, 重复上面的操作.
这里仍然需要将创建root CA用的配置文件拷贝到中间CA证书目录下,该配置文件在生成CSR文件和以后签发client文件时都要用到
1.创建私钥
openssl genrsa -des3 -out ca/private.pem
输入保护密钥的密码
2.创建自签名证书
openssl req -new -x509 -key ca/private.pem -out ca/cert.crt -config openssl.cnf
密钥的密码 , 填写要签名的各个项目 (直接回车使用默认信息, 输入`.`(英文句号)此项留空不填信息
"A challenge password" 不用填,
"An optional company name" 可以填一下.
要注意的是, 这些字段要与root证书一样,不然不能通过:
stateOrProvinceName 州或省名
organizationName 组织单位名称
3.用 root 证书对证书请求文件签名
openssl ca -ss_cert ca/cert.crt -cert root/root.crt -keyfile root/private.pem -out ca/cacert.crt -config openssl.cnf
openssl x509 -req -in ca/cert.csr -CA root/root.crt -CAkey root/private.pem -out ca/cacert.crt -days 3650 -set_serial 03 -extfile v3.ext
openssl ca -in ca/cert.csr -cert root/root.crt -keyfile root/private.pem -out ca/cacert.crt -extensions v3_ca -notext -md sha256 -config openssl.cnf
最后把 root CA 的证书 和 中间CA证书 合并, (就是 简单的放到一个文件中就行了)
copy ca\cacert.crt + root\root.crt ca_chain.crt
https 握手, 服务器会先验证证书中的第一个, 无法验证信任就会验证其上一级(就是证书里面的第二个)第二个无法验证就继续验证第三个...直到root证书,如果root证书可信任, 这个证书链就是可信任的了
四、颁发证书
颁发证书之前, 被颁发的证书需要 生成自己的私钥和证书请求文件
1.生成域名的私钥
openssl genrsa -out mydomain.key
2.用此私钥生成证书请求文件
openssl req -new -key mydomain.pem -out mydomain.csr -days -config openssl.cnf
填写请求签名的信息
Common Name 可以填写域名('xxx.com' 或'*.xxx.com'等), 就是颁发域名证书了
3.也可以用一条命令同时生成私钥和证书请求文件
openssl req -new -keyout mydomain.pem -out mydomain.csr -config openssl.cnf
同样需要填写信息
3.查看证书请求内容
openssl req -in client.req -noout -text -subject
4.使用CA证书对证书请求文件签名,生成颁发的证书
openssl ca -in mydomain.csr -cert ca/cacert.pem -keyfile ca/cakey.pem -out mydomain.crt -config openssl.cnf
将私钥和证书转换成 .pfx 格式(iis等使用)
openssl pkcs12 -export -inkey server.key -in server.crt -out server.pfx
五、附配置
################################################################
# openssl example configuration file.
# This is mostly used for generation of certificate requests.
################################################################# [default] # The default ca section
name = root # 自定义变量(可以放在开头也可以放在中间), 使用方式: $name , ${name}
default_ca = CA_default
name_opt = CA_default
cert_opt = CA_default ################################################################# [ CA_default ]
dir=. # 自定义变量(可以放在开头也可以放在中间), 使用方式: $dir , ${dir}
# 这是第一个openssl目录结构中的目录
certs=$dir # Where the issued certs are kept(已颁发的证书路径,即CA或自签的)
# 这是第二个openssl目录结构中的目录,但非必须
crl_dir= $dir/crl # Where the issued crl are kept(已颁发的crl存放目录)
# 这是第三个openssl目录结构中的目录
database= $dir/index.txt # database index file
#unique_subject = no # 设置为yes则database文件中的subject列不能出现重复值
# 即不能为subject相同的证书或证书请求签名
# 建议设置为no,但为了保持老版本的兼容性默认是yes
new_certs_dir= $dir/new_certs # default place for new certs(将来颁发的证书存放路径)
# 这是第四个openssl目录结构中的目录
serial= $dir/serial.txt # The current serial number(提供序列号的文件,如:创建收输入`01`)
crl= $dir/crl.pem # The current CRL当前crl序列号)
private_key= $dir/CA/private.key # The private key(签名时需要的私钥,即CA自己的私钥)
certificate=$dir/CA/$name # The CA certificate(CA自己的证书文件)
RANDFILE= $dir/.rand # private random number file(提供随机数种子的文件)
x509_extensions = usr_cert # The extentions to add to the cert(添加到证书中的扩展项)
## 以下两行是关于证书展示格式的,虽非必须项,但推荐设置。一般就如下格式不用修改
name_opt = ca_default # Subject Name options
cert_opt = ca_default # Certificate field options
## 以下是copy_extensions扩展项,需谨慎使用
# copy_extensions = copy # 生成证书时扩展项的copy行为,可设置为none/copy/copyall
# 不设置该name时默认为none
# 建议简单使用时设置为none或不设置,且强烈建议不要设置为copyall
# crl_extensions = crl_ext
default_days= 3650 # how long to certify for(默认的证书有效期)
default_crl_days= 30 # how long before next CRL(CRL的有效期)
default_md= sha256 # which message digest to use(默认摘要算法)
preserve= no # keep passed DN ordering(Distinguished Name顺序,一般设置为no
# 设置为yes仅为了和老版本的IE兼容 # A few different ways of specifying how closely the request should
# conform to the details of the CA policy= policy_match # For the CA policy(证书匹配策略,此处表示引用[ policy_match ]的策略) [ policy_match ]
countryName= match # match 表示请求中填写的该字段信息要和CA证书中的匹配
stateOrProvinceName= optional
organizationName= optional
organizationalUnitName= optional # optional表示该字段信息可提供可不提供
commonName= supplied # supplied表示该字段信息必须提供
emailAddress= optional # For the `anything' policy
# At this point in time, you must list all acceptable `object'
# types
# 以下是没被引用的策略扩展,只要是没被引用的都是被忽略的
[ policy_anything ]
countryName = optional
stateOrProvinceName= optional
localityName= optional
organizationName = optional
organizationalUnitName = optional
commonName= supplied
emailAddress= optional # 以下是添加的扩展项usr_cert的内容*/
[ usr_cert ]
basicConstraints=critical,CA:TRUE,pathlen:2 # 基本约束,CA:FALSE表示颁发的证书不能作为CA证书,即不能给其他人颁发证书
keyUsage = critical,keyCertSign,cRLSign,digitalSignature,nonRepudiation,keyEncipherment,dataEncipherment # 指定证书的目的,也就是限制证书的用法用途
#subjectAltName=email:copy,email:my@other.address #这个参数很重要,现在被很多地方用来签署多域名证书,但它除了DNS,还可指定email, IP,DN等
## 除了上面两个扩展项可能会修改下,其余的扩展项别管了,如下面的
nsComment = "OpenSSL Generated Certificate"
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer ## req相关的段
[ req ]
default_bits = 2048 # 生成证书请求时用到的私钥的密钥长度
default_md = sha256 # 证书请求签名时的单向加密算法
default_keyfile= privkey.pem # 默认新创建的私钥存放位置,
# 如-new选项没指定-key时会自动创建私钥
# -newkey选项也会自动创建私钥
distinguished_name = req_distinguished_name # 可识别的字段名(常被简称为DN)
# 引用req_distinguished_name段的设置
x509_extensions = v3_ca # 加入到自签证书中的扩展项
#req_extensions = v3_req # 加入到证书请求中的扩展项
attributes = req_attributes # 证书请求的属性,引用req_attributes段的设置,可以不设置它
encrypt_key = no # 自动生成的私钥文件要加密否?一般设置no,和-nodes选项等价
## 输入和输出私钥文件的密码,如果该私钥文件有密码,不写该设置则会提示输入
#input_password = secret
#output_password = secret
#prompt = yes | no # 设置为no将不提示输入DN field,而是直接从配置文件中读取,需要同时设置DN默认值,否则创建证书请求时将出错
utf8 = yes
string_mask = utf8only [ req_distinguished_name ]
## 以下项均可指定可不指定,但ca段的policy中指定为match和supplied一定要指定
## 以下选项都可以自定义,如countryName = C,commonName = CN
countryName= 国名(C)(2个字母代码) # 国家名(C)
countryName_default = "CN" # 默认的国家名
countryName_min= 2 # 填写的国家名的最小字符长度
countryName_max = 2 # 填写的国家名的最大字符长度
stateOrProvinceName= 省/州名(S)(全名) # 省份(S)
stateOrProvinceName_default = "SH"
localityName = 城市/地点名称(LT) # 城市(LT)
localityName_default = "SH"
organizationName = 公司/组织名称(ON) # 公司(ON)
organizationName_default = "Foxcall"
organizationalUnitName = 部门/单位名称(OU) # 部门(OU)
organizationalUnitName_default = "Foxcall"
## 以下的commonName(CN)一般必须给,如果作为CA,那么需要在ca的policy中定义CN = supplied
## CN定义的是将要申请SSL证书的域名或子域名或主机名。
## 例如要为zhonghua.com申请ssl证书则填写zhonghua.com,而不能填写www.zhonghua.com
## 要为www.zhonghua.com申请SSL则填写www.zhonghua.com
## CN必须和将要访问的网站地址一样,否则访问时就会给出警告
## 该项要填写正确,否则该请求被签名后证书中的CN与实际环境中的CN不对应,将无法提供证书服务
commonName = 域名/主机名称(CN) # 主机名(CN)
commonName_max = 64
commonName_default = "Foxcall"
emailAddress = 电子邮件地址(E) # Email地址,很多时候不需要该项
emailAddress_max = 40
emailAddress_default = "foxcall@foxcallcrm.com" [ req_attributes ] # 该段是为了某些特定软件的运行需要而设定的
# 现在一般都不需要提供challengepassword
# 所以该段几乎用不上
# 所以不用管这段
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
unstructuredName = An optional company name
[ v3_req ]
## Extensions to add to a certificate request
basicConstraints = critical,CA:true
keyUsage = critical,keyCertSign,cRLSign # nonRepudiation, digitalSignature, keyEncipherment
subjectKeyIdentifier=hash
[ v3_ca ]
## Extensions for a typical CA
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
keyUsage = cRLSign, keyCertSign # 典型的CA证书的使用方法设置,由于测试使用所以注释了
# 如果真的需要申请为CA, 么该设置可以如此配置
好了, 做个记录
使用OpenSsl自己CA根证书,二级根证书和颁发证书(亲测步骤)的更多相关文章
- 十二张图:从0开始理解对称/非对称加密、CA认证、以及K8S各组件颁发证书原由
目录 一.对称加密 二.对称加密-不安全 三.非对称加密 四.非对称加密-不安全 五.对称加密和非对称加密结合 六.对称加密和非对称加密结合-不安全 七.Https的做法-引入CA机构 八.乘胜追击理 ...
- Nginx配置SSL证书部署HTTPS网站(颁发证书)
一.Http与Https的区别HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高 ...
- centos7.6使用openssl生成CA签署的证书个人实验笔记
准备:客户端centos6.10 服务端Centos7.6 实验:客户端生成证书请求,服务端颁发证书,最后吊销其中一个证书 1.先在服务端上的/etc/pki/CA/目录生成rsa的私钥: 2.在服 ...
- Netbackup8.0以上版本,服务端生成证书,客户端获取、更新证书方式(整理中)
创建重发令牌 如果非主控主机已在主服务器上注册但其基于主机ID的证书不再有效,则可以重新颁发基于主机ID的证书.例如,证书在过期,被撤销或丢失时无效. 重发令牌是一种可用于重新颁发证书的令牌.它是一种 ...
- nginx反向代理cas-server之2:生成证书,centOS下使用openssl生成CA证书(根证书、server证书、client证书)
前些天搭好了cas系统,这几天一致再搞nginx和cas的反向代理,一直不成功,但是走http还是测试通过的,最终确定是ssl认证证书这一块的问题,原本我在cas服务端里的tomcat已经配置了证书, ...
- 基于 OpenSSL 的 CA 建立及证书签发 【转】
建立 CA 建立 CA 目录结构 按照 OpenSSL 的默认配置建立 CA ,需要在文件系统中建立相应的目录结构.相关的配置内容一般位于 /usr/ssl/openssl.cnf 内,详情可参见 c ...
- 基于 OpenSSL 的 CA 建立及证书签发
http://rhythm-zju.blog.163.com/blog/static/310042008015115718637/ 建立 CA 建立 CA 目录结构 按照 OpenSSL 的默认配置建 ...
- 使用openssl模拟CA和CA证书的签发
使用openssl模拟CA和CA证书的签发 当使用ssl/tls进行加密通信时,必须要有数字证书.若通信只限制在局域网内,可以不向第三方机构申请签发证书,可以通过openssl模拟CA(Cer ...
- 使用openssl搭建CA并颁发服务器证书
本来整理了一份执行脚本,但是没有找到附件功能.只好直接贴当时自己看过的链接了. 文章标题:Openssl Certificate Authority 转载链接:https://jamielinux.c ...
随机推荐
- $x \rightarrow \infty$时多项式型函数的极限
\[ \lim_{x \rightarrow \infty} \frac{\sqrt{4x^6-5x^5}-2x^3}{\sqrt[3]{27x^6+8x}} \\ =\lim_{x \rightar ...
- ballerina 学习十五 控制流
ballerina 的控制流没有什么特殊,只是相比一般语言多了一个模式匹配的操作match ,实际上其他语言(erlang elixir rust 中的模式匹配是很强大的) 简单例子 if/else ...
- [深度学习]实现一个博弈型的AI,从五子棋开始
好久没有写过博客了,多久,大概8年???最近重新把写作这事儿捡起来……最近在折腾AI,写个AI相关的给团队的小伙伴们看吧. 搞了这么多年的机器学习,从分类到聚类,从朴素贝叶斯到SVM,从神经网络到深度 ...
- [LeetCode系列]BST有效性确定问题[前序遍历]
给定一个BST的根节点, 试判断此BST是否为符合规则的BST? 规则: 对于一个BST的节点, 它左侧的所有节点(包括子节点)必须小于它本身; 它右侧的所有节点(包括子节点)必须大于它本身; 它的左 ...
- oracle之 12.1.0.1.0 C 在 linux 7 上安装报错处理
环境说明:-- os[root@host-172-16-3-132 ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) - ...
- Oracle分组函数实例
分组函数也叫聚合函数.如果在查询只想要查分组函数,那么跟平时的查询语句并无不同: SQL ,,,,) ; SUM(T.PRIZENUM) AVG(T.PRIZENUM) --------------- ...
- SharePoint2013 Online中InfoPath 无法调用WebService
传说微软office365中国区服务器已经迁移到国内,试了下速度果然比之前快了很多,不过随后测试了个简单的功能,还是直接被打击了. 准备在online版本中做一个简单的报销流程测试测试,于是先用Inf ...
- POJ1273(最大流入门)
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 70333 Accepted: 2733 ...
- 数据结构与算法JavaScript描述——栈的使用
有一些问题特别适合用栈来解决.本节就介绍几个这样的例子. 1) 数制间的相互转换 可以利用栈将一个数字从一种数制转换成另一种数制.假设想将数字n 转换为以b 为基数的数字,实现转换的算法如下. 使 ...
- 福利向:几款给力的Unity脚本插件推荐
转自:http://www.gamelook.com.cn/2016/09/264877 Unity的Asset Store中除了拥有非常强大的Unity编辑器扩展工具之外,还有一些让开发过程事半功倍 ...