This is a reference repository for adblocking tools and settings (ads, tracking, etc). The text files are backups of filter lists I've uses in Pi-Hole, AdGuard, pfBlockerNG, and uBlock. So they are specific to to my setup - they may not work perfectly for you but they might be a place to start.
As a general rule, if you find a blocklist that has not been updated recently (within days or weeks) then it's probably not being maintained anymore. Move on to ones that are well maintained.
Whitelists tell the adblock what not to block. The whitelist I've included is what I've built up over time for myself.
In Pi-hole there is no way to import an entire whitelist. So I've included a very short Python script that automates this. It will run through a downloaded text file and push each line into Pi-hole's whitelist.
- Anudeep ND Whitelist (domains) (homepage)
- Commonly whitelisted domains - Pi-hole Forum
- hl2guide's Adguard Home Whitelist and some block lists as well
Every OS has a file called Hosts
that it uses to map hostnames to IP addresses. Rewriting a hostname to 0.0.0.0 makes it inaccessible, blocking it. You can use these with DNS blockers like Pihole, Adguard Home, or PfBlockerNG.
Hosts file example
# Comment
0.0.0.0 www.pixel.ad
127.0.0.1 my.selfhosted.lan
Domain lists are simply text files with domains in them
# Comment
www.pixel.ad
- AdGuard DNS list - formatted as a hosts list
- Steven Black hostslist - A standard
- Easylist, just the domains
- Developer Dan's Ad & Tracking list
- OISD Big - a list made of many other blocklists, hosts list formatted
- OISD Small - a smaller list made of many other lists, hosts list - formatted
- YouTube Ad blocklist (hasn't been updated in 2 yrs)
- Dan Pollock's host list
- Adaway adblock host list
- AnudeepND adblock list
- Firebog suspicious hosts list
- DoH Great Wall - some software will use DNS-over-HTTPS to route around Pihole/etc
- DNS-over-HTTPS blocklist - another DoH blocklist
- Public DNS servers
- Developer Dan's Google AMP host list (article about why they're bad)
- Threat hostlists
- urlhaus host lists - see urlhaus gitlab page for browser filter lists, versions for PiHole, AdGuard, etc.
Filter lists are lists of patterns within webpages themselves. This allows things like blocking cookie messages, popups, or social media "like" buttons. Using a DNS blocker and a browser adblocker together works well. Brave Browser's built-in adblocker, AdGuard browser extension, and AdBlock Plus are ones I've used.
These are typical of these kind of filtering rule lists. These are not compatible with Pi-hole, PfBlockerNG, or AdGuard Home (DNS blockers):
Filter Examples
! Comment
.adnetwork.$domain=~adnetwork.ie|~adnetwork.sk
/ad_display.
/banners/ads/\*
/admanager/*$~object,domain=~admanager.line.biz|~blog.google|~sevio.com
###aniview--player
||netinsight.co.kr^$third-party
bleedingcool.com##.post_content_spacer
- Adblock Plus
- uBlock Origin
- AdGuard browser extension
- Brave Browser
uBlock Origin and AdBlock Plus are very customizable. Brave Browser is as well (
brave://adblock
in the browser). There you can add you can add filter lists as well as individual custom filters.
- AdGuard DNS list
- Easylist
- Easylist - no adult variant without adult site blocking
- Easyprivacy is an optional supplementary filter list that completely removes all forms of tracking from the internet
- Easylist Cookie List blocks cookies banners, GDPR overlay windows, etc.
- Fanboy's Social Blocking List - removes 'like buttons' and other social media widgets from websites
- Fanboy's Annoyance List - blocks Social Media content, in-page pop-ups and other annoyances
- Adblock Warning Removal List specifically removes obtrusive messages and warnings targeted to users who use an adblocker.
- Mobile Ads # Mobile Ads - does have some domains so it might be useable with DNS blockers
These are lists of IP addresses. The firewall (pfSense) will refuse outbound or inbound connections to any IP adddresses in the list. One can use cybersecurity feeds as a preventative measure against trojans, botnet malware, and other garbage.
# Some are listed as singular IP addresses
1.117.3.64
1.12.254.218
1.12.60.59
# Some are listed as IP subnet masks
5.42.92.0/24
# Some are written as IP ranges
193.41.206.0 193.41.206.255 24 749 - - -
167.94.145.0 167.94.145.255 24 707 CENSYS-ARIN-02 US None
194.169.175.0 194.169.175.255 24 706 AS-MATRIXTELECOM GB >>UNKNOWN<<
- Public DNS servers
- DoH Great Wall IP list
- Spamhaus DROP (Don't Route or Peer) List consists of netblocks that are "hijacked" or leased by professional spam or cyber-crime operations (used for dissemination of malware, trojan downloaders, botnet controllers).
- Spamhaus EDROP List
- DShield Most Active Attacking IPs
Some DNS blockers allow the use of regular expressions in order to describe patterns of hostnames. For example, /lgad.*/
will block lgad.foo.com
as well as foo.lgad.bar.net
.
It is a good idea to be minimal about how many regex filters you use. It takes longer for systems to process regex filters than to search through millions of domains. See this post for more a detailed explanation. I only try to use regex filters that are relevant to me.
Regex lists:
Tools:
- Firebog - Adblocking, malicious site lists, tracking, etc.
- Developer Dan
- Developer Dan's blocklist search tool - was a helpful tool that allowed searching for a domain in most of the popular blocklists. It was helpful if I was going through my own network query log to see if something is blocked by any of the lists out there. It seems to no longer be maintained. The https://github.com/blocklist-tools is available.
- Blocklist.site
- OISD
- Nocturnal Archives - some niche lists like Amazon blocklist, Netflix, a decent regex rule list
- Avoid the Hack