[root@y_zilong data]# cat certificate.sh
#!/bin/bash#证书存放目录
DIR=/data#每个证书信息
declare -A CERT_INFO
CERT_INFO=([subject0]="/O=heaven/CN=ca.god.com" \[keyfile0]="cakey.pem" \[crtfile0]="cacert.pem" \[key0]=2048 \[expire0]=3650 \[serial0]=0    \[subject1]="/C=CN/ST=hubei/L=wuhan/O=Central.Hospital/CN=master.liwenliang.org" \[keyfile1]="master.key" \[crtfile1]="master.crt" \[key1]=2048 \[expire1]=365[serial1]=1 \[csrfile1]="master.csr" \[subject2]="/C=CN/ST=hubei/L=wuhan/O=Central.Hospital/CN=slave.liwenliang.org" \[keyfile2]="slave.key" \[crtfile2]="slave.crt" \[key2]=2048 \[expire2]=365 \[serial2]=2 \[csrfile2]="slave.csr"   )COLOR="echo -e \\E[1;32m"
END="\\E[0m"#证书编号最大值
N=`echo ${!CERT_INFO[*]} |grep -o subject|wc -l`cd $DIR for((i=0;i<N;i++));doif [ $i -eq 0 ] ;thenopenssl req  -x509 -newkey rsa:${CERT_INFO[key${i}]} -subj ${CERT_INFO[subject${i}]} \-set_serial ${CERT_INFO[serial${i}]} -keyout ${CERT_INFO[keyfile${i}]} -nodes \-days ${CERT_INFO[expire${i}]}  -out ${CERT_INFO[crtfile${i}]} &>/dev/nullelse openssl req -newkey rsa:${CERT_INFO[key${i}]} -nodes -subj ${CERT_INFO[subject${i}]} \-keyout ${CERT_INFO[keyfile${i}]}   -out ${CERT_INFO[csrfile${i}]} &>/dev/nullopenssl x509 -req -in ${CERT_INFO[csrfile${i}]}  -CA ${CERT_INFO[crtfile0]} \-CAkey ${CERT_INFO[keyfile0]}  -set_serial ${CERT_INFO[serial${i}]}  \-days ${CERT_INFO[expire${i}]} -out ${CERT_INFO[crtfile${i}]} &>/dev/nullfi$COLOR"**************************************生成证书信息**************************************"$ENDopenssl x509 -in ${CERT_INFO[crtfile${i}]} -noout -subject -dates -serialecho
done
chmod 600 *.key
echo  "证书生成完成"
$COLOR"**************************************生成证书文件如下**************************************"$END
echo "证书存放目录: "$DIR
echo "证书文件列表: "`ls $DIR`
[root@y_zilong data]#
[root@y_zilong data]# ll
total 40
-rw-r--r--. 1 root root 1131 Apr 26 23:43 cacert.pem
-rw-r--r--. 1 root root 1704 Apr 26 23:43 cakey.pem
-rw-r--r--. 1 root root    0 Apr 26 23:25 hosts.txt
-rw-r--r--. 1 root root 1103 Apr 26 23:43 master.crt
-rw-r--r--. 1 root root 1005 Apr 26 23:43 master.csr
-rw-------. 1 root root 1704 Apr 26 23:43 master.key
-rw-r--r--. 1 root root 1103 Apr 26 23:43 slave.crt
-rw-r--r--. 1 root root 1005 Apr 26 23:43 slave.csr
-rw-------. 1 root root 1708 Apr 26 23:43 slave.key
[root@y_zilong data]#

