a419359d600c6454cb672c855941823f17316635
[lets-encrypt-tiny.git] / gencsr.sh
1 #!/bin/bash
2 set -e
3 ## ./gencsr.sh KEY.key DOMAIN1 DOMAIN2: Generate (to stdout) a CSR for this key, for all the domains listed later
4
5 KEY="$1"
6 shift
7
8 test -f "$KEY" || (echo "Usage: $0 KEY.key DOMAIN1 DOMAIN2"; exit 1)
9
10 openssl req -new -sha256 -key "$1" -subj "/" -reqexts SAN \
11   -config <(cat /etc/ssl/openssl.cnf \
12   <(echo "[SAN]"; echo -n "subjectAltName="; unset COMMA; \
13     for domain in "$@"; do test -n "$COMMA" && echo -n ","; echo -n "DNS:$domain"; COMMA=1; done; echo) \
14   )