49 lines
1.1 KiB
Bash
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
|