#!/bin/bash set -e DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" # $1= generate_rsa_key() { openssl genrsa -out $DIR/$1_key.pem 2048 } # $1= generate_cert_config() { sed -e "s/\${services_domain}/${SERVICES_DOMAIN}/" $DIR/$1_cert.cfg > $DIR/$1_cert.cfg.generated } # $1= $2= generate_x509_cert() { generate_cert_config $1 openssl req -new -key $DIR/$1_key.pem -out $DIR/$1_cert.csr -config $DIR/$1_cert.cfg.generated -batch -sha256 openssl x509 -req -days 3650 -in $DIR/$1_cert.csr -sha256 -CA $DIR/$2_cert.pem -CAkey \ $DIR/$2_key.pem -CAcreateserial -out $DIR/$1_cert.pem -extensions v3_req -extfile $DIR/$1_cert.cfg.generated } # $1= $2= generate_cert_chain() { cat $DIR/$1_cert.pem $DIR/$2_cert.pem > $DIR/$1_cert_chain.pem } # $1= $2= generate_cert_bundle() { cat $DIR/$1_cert.pem $DIR/$2_cert.pem > $DIR/$1_$2_bundle.pem } # Generate RSA certs for the Virtual Node passed in via $1 echo "Generating backend certificate." generate_rsa_key $1 ca generate_x509_cert $1 ca generate_cert_chain $1 ca rm $DIR/*.csr