From c7acff90768dc8c132d4172b3c1910d4ca32bc28 Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Thu, 27 Sep 2018 12:31:53 -0600 Subject: [PATCH] make more clients --- openssl.sh | 70 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 40 insertions(+), 30 deletions(-) diff --git a/openssl.sh b/openssl.sh index 9d3ff29..81b21b6 100644 --- a/openssl.sh +++ b/openssl.sh @@ -6,51 +6,61 @@ set -u options="${1:-}" prefix="${2:-}" +doserver=0 +doclient=0 + case "$options" in - server ) ;; - client ) ;; - all ) ;; - * ) echo "USAGE: $0 [all|server|client] file_prefix"; exit 1 ;; + server ) doserver=1 ;; + client ) doclient=1 ; cacrt="${3}"; cakey="${4}" ;; + all ) doserver=1; doclient=1 ;; + * ) echo "USAGE: $0 [all|server|client] file_prefix [server.crt server.key]"; exit 1 ;; esac -cakey="$(mktemp)" -cacrt="$(mktemp)" +### CREATE SERVER STUFF ### +if ((doserver)); then + cakey="$(mktemp)" + cacrt="$(mktemp)" -echo 1 -openssl genrsa -out $cakey 4096 -echo 2 -echo ' + echo 1 + openssl genrsa -out $cakey 4096 + echo 2 + echo ' -localhost + localhost -' | openssl req -nodes -new -x509 -days 365 -key $cakey -out $cacrt + ' | openssl req -nodes -new -x509 -days 365 -key $cakey -out $cacrt +fi -clientkey="$(mktemp)" -clientcsr="$(mktemp)" -clientcrt="$(mktemp)" -echo 3 -openssl genrsa -out $clientkey 4096 -echo 4 -echo ' +if ((doclient)); then + clientkey="$(mktemp)" + clientcsr="$(mktemp)" + clientcrt="$(mktemp)" + echo 3 + openssl genrsa -out $clientkey 4096 + echo 4 + echo ' -localhost + localhost -' | openssl req -nodes -new -key $clientkey -out $clientcsr -# self-signed -echo 5 -openssl x509 -req -days 365 -in $clientcsr -CA $cacrt -CAkey $cakey -set_serial 01 -out $clientcrt - -mv $cakey ./${prefix}server.key -mv $cacrt ./${prefix}server.crt -mv $clientkey ./${prefix}client.key -mv $clientcsr ./${prefix}client.csr -mv $clientcrt ./${prefix}client.crt + ' | openssl req -nodes -new -key $clientkey -out $clientcsr + # self-signed + echo 5 + openssl x509 -req -days 365 -in $clientcsr -CA $cacrt -CAkey $cakey -set_serial 01 -out $clientcrt +fi +if ((doserver)); then + mv $cakey ./${prefix}server.key + mv $cacrt ./${prefix}server.crt +fi +if ((doclient)); then + mv $clientkey ./${prefix}client.key + mv $clientcrt ./${prefix}client.crt +fi