9ddfc06
#!/bin/sh
9ddfc06
9ddfc06
if test "$(id -u)" -eq 0; then
9ddfc06
  echo "Do not run as root!"
9ddfc06
  exit 2
9ddfc06
fi
9ddfc06
9ddfc06
DAYS="${1:-7}"
9ddfc06
9ddfc06
cd /var/lib/acme
9ddfc06
9ddfc06
if ! test -s private/account.key; then
9ddfc06
  touch private/account.key
9ddfc06
  chmod 0600 private/account.key
9ddfc06
  openssl genrsa 4096 >private/account.key
9ddfc06
fi
9ddfc06
880c508
rc="0"
9ddfc06
for csr in csr/*.csr; do
9ddfc06
  test -s "$csr" || continue
9ddfc06
  test -r "$csr" || continue
9ddfc06
  crt="${csr%%.csr}"
9ddfc06
  tmp="certs/${crt##csr/}.tmp"
9ddfc06
  crt="certs/${crt##csr/}.crt"
9ddfc06
  if test -s "$crt" && /usr/sbin/cert-check --days="$DAYS" "$crt"; then
9ddfc06
    continue
9ddfc06
  fi
880c508
  if test -w "$crt" || test ! -e "$crt"; then
880c508
    echo acme_tiny --account-key private/account.key --csr "$csr" \
ecd867a
	--acme-dir /var/www/challenges/ --out "$crt"
880c508
  else
880c508
    echo "Can't write to $crt" 
880c508
    rc="1"
880c508
    continue
880c508
  fi
9ddfc06
9ddfc06
  if /usr/sbin/acme_tiny --account-key private/account.key --csr "$csr" \
ecd867a
	--acme-dir /var/www/challenges/ > "$tmp"; then
880c508
	mv "$tmp" "$crt" || exit 1
9ddfc06
  else
9ddfc06
	test -e "$tmp" && test ! -s "$tmp" && rm "$tmp"
9ddfc06
  fi
9ddfc06
  # append intermediate certs
9ddfc06
  #cat *.pem >>"$crt"
9ddfc06
done
880c508
exit "$rc"