Let's Encrypt
create_certs()
{
DOMAIN="$1"
openssl genrsa 4096 > "$DOMAIN.key"
openssl ecparam -genkey -name secp384r1 | openssl ec -out "$DOMAIN.key"
openssl req -new -sha256 -key "$DOMAIN.key" -subj "/" -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:$DOMAIN")) > "$DOMAIN.csr"
WWWROOT="/var/www/$DOMAIN"
ACMEDIR="$WWWROOT/.well-known/acme-challenge/"
mkdir -p $ACMEDIR
python acme_tiny.py --account-key ./account.key --csr "./$DOMAIN.csr" --acme-dir "$ACMEDIR" > "./$DOMAIN.crt"
cat "./$DOMAIN.crt" intermediate.pem > "$DOMAIN.pem"
}
create_certs "tux.im"
renewdomain()
{
DOMAIN="$1"
/usr/bin/python acme_tiny.py --account-key account.key --csr "$DOMAIN.csr" --acme-dir "/var/www/$DOMAIN/.well-known/acme-challenge" > "$DOMAIN.crt"
cat "$DOMAIN.crt" intermediate.pem > "$DOMAIN.pem"
}
renewdomain "tux.im"