mirror of
https://github.com/pi-hole/FTL.git
synced 2024-10-26 16:52:18 +02:00
96c6effa45
Signed-off-by: DL6ER <dl6er@dl6er.de>
432 lines
14 KiB
TOML
432 lines
14 KiB
TOML
# This file is managed by pihole-FTL
|
|
#
|
|
# Do not edit the file while FTL is
|
|
# running or your changes may be overwritten
|
|
#
|
|
# Last update: 2023-01-11 20:53:00
|
|
|
|
[dns]
|
|
# Should FTL walk CNAME paths?
|
|
CNAMEdeepInspect = true
|
|
|
|
# Should _esni. subdomains be blocked by default?
|
|
blockESNI = true
|
|
|
|
# Should FTL analyze possible ECS information to obtain client IPs hidden behind NATs?
|
|
EDNS0ECS = true
|
|
|
|
# Should FTL hide queries made by localhost?
|
|
ignoreLocalhost = false
|
|
|
|
# Should FTL should internally generated DNSSEC queries?
|
|
showDNSSEC = true
|
|
|
|
# Should FTL analyze AAAA queries?
|
|
analyzeAAAA = true
|
|
|
|
# Should FTL analyze *only* A and AAAA queries?
|
|
analyzeOnlyAandAAAA = false
|
|
|
|
# Should FTL return "pi.hole" as name for PTR requests to local IP addresses?
|
|
# Possible values are: [ "NONE", "HOSTNAME", "HOSTNAMEFQDN", "PI.HOLE" ]
|
|
piholePTR = "PI.HOLE"
|
|
|
|
# How should FTL handle queries when the gravity database is not available?
|
|
# Possible values are: [ "BLOCK", "ALLOW", "REFUSE", "DROP" ]
|
|
replyWhenBusy = "ALLOW"
|
|
|
|
# TTL for blocked queries [seconds]
|
|
blockTTL = 2
|
|
|
|
[dns.blocking]
|
|
# Should FTL block queries?
|
|
active = true
|
|
|
|
# How should FTL reply to blocked queries?
|
|
# Possible values are: [ "NULL", "IP-NODATA-AAAA", "IP", "NXDOMAIN", "NODATA" ]
|
|
mode = "NULL"
|
|
|
|
[dns.specialDomains]
|
|
# Should FTL handle use-application-dns.net specifically and always return NXDOMAIN?
|
|
mozillaCanary = true
|
|
|
|
# Should FTL handle the iCloud privacy relay domains specifically and always return
|
|
# NXDOMAIN?
|
|
iCloudPrivateRelay = true
|
|
|
|
[dns.reply.host]
|
|
# Use a specific IPv4 address for the Pi-hole host?
|
|
overwrite_v4 = true ### CHANGED, default = false
|
|
|
|
# Use a specific IPv6 address for the Pi-hole host?
|
|
overwrite_v6 = true ### CHANGED, default = false
|
|
|
|
# Custom IPv4 address for the Pi-hole host
|
|
# Possible values are: <valid IPv4 address> or empty string ("")
|
|
IPv4 = "10.100.0.10" ### CHANGED, default = "0.0.0.0"
|
|
|
|
# Custom IPv6 address for the Pi-hole host
|
|
# Possible values are: <valid IPv6 address> or empty string ("")
|
|
IPv6 = "fe80::10" ### CHANGED, default = "::"
|
|
|
|
[dns.reply.blocking]
|
|
# Use a specific IPv4 address in IP blocking mode?
|
|
overwrite_v4 = true ### CHANGED, default = false
|
|
|
|
# Use a specific IPv6 address in IP blocking mode?
|
|
overwrite_v6 = true ### CHANGED, default = false
|
|
|
|
# Custom IPv4 address for IP blocking mode
|
|
# Possible values are: <valid IPv4 address> or empty string ("")
|
|
IPv4 = "10.100.0.11" ### CHANGED, default = "0.0.0.0"
|
|
|
|
# Custom IPv6 address for IP blocking mode
|
|
# Possible values are: <valid IPv6 address> or empty string ("")
|
|
IPv6 = "fe80::11" ### CHANGED, default = "::"
|
|
|
|
[dns.rateLimit]
|
|
# How many queries are permitted...
|
|
count = 0 ### CHANGED, default = 1000
|
|
|
|
# ... in the set interval before rate-limiting?
|
|
interval = 0 ### CHANGED, default = 60
|
|
|
|
[dnsmasq]
|
|
# Array of upstream DNS servers used by Pi-hole
|
|
# Possible values are: array of IP addresses and/or hostnames, optionally with a port,
|
|
# e.g. [ "8.8.8.8", "127.0.0.1#5353", "docker-resolver" ]
|
|
upstreams = [ "127.0.0.1#5555" ] ### CHANGED, default = [ ]
|
|
|
|
# The DNS domain used by your Pi-hole
|
|
# Possible values are: <any valid domain>
|
|
domain = "lan"
|
|
|
|
# If set, A and AAAA queries for plain names, without dots or domain parts, are never
|
|
# forwarded to upstream nameservers
|
|
domain_needed = false
|
|
|
|
# If set, the domain is added to simple names (without a period) in /etc/hosts in the
|
|
# same way as for DHCP-derived names
|
|
expand_hosts = false
|
|
|
|
# Should all reverse lookups for private IP ranges (i.e., 192.168.x.y, etc) which are
|
|
# not found in /etc/hosts or the DHCP leases file be answered with "no such domain"
|
|
# rather than being forwarded upstream?
|
|
bogus_priv = true
|
|
|
|
# Validate DNS replies and cache DNSSEC data
|
|
dnssec = true
|
|
|
|
# Interface to use for DNS (see also dnsmasq.listening.mode) and DHCP (if enabled)
|
|
# Possible values are: a valid interface name
|
|
interface = ""
|
|
|
|
# Add A, AAAA and PTR records to the DNS. This adds one or more names to the DNS with
|
|
# associated IPv4 (A) and IPv6 (AAAA) records
|
|
# Possible values are: <name>[,<name>....],[<IPv4-address>],[<IPv6-address>][,<TTL>]
|
|
host_record = ""
|
|
|
|
# Pi-hole interface listening modes
|
|
# Possible values are: [ "LOCAL", "ALL", "SINGLE", "BIND" ]
|
|
listening_mode = "LOCAL"
|
|
|
|
# Cache size of the DNS server. Note that expiring cache entries naturally make room
|
|
# for new insertions over time. Setting this number too high will have an adverse
|
|
# effect as not only more space is needed, but also lookup speed gets degraded in the
|
|
# 100,000+ range
|
|
cache_size = 10000
|
|
|
|
# Log DNS queries and replies to pihole.log
|
|
logging = true
|
|
|
|
[dnsmasq.rev_server]
|
|
# Is the reverse server (former also called "conditional forwarding") feature enabled?
|
|
active = false
|
|
|
|
# Address range for the reverse server feature in CIDR notation. If the prefix length
|
|
# is omitted, either 32 (IPv4) or 128 (IPv6) are substitutet (exact address match).
|
|
# This is almost certainly not what you want here.
|
|
# Possible values are: <ip-address>[/<prefix-len>], e.g., "192.168.0.0/24" for the
|
|
# range 192.168.0.1 - 192.168.0.255
|
|
cidr = ""
|
|
|
|
# Target server tp be used for the reverse server feature
|
|
# Possible values are: <server>[#<port>], e.g., "192.168.0.1"
|
|
target = ""
|
|
|
|
# Domain used for the reverse server feature
|
|
# Possible values are: <valid domain>, typically set to the same value as
|
|
# dnsmasq.domain
|
|
domain = ""
|
|
|
|
[dnsmasq.dhcp]
|
|
# Is the embedded DHCP server enabled?
|
|
active = false
|
|
|
|
# Start address of the DHCP address pool
|
|
# Possible values are: <ip-addr>, e.g., "192.168.0.10"
|
|
start = ""
|
|
|
|
# End address of the DHCP address pool
|
|
# Possible values are: <ip-addr>, e.g., "192.168.0.250"
|
|
end = ""
|
|
|
|
# Address of the gateway to be used (typicaly the address of your router in a home
|
|
# installation)
|
|
# Possible values are: <ip-addr>, e.g., "192.168.0.1"
|
|
router = ""
|
|
|
|
# If the lease time is given, then leases will be given for that length of time. If not
|
|
# given, the default lease time is one hour for IPv4 and one day for IPv6.
|
|
# Possible values are: The lease time can be in seconds, or minutes (e.g., "45m") or
|
|
# hours (e.g., "1h") or days (like "2d") or even weeks ("1w").
|
|
# You may also use "infinite" as string but be aware of the
|
|
# drawbacks
|
|
leasetime = ""
|
|
|
|
# Should Pi-hole make an attempt to also satisfy IPv6 address requests (be aware that
|
|
# IPv6 works a whole lot different than IPv4)
|
|
ipv6 = false
|
|
|
|
# Enable DHCPv4 Rapid Commit Option specified in RFC 4039. Should only be enabled if
|
|
# either the server is the only server for the subnet to avoid conflicts
|
|
rapid_commit = false
|
|
|
|
[resolver]
|
|
# Should FTL try to resolve IPv4 addresses to hostnames?
|
|
resolveIPv4 = false ### CHANGED, default = true
|
|
|
|
# Should FTL try to resolve IPv6 addresses to hostnames?
|
|
resolveIPv6 = false ### CHANGED, default = true
|
|
|
|
# Try to obtain client names from the network table?
|
|
networkNames = false ### CHANGED, default = true
|
|
|
|
# How (and if) hourly PTR lookups should be made
|
|
# Possible values are: [ "IPV4_ONLY", "ALL", "UNKNOWN", "NONE" ]
|
|
refreshNames = "NONE" ### CHANGED, default = "IPV4_ONLY"
|
|
|
|
[database]
|
|
# Should FTL load information from the database on startup to be aware of the most
|
|
# recent history?
|
|
DBimport = true
|
|
|
|
# Should FTL store queries in the long-term database?
|
|
DBexport = true
|
|
|
|
# How much history should be imported from the database [seconds]? (max 24*60*60 =
|
|
# 86400)
|
|
maxHistory = 86400
|
|
|
|
# How long should queries be stored in the database [days]?
|
|
maxDBdays = 365
|
|
|
|
# How often do we store queries in FTL's database [seconds]?
|
|
DBinterval = 60
|
|
|
|
[database.network]
|
|
# Should FTL anaylze the local ARP cache?
|
|
parseARPcache = true
|
|
|
|
# How long should IP addresses be kept in the network_addresses table [days]?
|
|
expire = 365
|
|
|
|
[api]
|
|
# Does local clients need to authenticate to access the API?
|
|
localAPIauth = true
|
|
|
|
# Should FTL prettify the API output?
|
|
prettyJSON = false
|
|
|
|
# How long should a session be considered valid after login [seconds]?
|
|
sessionTimeout = 300
|
|
|
|
# API password hash
|
|
# Possible values are: <valid Pi-hole password hash>
|
|
pwhash = ""
|
|
|
|
# Array of clients to be excluded from certain API responses
|
|
# Possible values are: array of IP addresses and/or hostnames, e.g. [ "192.168.2.56",
|
|
# "fe80::341", "localhost" ]
|
|
exclude_clients = [ "1.2.3.4" ] ### CHANGED, default = [ ]
|
|
|
|
# Array of domains to be excluded from certain API responses
|
|
# Possible values are: array of IP addresses and/or hostnames, e.g. [ "google.de",
|
|
# "pi-hole.net" ]
|
|
exclude_domains = [ ]
|
|
|
|
[http]
|
|
# On which domain is the web interface served?
|
|
# Possible values are: <valid domain>
|
|
domain = "pi.hole"
|
|
|
|
# Webserver access control list
|
|
# Possible values are: <valid ACL>
|
|
acl = "+0.0.0.0/0"
|
|
|
|
# Ports to be used by the webserver
|
|
# Possible values are: comma-separated list of <[ip_address:]port>
|
|
port = "8080,[::]:8080"
|
|
|
|
[http.paths]
|
|
# Server root on the host
|
|
# Possible values are: <valid path>
|
|
webroot = "/var/www/html"
|
|
|
|
# Sub-directory of the root containing the web interface
|
|
# Possible values are: <valid subpath>, both slashes are needed!
|
|
webhome = "/admin/"
|
|
|
|
[http.interface]
|
|
# Should the web interface use the boxed layout?
|
|
boxed = true
|
|
|
|
# Theme used by the Pi-hole web interface
|
|
# Possible values are: <valid themename>
|
|
theme = "default"
|
|
|
|
[files]
|
|
# The location of FTL's PID file
|
|
# Possible values are: <any writable file>
|
|
pid = "/run/pihole-FTL.pid"
|
|
|
|
# The location of FTL's long-term database
|
|
# Possible values are: <any FTL database>
|
|
database = "/etc/pihole/pihole-FTL.db"
|
|
|
|
# The location of Pi-hole's gravity database
|
|
# Possible values are: <any Pi-hole gravity database>
|
|
gravity = "/etc/pihole/gravity.db"
|
|
|
|
# The database containing MAC -> Vendor information for the network table
|
|
# Possible values are: <any Pi-hole macvendor database>
|
|
macvendor = "/etc/pihole/macvendor.db"
|
|
|
|
# The config file of Pi-hole
|
|
# Possible values are: <any Pi-hole setupVars file>
|
|
setupVars = "/etc/pihole/setupVars.conf"
|
|
|
|
# The log file used by the webserver
|
|
# Possible values are: <any writable file>
|
|
http_info = "/var/log/pihole/HTTP_info.log"
|
|
|
|
# The log file used by the dynamic interpreter PH7
|
|
# Possible values are: <any writable file>
|
|
ph7_error = "/var/log/pihole/PH7.log"
|
|
|
|
[files.log]
|
|
# The location of FTL's log file
|
|
# Possible values are: <any writable file>
|
|
ftl = "/var/log/pihole/FTL.log"
|
|
|
|
# The log file used by the embedded dnsmasq DNS server
|
|
# Possible values are: <any writable file>
|
|
dnsmasq = "/var/log/pihole/pihole.log"
|
|
|
|
[misc]
|
|
# Set niceness of pihole-FTL (can be disabled by setting to -999)
|
|
nice = -999 ### CHANGED, default = -10
|
|
|
|
# Should FTL try to call addr2line when generating backtraces?
|
|
delay_startup = 0
|
|
|
|
# The log file used by the dynamic interpreter PH7
|
|
addr2line = true
|
|
|
|
# Privacy level
|
|
privacylevel = 0
|
|
|
|
[misc.temp]
|
|
# Which upper temperature limit should be used by Pi-hole? Temperatures above this
|
|
# limit will be shown as "hot". The number specified here is in the unit defined below
|
|
limit = 60.000000
|
|
|
|
# Which temperature unit should be used for temperatures processed by FTL?
|
|
# Possible values are: [ "C", "F", "K" ]
|
|
unit = "C"
|
|
|
|
[misc.check]
|
|
# Should FTL check the 15 min average of CPU load and complain if the load is larger
|
|
# than the number of available CPU cores?
|
|
load = false ### CHANGED, default = true
|
|
|
|
# Limit above which FTL should complain about disk shortage for checked files [percent]
|
|
shmem = 0 ### CHANGED, default = 90
|
|
|
|
# Limit above which FTL should complain about a shared-memory shortage [percent]
|
|
disk = 0 ### CHANGED, default = 90
|
|
|
|
[debug]
|
|
# Enable extra logging of database actions
|
|
database = true ### CHANGED, default = false
|
|
|
|
# Enable extra logging of detected interfaces
|
|
networking = true ### CHANGED, default = false
|
|
|
|
# Enable extra logging of shared memory lock actions
|
|
locks = true ### CHANGED, default = false
|
|
|
|
# Print extensive query information
|
|
queries = true ### CHANGED, default = false
|
|
|
|
# Print flags of queries received by the DNS hooks
|
|
flags = true ### CHANGED, default = false
|
|
|
|
# Print information about shared memory buffers
|
|
shmem = true ### CHANGED, default = false
|
|
|
|
# Print information about garbage collection
|
|
gc = true ### CHANGED, default = false
|
|
|
|
# Print information about ARP table processing
|
|
arp = true ### CHANGED, default = false
|
|
|
|
# Enable extra logging of regex matching details
|
|
regex = true ### CHANGED, default = false
|
|
|
|
# Enable extra logging of API activities
|
|
api = true ### CHANGED, default = false
|
|
|
|
# Print information about overTime memory operations
|
|
overtime = true ### CHANGED, default = false
|
|
|
|
# Enable extra logging of query status changes
|
|
status = true ### CHANGED, default = false
|
|
|
|
# Print information about capabilities granted to the pihole-FTL process
|
|
caps = true ### CHANGED, default = false
|
|
|
|
# Print information about DNSSEC activity
|
|
dnssec = true ### CHANGED, default = false
|
|
|
|
# Print vector operation details
|
|
vectors = true ### CHANGED, default = false
|
|
|
|
# Extensive information about hostname resolution like which DNS servers are used
|
|
resolver = true ### CHANGED, default = false
|
|
|
|
# Print EDNS(0) debugging information
|
|
edns0 = true ### CHANGED, default = false
|
|
|
|
# Enable extra client detail logging
|
|
clients = true ### CHANGED, default = false
|
|
|
|
# Print aliasclient details
|
|
aliasclients = true ### CHANGED, default = false
|
|
|
|
# Log information about processed internal events
|
|
events = true ### CHANGED, default = false
|
|
|
|
# Enable logging of script helper activity
|
|
helper = true ### CHANGED, default = false
|
|
|
|
# Print config parsing details
|
|
config = true ### CHANGED, default = false
|
|
|
|
# Special debug flag that may be used for debugging specific issues
|
|
extra = true ### CHANGED, default = false
|
|
|
|
# Reserved debug flag
|
|
reserved = true ### CHANGED, default = false
|
|
|