我是靠谱客的博主 健康项链,最近开发中收集的这篇文章主要介绍Linux编写shell脚本实现签发CA证书,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  • 实现自动创建证书文件夹
  • 自动创建客户端私钥
  • 自动创建客户端证书请求
  • 自动签发证书文件
  • 自动拷贝证书文件至用户文件夹
#
##################################################
#Author:		    timonium
#E-mail: 		    8528379[AT]sina.com
#Date: 			    2021-04-27
#FileName:		    creatCA.1.0.1.sh
#BlogURL: 			https://blog.csdn.net/timonium
#Description:		Auto Creat CA Server
#Copyright (C): 	2021 All rights reserved
################################################
#!/bin/bash
#
udir=/userca
cadir=/etc/pki/CA
uNu=`cat $cadir/serial`
uMu=sun$uNu
uH=$udir/$uMu
  
COLOR="echo -e \E[1;32m"
END="\E[0m"
u_V(){
  $COLOR "$uMu 证书创建成功" $END
}
cr_key(){
    (umask 066;openssl genrsa -out $uH/$uMu.key 2048)
}

cr_csr(){
    openssl req -new -key $uH/$uMu.key -out $uH/$uMu.csr 
<<SUN
CN
BJ
bj
Sun.co
$uMu
$uMu.Sun.co
$uMu@Sun.co


SUN
}

cr_crt(){
    openssl ca -in $uH/$uMu.csr -out $cadir/certs/$uMu.crt -days 1000 
<<SUN
y
y
SUN
}

echo_V(){
echo  "证书生成完成"
$COLOR"**************************************生成证书文件如下**************************************"$END
echo "证书存放目录: "$uH
echo "证书文件列表: "`ls $uH`
}

cp_V(){
     cp  $cadir/certs/$uMu.crt $uH/$uMu.crt 
}

[ ! -d $uH ] && mkdir -pv $uH &>/dev/null || echo "$uMu is in $uH"

if [ ! -a $uH/$uMu.key ];then
    ( cr_key && cr_crs && cr_crt ) && u_V
elif [! -a $uH/$uMu.csr ];then
    ( cr_crs && cr_crt ) && u_V
elif [! -a $cadir/certs/$uMu.crt ];then
    cr_crt  && u_V
else
    $COLOR echo "失败了" $END
fi

[ -a $cadir/certs/$uMu.crt ] &&  cp_V && echo_V

sleep 5

测试成功

最后

以上就是健康项链为你收集整理的Linux编写shell脚本实现签发CA证书的全部内容,希望文章能够帮你解决Linux编写shell脚本实现签发CA证书所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部