41 lines
1.8 KiB
Bash
Executable File
41 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# powerdns-tools
|
|
# https://git.stack-source.com/msb/powerdns-tools
|
|
# Copyright (c) 2022 Matthew Saunders Brown <matthewsaundersbrown@gmail.com>
|
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
if [[ ! -x /opt/certbot/bin/pip ]]; then
|
|
echo "NOTICE: This package requires certbot pip install in /opt/certbot"
|
|
echo "Package letsencrypt-tools will provide this and should be installed first."
|
|
echo "https://git.stack-source.com/msb/letsencrypt-tools"
|
|
exit 1
|
|
fi
|
|
|
|
# pyyaml==5.3.1 currently needed by certbot-dns-powerdns
|
|
/opt/certbot/bin/pip install certbot-dns-powerdns pyyaml==5.3.1
|
|
|
|
# Install dasel from binary. Used to convert json data to csv
|
|
wget --quiet --output-document=/usr/local/bin/dasel https://github.com/TomWright/dasel/releases/download/v2.7.0/dasel_linux_amd64
|
|
chmod 755 /usr/local/bin/dasel
|
|
# one liner to automatically get latest version. could also be used to update existing install
|
|
# curl -sSLf "$(curl -sSLf https://api.github.com/repos/tomwright/dasel/releases/latest | grep browser_download_url | grep linux_amd64 | grep -v .gz | cut -d\" -f 4)" -L -o /usr/local/bin/dasel && chmod +x /usr/local/bin/dasel
|
|
|
|
chmod 755 sbin/*
|
|
cp sbin/* /usr/local/sbin/
|
|
|
|
echo
|
|
|
|
if [[ ! -f /usr/local/etc/pdns.conf ]]; then
|
|
cp etc/pdns.conf /usr/local/etc/pdns.conf
|
|
chmod 640 /usr/local/etc/pdns.conf
|
|
echo "Update /usr/local/etc/pdns.conf with your settings."
|
|
fi
|
|
|
|
if [[ ! -f /usr/local/etc/pdns-certbot-credentials.ini ]]; then
|
|
echo "dns_powerdns_api_url =" > /usr/local/etc/pdns-certbot-credentials.ini
|
|
echo "dns_powerdns_api_key =" >> /usr/local/etc/pdns-certbot-credentials.ini
|
|
chmod 640 /usr/local/etc/pdns-certbot-credentials.ini
|
|
echo "Update /usr/local/etc/pdns-certbot-credentials.ini with your settings (this is to be used with certbot-dns-powerdns)."
|
|
fi
|