实现私有CA和证书申请的脚本相关推荐

  1. 建立私有CA实现证书申请颁发

    CA和证书 PKI:Public Key Infrastructure 公共密钥加密体系 签证机构:CA(Certificate Authority) 注册机构:RA 证书吊销列表:CRL 证书存取库 ...

  2. CentOS8搭建实现私有CA和证书申请

    选项说明 -new:生成新证书签署请求 -x509:专用于CA生成自签证书 -key:生成请求时用到的私钥文件 -days n:证书的有效期限 -out /PATH/TO/SOMECERTFILE: ...

  3. 在CentOS8上实现私有CA和证书申请

    私有CA创建的参看配置文件 /etc/pki/tls/openssl.cnf [root@y_zilong ~]# cat /etc/pki/tls/openssl.cnf [ CA_default ...

  4. centos8上实现私有CA和证书申请颁发

    一.创建生成密钥文件 1.用下面这条命令查看这个路径下有没有文件 如果报错没有 ls /etc/pki/CA 2.就递归创建出以下文件 mkdir /etc/pki/CA/{certs,crl,new ...

  5. Openssl加密文件及创建私有CA及证书

    # cat /etc/redhat-release CentOS release 6.6 (Final) # uname -r 2.6.32-504.el6.x86_64 首先我们先演示加密文件的方式 ...

  6. 【自签名证书私有CA签名证书】

    一.自签名证书 创建私钥 openssl genrsa -out ssl.key 1024 创建证书签名请求(根据私钥生成证书签名请求 一般是生成请求以后发送给CA,然后CA会给你签名并发回证书) o ...

  7. 创建私有CA及证书颁布详解

    一.CA证书简介 CA 也拥有一个证书(内含公钥和私钥).网上的公众用户通过验证 CA 的签字从而信任 CA ,任何人都可以得到 CA 的证书(含公钥),用以验证它所签发的证书.如果用户想得到一份属于 ...

  8. CA Server证书申请与颁发 Apache2 HTTPS

      本文将介绍关于CA Server的相关内容.CA Server搭建与自签名证书创建,实体认证与证书颁发,服务器证书申请与导入.   另外,证书申请后,想要进行应用,还需要配置服务器的HTTPS. ...

  9. 网络通信中的加密解密及openssl和创建私有CA详解

    本文大纲: 1.为什么网络通信要进行数据加密? 2.数据加密方式有哪些?它们是如何进行加密的? 3.通信中是如何进行数据加密传输的? 4.https方式进行数据传输的具体流程 5.SSL 的实现工具O ...

  10. https证书互信解决方案—创建私有CA并申请证书

    前言 https相较于http而言有很大的安全性,当我们一个服务开启https并与之通信时,往往需要证书的认证,如果是浏览器访问服务,只要在浏览器内设置信任证书即可,而如果是程序内访问服务(如java ...

最新文章

  1. 数组,结构体初始化为0
  2. java element 属性_属性'value'在'HTMLElement'类型的值上不存在
  3. jquery的trigger和triggerHandler区别
  4. 10深入理解C指针之---指针运算和比较
  5. Ubuntu 16.04 安装网易云音乐
  6. 代码优化导致的奇葩问题
  7. pytorch 图像分割的交并比_「通知」《深度学习之图像识别》再版工作启动,欢迎指导和提建议...
  8. php utc时间_PHP转换UNIX时间戳 UTC时间(TZ格式) 标准时间的方法 UNIX UTC GMT时间、本地时间互转...
  9. 《Head.First设计模式读书笔记》之设计原则一、二和三
  10. 30岁女子跟程序员相亲,结果见面后秒拒:秃顶工资再多也不要
  11. 整理一个双向链表list.h
  12. windows下安装qt4.7,编译hello QT 成功。
  13. window 快捷键
  14. python迭代器、生成器和yield语句
  15. 游戏王ygocore项目解析
  16. Opencv项目实战:09 物体尺寸测量
  17. 硬件编码相关知识(H264,H265),IPB分别压缩率/H265/H264压缩率
  18. matlab 周期卷积,matlab连续时间信号卷积和离散时间信号卷积程序
  19. SpringMVC学习日记总结
  20. 微信投票微信刷票的技巧和意义

热门文章

  1. 浅谈股价预测模型:你是否掉进机器学习的陷阱
  2. java中sof是什么意思_SOF是什么意思
  3. 随心所遇 ASP.NET助您实现网站大变脸
  4. html阅读是什意思,HTML是什么意思?什么是HTML5?什么是H5? | 前端面试题
  5. 关于C语言两个小游戏的提示和源码(猜词游戏与控制移动游戏)
  6. as3.0 当fla里面有TLF文本的时候,加载声音会出现错误
  7. android的事件处理和传递机制实例
  8. mongoengine fields详解
  9. 回眸 2021,展望 2022
  10. cahrt框架 ios_iOS-Charts介绍