| #!/bin/sh |
| ############################################################################## |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License version 2 as |
| # published by the Free Software Foundation. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # Copyright (C) 2016 Eric Luehrsen |
| # |
| ############################################################################## |
| |
| # while useful (sh)ellcheck is pedantic and noisy |
| # shellcheck disable=1091,2002,2004,2034,2039,2086,2094,2140,2154,2155 |
| |
| # where are we? |
| UB_ETCDIR=/etc/unbound |
| UB_LIBDIR=/usr/lib/unbound |
| UB_VARDIR=/var/lib/unbound |
| UB_PIDFILE=/var/run/unbound.pid |
| |
| # conf deconstructed |
| UB_CORE_CONF=$UB_VARDIR/server.conf.tmp |
| UB_HOST_CONF=$UB_VARDIR/host.conf.tmp |
| UB_ZONE_CONF=$UB_VARDIR/zone.conf.tmp |
| UB_CTRL_CONF=$UB_VARDIR/ctrl.conf.tmp |
| UB_SRVMASQ_CONF=$UB_VARDIR/dnsmasq_srv.conf.tmp |
| UB_EXTMASQ_CONF=$UB_VARDIR/dnsmasq_ext.conf.tmp |
| |
| # conf as found |
| UB_TOTAL_CONF=$UB_VARDIR/unbound.conf |
| UB_DHCP_CONF=$UB_VARDIR/dhcp.conf |
| UB_SRV_CONF=$UB_VARDIR/unbound_srv.conf |
| UB_EXT_CONF=$UB_VARDIR/unbound_ext.conf |
| |
| # resolver file complex |
| UB_RESOLV_CONF=/tmp/resolv.conf |
| UB_RESOLV_AUTO=/tmp/resolv.conf.d/resolv.conf.auto |
| |
| # TLS keys |
| UB_TLS_KEY_FILE="TLS server UCI not implemented" |
| UB_TLS_PEM_FILE="TLS server UCI not implemented" |
| UB_TLS_ETC_FILE=/etc/ssl/certs/ca-certificates.crt |
| |
| # start files |
| UB_RKEY_FILE=$UB_VARDIR/root.key |
| UB_RHINT_FILE=$UB_VARDIR/root.hints |
| UB_TIME_FILE=$UB_VARDIR/hotplug.time |
| UB_SKIP_FILE=$UB_VARDIR/skip.time |
| |
| # control app keys |
| UB_CTLKEY_FILE=$UB_ETCDIR/unbound_control.key |
| UB_CTLPEM_FILE=$UB_ETCDIR/unbound_control.pem |
| UB_SRVKEY_FILE=$UB_ETCDIR/unbound_server.key |
| UB_SRVPEM_FILE=$UB_ETCDIR/unbound_server.pem |
| |
| # similar default SOA / NS RR as Unbound uses for private ARPA zones |
| UB_XSER=$(( $( date +%s ) / 60 )) |
| UB_XSOA="7200 IN SOA localhost. nobody.invalid. $UB_XSER 3600 1200 9600 300" |
| UB_XNS="7200 IN NS localhost." |
| UB_XTXT="7200 IN TXT \"comment=local intranet dns zone\"" |
| UB_MTXT="7200 IN TXT \"comment=masked internet dns zone\"" |
| UB_LTXT="7200 IN TXT \"comment=rfc6762 multicast dns zone\"" |
| |
| # helper apps |
| UB_ANCHOR=/usr/sbin/unbound-anchor |
| UB_CONTROL=/usr/sbin/unbound-control |
| UB_CONTROL_CFG="$UB_CONTROL -c $UB_TOTAL_CONF" |
| |
| ############################################################################## |
| |