Openssl一键生成Pem和Der证书
2022-06-17 22:23SSL证书
由于通过手打命令生成证书,比较容易出错,导致证书损坏或者不可用的情况,所以将生成证书的相关命令,整理成一个可执行的shell脚本,可快捷地生成正确的密钥对,把更多的时间投入到业务开发上。
下载或保存Shell脚本文件
将下面的代码,完整不漏地复制下来,用文本编辑器另存为文件名叫openssl-generate.sh的文件(文件名可以随意修改,但是执行脚本时,文件名称要写对)。
#!/bin/bash
PASS=
Init_Selection() {
clear
echo "+------------------------------------------------------------------------+"
echo "| _ _ _ _ _ _ _ _ |"
echo "| / / //_|/_//_//_//_//_'/ //_/ |"
echo "| _/ / _/ |"
echo "+------------------------------------------------------------------------+"
echo "| openssl证书生成脚本v1.0 |"
echo "+------------------------------------------------------------------------+"
echo "| https://www.maoyupeng.club |"
echo "+------------------------------------------------------------------------+"
Echo_Green "请输入证书密码"
read -p "Password:" PASS
action_build
}
action_build()
{
echo "创建AES256加密密钥..."
openssl genrsa -passout pass:${PASS} -out rsa_aes_private.pem 2048
echo "生成公钥..."
openssl rsa -in rsa_aes_private.pem -passin pass:${PASS} -pubout -out rsa_public.pem
echo "PEM私钥转DER..."
openssl rsa -in rsa_aes_private.pem -passin pass:${PASS} -out rsa_private_key.der -outform der
echo "PEM公钥转DER..."
openssl rsa -in rsa_public.pem -out rsa_public_key.der -pubin -outform der
echo "Finish!"
}
Echo_Green()
{
echo $(Color_Text "$1" "32")
}
Echo_Yellow()
{
echo $(Color_Text "$1" "33")
}
Init_Selection
赋予脚本文件权限
执行以下命令,赋予脚本文件755权限。
注意,建议脚本保存到一个新建的文件夹内,因为执行生成证书后,证书会输出到同目录,避免文件太多时,找不到证书。
sudo chmod -R 755 ./openssl-generate.sh
执行脚本生成证书
执行脚本后,会提示输入证书的密码(这里公钥密钥的密码都统一为您输入的密码)。
输入密码后,等待片刻,就会在执行脚本的同目录输出证书文件。
很赞哦! ()