Pi-Hole Setup
Block nefarious websites & Ads.
Ports
Pi-Hole Ports
Note
FTL API should not be acessible from any other interface.
Port
Protocol
Type
Purpose
53
TCP/UDP
PUBLIC
DNS Service
80
TCP
PUBLIC
HTTP administration webface
443
TCP
OPTIONAL
HTTPS administration webface
67
UDP
OPTIONAL
DHCP Service
547
UDP
OPTIONAL
DHCPv6 Service
4711-4720
TCP
DISABLE
FTL API Service
Updated: None
Warning
See older revisions of this document for PiHole 4.x
and lower. 5.x
and above now uses a single SQLlite database for configuration.
Files
Pi-Hole Files
Location
Purpose
/etc/dnsmasq.d/*
DNS masqerade settings
/etc/hosts
Static host/IP lookup
/etc/lighthttpd/external.conf
Pi-Hole web server configuration
/etc/pihole
Configuration Data
/etc/pihole/SetupVars.conf
Startup Configuration Settings
/etc/pihole/gravity.db
PiHole list/group/user settings
Updated: None
Installing
Uses Debian Stretch Server Base Install. Pi-Hole has an installer script on the website, but you should never blindly execute scripts from the Internet.
sudo apt install curl git
git clone --depth 1 https://github.com/pi-hole/pi-hole
cd 'pi-hole/automated install/'
sudo bash basic-install.sh
Base Configuration
Base Configuration
Upstream DNS Provider
INTERNAL DNS
Third Party Lists
All
Protocols
All
Static IP Address
Use current DHCP settings
Web admin interface
☑
Web Server (required for webface if no other server)
☑
Log Queries
☑
Privacy Mode
0
Updated: None
Note
The password will be listed on the summary page. This can be set using
pihole -a -p
and reached via http://pi.hole/admin, once DNS is set to
Pi-Hole.