Skip to content

Instantly share code, notes, and snippets.

@felvis
felvis / aws_import.sh
Created April 16, 2021 11:31 — forked from radiofrequency/aws_import.sh
Import lets encrypt cert to aws certificate manager in renew hook
#place in /etc/letsencrypt/renewal-hooks/post
export AWS_ACCESS_KEY_ID=XXX
export AWS_SECRET_ACCESS_KEY=XXX
#certs must be in us-east-1 to use with cloudfront
export AWS_DEFAULT_REGION=us-east-1
#run without --certificate-arn first time then specify arn for updates
aws acm import-certificate --certificate file:///etc/letsencrypt/live/site.com/cert.pem --private-key file:///etc/letsencrypt/live/site.com/privkey.pem --certificate-chain file:///etc/letsencrypt/live/site.com/chain.pem --certificate-arn specifyarnforupdate
@felvis
felvis / delete_expired_certs.sh
Created April 16, 2021 11:31 — forked from radiofrequency/delete_expired_certs.sh
delete expired lets encrypt certificates
unix_todate=$(date -d "${todate}" "+%s")
getDomainName() {
echo $1 | cut -d'/' -f 5
}
for pem in /etc/letsencrypt/live/*/cert.pem; do
if [ $(date --date="$(openssl x509 -enddate -noout -in "$pem"|cut -d= -f 2)" "+%s") -le $unix_todate ];
then
domain=$(getDomainName $pem)
printf 'deleting cert %s expired: %s\n' \
"$domain" \
@felvis
felvis / add-dns-record.sh
Created June 14, 2018 01:49 — forked from justinclayton/add-dns-record.sh
CLI to add DNS Records in Route53
#!/bin/bash -eo pipefail
## Allows for creation of "Basic" DNS records in a Route53 hosted zone
function main() {
record_name=$1
record_value=$2
[[ -z $record_name ]] && echo "record_name is: $record_name" && exit 1
[[ -z $record_value ]] && echo "record_value is: $record_value" && exit 1