certbot-scrypts/from_tyler/sign.sh

49 lines
1.1 KiB
Bash

#!/bin/bash
if [ ! -d "$1" ]; then
mkdir "$1";
openssl genrsa -out "$1/$1".key 4096
openssl req -new -sha256 -key "$1/$1".key -out "$1/$1".csr
fi
rm -vf testfifo;
mkfifo testfifo;
nl=0;
nsign=0;
while read line; do
echo "$((nl+=1)): $line" >&2;
if grep -o 'openssl dgst -sha256 -sign user.key -out' &>/dev/null <<< "$line"; then
$line;
nsign=$((nsign+1));
if [ $nsign -gt 2 ]; then
echo
fi
fi
if grep -o 'sudo python -c "import BaseHTTPServer;' &>/dev/null <<< "$line"; then
#service apache2 stop >&2
python -c "$(cut -f2 -d'"' <<< "$line" | sed "s/'0.0.0.0', 80/'127.0.0.1', 8082/")" &
echo
sleep 5;
kill -9 $! &>/dev/null
sleep 2
#service apache2 start >&2
fi
done < testfifo| python letsencrypt-nosudo/sign_csr.py -e '<<YOUR EMAIL/LETSENCRYPT USER HERE>>' -p user.pub "$1/$1.csr" 2>testfifo >"$1/$1.crt"
rm -vf testfifo
sudo mkdir -p "/etc/apache2/ssl/$1/"
if [ -f "$1/$1.key" ]; then
sudo mv "$1/$1.key" "/etc/apache2/ssl/$1/$1.key" -v
sudo cp lets-encrypt-x3-cross-signed.pem "/etc/apache2/ssl/$1/" -v
fi
if [ -s "$1/$1.crt" ]; then
sudo mv "$1/$1.crt" "/etc/apache2/ssl/$1/$1.crt" -v
else
rm -v "$1/$1.crt";
fi