From e2d5d957af0aea42fba290ed9e45086f0104be83 Mon Sep 17 00:00:00 2001 From: fengweihao Date: Wed, 21 Nov 2018 13:33:01 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E7=94=9F=E6=88=90=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E8=84=9A=E6=9C=AC=EF=BC=8C=E5=A2=9E=E5=8A=A0=E7=94=9F?= =?UTF-8?q?=E6=88=90=E8=AF=81=E4=B9=A6=E5=AE=9E=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/script/signssl.sh | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/src/script/signssl.sh b/src/script/signssl.sh index 2a0234d..afc0fbd 100644 --- a/src/script/signssl.sh +++ b/src/script/signssl.sh @@ -9,14 +9,25 @@ caname=$4 cakeyform=$5 cakey=$6 +san=$7 +san_nam=$8 + do_help() { - echo "./signssl -type cert_name -cafrom ca_name -cakeyfrom key_name" - echo "usage: ./signssl args" - echo " -type cert_name - input type (-caroot -middle, -entity)" - echo " -cafrom ca_name - input ca_name (root certificate)" - echo " -cakeyfrom key_name - input key_name (the root keys)" - exit + echo "./signssl -type cert_name -cafrom ca_name -cakeyfrom key_name -san san_nam" + echo "usage: ./signssl args" + echo " -type - input type (-caroot -middle, -entity)" + echo " cert_name - input cert_name (generate the certificate name)" + echo " -cafrom ca_name - input ca_name (root certificate)" + echo " -cakeyfrom key_name - input key_name (the root keys)" + echo " -san san_name - input san_name (When it is an entity certificate, input user alternate name)" + echo "example (root):" + echo "./signssl.sh -caroot root_name" + echo "example (middle)" + echo "./signssl.sh -middle middle_name -cafrom ../cert/mesalab-ca-cert.cer -cakeyfrom ../cert/mesalab-ca-cert.key" + echo "exaple (entity)" + echo "./signssl.sh -entity entity_name -cafrom ../cert/mesalab-ca-cert.cer -cakeyfrom ../cert/mesalab-ca-cert.key -san 163" + exit } do_mkdir() @@ -51,6 +62,16 @@ do_check() do_help exit fi + if [ "$type_name" == "-entity" ];then + if [ "$san" == "" ]||[ "$san_nam" == "" ];then + echo "Please enter the san name!" + do_help + exit + fi + + fi + + } do_middle() @@ -75,7 +96,7 @@ do_entity() openssl req -new -sha256 -key ${name}.key -reqexts SAN -config <(cat /etc/pki/tls/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:*.${name}.com,DNS:*.${name}.cn")) -out ${name}.csr - openssl ca -in ${name}.csr -md sha256 -keyfile ${cakey} -cert ${caname} -extensions SAN -config <(cat /etc/pki/tls/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:*.${name}.com,DNS:*.${name}.cn")) -out ${name}.cer + openssl ca -in ${name}.csr -md sha256 -keyfile ${cakey} -cert ${caname} -extensions SAN -config <(cat /etc/pki/tls/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:*.${san_nam}.com,DNS:*.${san_nam}.cn")) -out ${name}.cer openssl pkcs12 -export -in ${name}.cer -inkey ${name}.key -chain -CAfile ${caname} -out ${name}.p12