diff --git a/advanced/logrotate b/advanced/Templates/logrotate similarity index 100% rename from advanced/logrotate rename to advanced/Templates/logrotate diff --git a/advanced/Templates/pihole-FTL.conf b/advanced/Templates/pihole-FTL.conf new file mode 100644 index 00000000..e4b9fae9 --- /dev/null +++ b/advanced/Templates/pihole-FTL.conf @@ -0,0 +1,84 @@ +### This file contains parameters for FTL behavior. +### At install, all parameters are commented out. The user can select desired options. +### Options shown are the default configuration. No modification is needed for most +### installations. +### Visit https://docs.pi-hole.net/ftldns/configfile/ for more detailed parameter explanations + +## Socket Listening +## Listen only for local socket connections or permit all connections +## Options: localonly, all +#SOCKET_LISTENING=localonly + +## Query Display +## Display all queries? Set to no to hide query display +## Options: yes, no +#QUERY_DISPLAY=yes + +## AAA Query Analysis +## Allow FTL to analyze AAAA queries from pihole.log? +## Options: yes, no +#AAAA_QUERY_ANALYSIS=yes + +## Resolve IPv6 +## Should FTL try to resolve IPv6 addresses to host names? +## Options: yes, no +#RESOLVE_IPV6=yes + +## Resolve IPv4 +## Should FTL try to resolve IPv4 addresses to host names? +## Options: yes, no +#RESOLVE_IPV4=yes + +## Max Database Days +## How long should queries be stored in the database [days]? +## Setting this to 0 disables the database +## See: https://docs.pi-hole.net/ftldns/database/ +## Options: number of days +#MAXDBDAYS=365 + +## Database Interval +## How often do we store queries in FTL's database [minutes]? +## See: https://docs.pi-hole.net/ftldns/database/ +## Options: number of minutes +#DBINTERVAL=1.0 + +## Database File +## Specify path and filename of FTL's SQLite3 long-term database. +## Setting this to DBFILE= disables the database altogether +## See: https://docs.pi-hole.net/ftldns/database/ +## Option: path to db file +#DBFILE=/etc/pihole/pihole-FTL.db + +## Max Log Age +## Up to how many hours of queries should be imported from the database and logs [hours]? +## Maximum is 744 (31 days) +## Options: number of days +#MAXLOGAGE=24.0 + +## FTL Port +## On which port should FTL be listening? +## Options: tcp port +#FTLPORT=4711 + +## Privacy Level +## Which privacy level is used? +## See: https://docs.pi-hole.net/ftldns/privacylevels/ +## Options: 0, 1, 2, 3 +#PRIVACYLEVEL=0 + +## Ignore Localhost +## Should FTL ignore queries coming from the local machine? +## Options: yes, no +#IGNORE_LOCALHOST=no + +## Blocking Mode +## How should FTL reply to blocked queries? +## See: https://docs.pi-hole.net/ftldns/blockingmode/ +## Options: NULL, IP-AAAA-NODATA, IP, NXDOMAIN +#BLOCKINGMODE=NULL + +## Regex Debug Mode +## Controls if FTLDNS should print extended details about regex matching into pihole-FTL.log. +## See: https://docs.pi-hole.net/ftldns/regex/overview/ +## Options: true, false +#REGEX_DEBUGMODE=false diff --git a/advanced/pihole-FTL.service b/advanced/Templates/pihole-FTL.service similarity index 100% rename from advanced/pihole-FTL.service rename to advanced/Templates/pihole-FTL.service diff --git a/advanced/pihole.cron b/advanced/Templates/pihole.cron similarity index 100% rename from advanced/pihole.cron rename to advanced/Templates/pihole.cron diff --git a/advanced/pihole.sudo b/advanced/Templates/pihole.sudo similarity index 100% rename from advanced/pihole.sudo rename to advanced/Templates/pihole.sudo diff --git a/automated install/basic-install.sh b/automated install/basic-install.sh index 539e3e92..2f1248e9 100755 --- a/automated install/basic-install.sh +++ b/automated install/basic-install.sh @@ -1553,7 +1553,7 @@ installPiholeWeb() { # Make the .d directory if it doesn't exist mkdir -p /etc/sudoers.d/ # and copy in the pihole sudoers file - cp ${PI_HOLE_LOCAL_REPO}/advanced/pihole.sudo /etc/sudoers.d/pihole + cp ${PI_HOLE_LOCAL_REPO}/advanced/Templates/pihole.sudo /etc/sudoers.d/pihole # Add lighttpd user (OS dependent) to sudoers file echo "${LIGHTTPD_USER} ALL=NOPASSWD: /usr/local/bin/pihole" >> /etc/sudoers.d/pihole @@ -1575,7 +1575,7 @@ installCron() { echo "" echo -ne " ${INFO} ${str}..." # Copy the cron file over from the local repo - cp ${PI_HOLE_LOCAL_REPO}/advanced/pihole.cron /etc/cron.d/pihole + cp ${PI_HOLE_LOCAL_REPO}/advanced/Templates/pihole.cron /etc/cron.d/pihole # Randomize gravity update time sed -i "s/59 1 /$((1 + RANDOM % 58)) $((3 + RANDOM % 2))/" /etc/cron.d/pihole # Randomize update checker time @@ -1699,7 +1699,7 @@ installLogrotate() { echo "" echo -ne " ${INFO} ${str}..." # Copy the file over from the local repo - cp ${PI_HOLE_LOCAL_REPO}/advanced/logrotate /etc/pihole/logrotate + cp ${PI_HOLE_LOCAL_REPO}/advanced/Templates/logrotate /etc/pihole/logrotate # Different operating systems have different user / group # settings for logrotate that makes it impossible to create # a static logrotate file that will work with e.g. @@ -2023,7 +2023,12 @@ FTLinstall() { pushd "$(mktemp -d)" > /dev/null || { echo "Unable to make temporary directory for FTL binary download"; return 1; } # Always replace pihole-FTL.service - install -T -m 0755 "${PI_HOLE_LOCAL_REPO}/advanced/pihole-FTL.service" "/etc/init.d/pihole-FTL" + install -T -m 0755 "${PI_HOLE_LOCAL_REPO}/advanced/Templates/pihole-FTL.service" "/etc/init.d/pihole-FTL" + + # Install template if it does not exist + if [[ ! -f "/etc/pihole/pihole-FTL.conf" ]]; then + install -o "${USER}" -Dm644 "${PI_HOLE_LOCAL_REPO}/advanced/Templates/pihole-FTL.conf" "/etc/pihole/pihole-FTL.conf" + fi local ftlBranch local url