Compare commits
No commits in common. "94b623494e10dd3301f146cec242873cd413184c" and "de31591832e1e7a7ddc581e5331f79d959589eb4" have entirely different histories.
94b623494e
...
de31591832
2 changed files with 95 additions and 0 deletions
48
bash_scripts/ddns-acme-porkbun
Normal file
48
bash_scripts/ddns-acme-porkbun
Normal file
|
@ -0,0 +1,48 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
if [ ! -f "/etc/ddns-acme-porkbun.env" ]; then
|
||||
echo "Porkbun API key .env missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -a; source /etc/ddns-acme-porkbun.env; set +a
|
||||
|
||||
if [ -z "$EMAIL" ] || [ -z "$DOMAINS" ] || [ -z "$PORKBUN_SECRET_API_KEY" ] || [ -z "$PORKBUN_API_KEY" ]; then
|
||||
echo "Bad .env file"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ddns_update() {
|
||||
while true;
|
||||
do
|
||||
ddns-porkbun
|
||||
case "#?" in
|
||||
"1")
|
||||
echo "Fatal error"
|
||||
exit 1
|
||||
;;
|
||||
"2")
|
||||
echo "Retrying"
|
||||
;;
|
||||
"0")
|
||||
echo "DNS updated"
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
ddns_update
|
||||
if [ "#?" -eq "1" ]; then
|
||||
echo "DDNS script failed, check credentials/domain"
|
||||
fi
|
||||
|
||||
if [ "$1" = "renew" ]; then
|
||||
LEGO_ARG="renew"
|
||||
else
|
||||
LEGO_ARG="run"
|
||||
fi
|
||||
|
||||
|
||||
cd /etc/nginx
|
||||
lego --email "$EMAIL" --dns porkbun "${DOMAINS[@]/#/-d }" $LEGO_ARG
|
47
basic_configs/debian-hetzner-init
Normal file
47
basic_configs/debian-hetzner-init
Normal file
|
@ -0,0 +1,47 @@
|
|||
#cloud-config
|
||||
# vim: syntax=yaml
|
||||
packages:
|
||||
- ufw
|
||||
- nginx
|
||||
- lego
|
||||
- wireguard
|
||||
- python-requests
|
||||
|
||||
package_update: true
|
||||
package_upgrade: true
|
||||
|
||||
write-files:
|
||||
- encoding: b64
|
||||
content: ${WRAPPER_SCRIPT}
|
||||
owner: root:root
|
||||
path: /usr/local/bin/ddns-acme-porkbun
|
||||
permissions: '0744'
|
||||
- encoding: b64
|
||||
content: ${DDNS_SCRIPT}
|
||||
owner: root:root
|
||||
path: /usr/local/bin/ddns-porkbun
|
||||
permissions: '0744'
|
||||
- content: |
|
||||
[Unit]
|
||||
Description=Renew acme certs and DDNS update
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/local/bin/ddns-acme-porkbun renew
|
||||
owner: root:root
|
||||
path: /etc/systemd/system/ddns-acme-porkbun.service
|
||||
permissions: '0644'
|
||||
- content: |
|
||||
[Unit]
|
||||
Description=Renew certs and dns records periodically
|
||||
[Timer]
|
||||
OnCalendar=*-01,03,05,07,09,11-01 02:00:00
|
||||
RandomizedDelaySec=12h
|
||||
Persistent=true
|
||||
[Install]
|
||||
WantedBy=timers.target
|
||||
owner: root:root
|
||||
path: /usr/local/bin/ddns-acme-porkbun.timer
|
||||
permissions: '0644'
|
||||
|
||||
runcmd:
|
||||
- reboot
|
Loading…
Reference in a new issue