/unbound-dns-firewall

DNS-Firewall Python script for UNBOUND

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

unbound-dns-firewall

THIS IS AN ARCHIVE, WILL BE SPARSELY/NOT UPDATED!!!
Check unbound-dns-filter, Instigator and Accomplist as alternatives.

DNS-Firewall Python script for UNBOUND

Little blurp to facilitate DNS filtering using UNBOUND and it's python-module facility. Scales very well and is very fast. Might work well as alternative for RPZ or DNSMasq / HOSTS Files combo.

All of this began when I started to search for an alternative for using UNBOUND's "local-zone/data" which doesn't scale very well with large lists and trashes memory. I also wanted to stay on UNBOUND for my DNS resolution purposes. Also liked the concept of ADSUCK using regex (ADSUCK has been abandoned though). During my search I tripped over a Python script by Oliver Hitz, started to test it, optimized it, added regexp and REFUSED feature, and some more informative logging.

See dns-firewall.py and the Wiki for more info.

Disclaimer: The lists are generated automatically, unduplicated, aggregrated and are provided as is. Some thougth and filtering went into the process to have as less false-positives as possible. By no means are these lists complete and do not guarantee an error-free or disrupted-free experience when used in any way. Using the Python module with UNBOUND has it's own impact as well and can disturb and bring down your DNS when fiddling to much. Use at own risk!

Included lists are compiled from my generic DNS-Firewall lists repository, and is intended to block online/web Advertising, Cyber-Attacks, Fake-News/Info, Gambling, Intrusion/Privacy, Malicious/Malware, Phising, Pornography and Tracking.

Feel free to donate to this personal project to increase reliability and award my time, blood, sweat and tears.

NOTE: This is a work-in-progress and mistakes/errors/faults will creep in from time to time. The lists are updated at least once very 24 hours. This is done by an automated process, which can fail. See disclaimer.