Skip to content

Instantly share code, notes, and snippets.

@jmibanez
Last active May 26, 2018 11:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jmibanez/0705136d7b8b01ec8c704698a817c318 to your computer and use it in GitHub Desktop.
Save jmibanez/0705136d7b8b01ec8c704698a817c318 to your computer and use it in GitHub Desktop.
Certbot Manual Auth Hook script for Rackspace Cloud DNS
#!/bin/bash
# Manual auth hook script glue for Rackspace DNS
# This depends on rackdns CLI, see
# - https://github.com/morganfainberg/rackspace-dns-cli
# - https://github.com/kwminnick/rackspace-dns-cli
# CERTBOT_DOMAIN
# CERTBOT_VALIDATION (DNS)
export OS_USERNAME= # Rackspace user
export OS_PASSWORD= # Rackspace API token
export OS_TENANT_NAME= # Rackspace account ID
export OS_AUTH_URL=https://identity.api.rackspacecloud.com/v2.0/
export NOVA_RAX_AUTH=1
DOMAIN=$(expr match "$CERTBOT_DOMAIN" '.*\.\(.*\..*\)')
if [ "x$DOMAIN" = "x" ]; then
DOMAIN="$CERTBOT_DOMAIN"
fi
CREATE_DOMAIN="_acme-challenge.$CERTBOT_DOMAIN"
rackdns --no-cache record-create --name "$CREATE_DOMAIN" --type TXT --data "$CERTBOT_VALIDATION" "$DOMAIN"
sleep 25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment