A black hole for Internet advertisements
Find a file
jacobsalmela 6953c02402 detect original pihole and backup
Detects if the Pi had an original Pi-hole by looking for adList.conf.
If it exists, it backs up all the files to /etc/pihole/original.  Then,
the script continues as normal and creates the new files.  This helps
ensure that /etc/hosts and /etc/dnsmasq.d/adList.conf are not being
used simultaneously.
2015-06-21 07:53:29 -05:00
advanced Add local-ttl to dnsmasq config so that queries are cached by the requesting device. 2015-06-19 14:10:48 -07:00
automated install detect original pihole and backup 2015-06-21 07:53:29 -05:00
block hulu ads preparing files for merge and for testing automated install 2015-06-16 11:15:15 -05:00
gravity.sh Use double brackets for the test. 2015-06-19 17:54:12 -07:00
LICENSE Initial commit 2014-06-08 10:02:55 -05:00
README.md Update to reflect #20 2015-06-21 07:53:29 -05:00

Raspberry Pi Ad Blocker

A black hole for ads, hence Pi-hole

Pi-hole

The Pi-hole is a DNS/Web server that will block ads for any device on your network.

Coverage

Featured on MakeUseOf and Lifehacker!

Automated Install

Make sure to set a static IP address before running this!!

On a clean installation of Raspbian, you can run this command to auto-install the Pi-hole. Once installed, configure any device to use the Raspberry Pi as your DNS server and the ads will be blocked.

curl -s "https://raw.githubusercontent.com/jacobsalmela/pi-hole/master/automated%20install/basic-install.sh" | bash

Gravity

The gravity.sh does most of the magic. The script pulls in ad domains from many sources and compiles them into a single list of over 900,000 entries.

Custom Config File

If you want to use your own variables for the gravity script (i.e. storing the files in a different location) and don't want to have to change them every time there is an update to the script, create a file called /etc/pihole/pihole.conf. In it, you should add your own variables in a similar fashion as shown below:

origin=/var/run/pihole
adList=/etc/dnsmasq.d/adList

See this PR for more details.

Whitelist and blacklist

You can add a whitelist.txt or blacklist.txt in /etc/pihole/ and the script will apply those files automatically.

How It Works

A technical and detailed description can be found here!

Other Operating Systems

This script will work for other UNIX-like systems with some slight modifications. As long as you can install dnsmasq and a Webserver, it should work OK. The automated install only works for a clean install of Raspiban right now since that is how the project originated.