britannic / blacklist

Blacklist and Adware Blocking for the Ubiquiti EdgeMax Router
Other
532 stars 35 forks source link
blacklist blacklist-configuration blacklist-sources dnsmasq donations edgemax edgeos edgeos-dnsmasq-blacklist paypal paypal-money-transfer router routers sponsorship ubiquiti unifi usg usgs

UBNT edgeos-dnsmasq-blacklist dnsmasq DNS Blacklisting and Redirection

LicenseVersionGoDocBuild StatusCoverage StatusGo Report Card

Follow the conversation @ community.ui.com

Donations and Sponsorship

Please show your thanks by donating to the project using Square Cash or PayPal

Donate Donate Donate Donate Donate Donate

Donate Donate Donate Donate Donate Donate

We greatly appreciate any and all donations - thank you! Funds go to maintaining development servers and networks.

Note: This is 3rd party software and isn't supported or endorsed by Ubiquiti Networks®

Contents

  1. Overview
  2. Donate
  3. Copyright
  4. Licenses
  5. Latest Version
  6. Change Log
  7. Features
  8. Compatibility
  9. Installation
    1. Using apt-get
    2. Using dpkg
  10. Upgrade
  11. Reconfigure
  12. Removal
  13. Frequently Asked Questions
    1. Can I donate to project?
    2. Does the install backup my blacklist configuration before deleting it?
    3. Does update-dnsmasq run automatically?
    4. How do I add or delete sources?
    5. How do I back up my blacklist configuration and restore it later?
    6. How do I configure dnsmasq?
    7. How do I configure local file sources instead of internet based ones?
    8. How do I use standalone or failover mode?
    9. How do I disable/enable dnsmasq blacklisting?
    10. How do I exclude or include a host or a domain?
    11. How do I globally exclude or include hosts or a domains?
    12. How do I use the command line switches?
    13. How do can keep my USG configuration after an upgrade, provision or reboot?
    14. How does whitelisting work?
    15. What is the difference between blocking domains and hosts?
    16. Which blacklist sources are installed by default?
    17. How do I troubleshoot dnsmasq blacklisting?

Overview

EdgeMax dnsmasq DNS blacklisting and redirection is inspired by the users at Ubiquiti UISP Community

[Top]

Copyright

[Top]

Licenses

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

    The views and conclusions contained in the software and documentation are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of the FreeBSD Project.

[Top]

Latest Version

       Latest

Release 1.2.4.9 (June 7, 2023)

set service dns forwarding blacklist hosts source githubSteveBlack url 'https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts'
set service dns forwarding blacklist hosts source githubSteveBlack description 'Blacklists adware and malware websites'
set service dns forwarding blacklist hosts source githubSteveBlack prefix '0.0.0.0 '

[Top]

Change Log

[Top]

Features

[Top]

Compatibility

[Top]

Installation

[Top]

apt-get Installation - ERLite-3, ERPoe-5, ER-X, ER-X-SFP, ER4, UniFi-Gateway-3 & UniFi-Gateway-4

configure
set system package repository blacklist components main
set system package repository blacklist description 'Britannic blacklist debian stretch repository'
set system package repository blacklist distribution stretch
set system package repository blacklist url 'https://raw.githubusercontent.com/britannic/debian-repo/master/blacklist/public/'
commit;save;exit
sudo curl -L https://raw.githubusercontent.com/britannic/debian-repo/master/blacklist/public.key | sudo apt-key add -
sudo apt-get update && sudo apt-get install -f edgeos-dnsmasq-blacklist
apt --fix-broken install

[Top]

dpkg Installation - best for disk space constrained routers

EdgeRouter ERLite-3, ERPoe-5, ER4, UniFi-Gateway-3 & UniFi-Gateway-4

curl -L -O https://raw.githubusercontent.com/britannic/blacklist/master/edgeos-dnsmasq-blacklist_1.2.4.9_mips.deb
sudo dpkg -i edgeos-dnsmasq-blacklist_1.2.4.9_mips.deb

[Top]

EdgeRouter ER-X & ER-X-SFP

sudo apt-get clean cache
delete system image
curl -L -O https://raw.githubusercontent.com/britannic/blacklist/master/edgeos-dnsmasq-blacklist_1.2.4.9_mipsel.deb
sudo dpkg -i edgeos-dnsmasq-blacklist_1.2.4.9_mipsel.deb

[Top]

Upgrade

sudo apt-get update && sudo apt-get install -f --only-upgrade edgeos-dnsmasq-blacklist

[Top]

Reconfigure

sudo dpkg-reconfigure edgeos-dnsmasq-blacklist

[Top]

Removal

EdgeMAX - All Platforms

sudo apt-get remove --purge edgeos-dnsmasq-blacklist

[Top]

Frequently Asked Questions

How do I disable/enable dnsmasq blacklisting?

configure
set service dns forwarding blacklist disabled true
commit;save;exit
configure
set service dns forwarding blacklist disabled false
commit;save;exit

[Top]

Does the install backup my blacklist configuration before deleting it?

[Top]

How do I back up my blacklist configuration and restore it later?

export DATE=$(date +'%FT%H%M%S'); echo "Backing up blacklist configuration to: /config/user-data/blacklist.${DATE}.cmds"; show configuration commands | grep blacklist > /config/user-data/blacklist.$(date +'%FT%H%M%S').cmds
configure
.  /config/user-data/blacklist.[date string].cmds
commit;save;exit
configure
delete service dns forwarding blacklist
.  /config/user-data/blacklist.[date string].cmds
commit;save;exit

[Top]

Which blacklist sources are installed by default?

show configuration commands | match source
grep downloaded /var/log/update-dnsmasq.log

[Top]

How do I configure local file sources instead of internet based ones?

set service dns forwarding blacklist hosts source myhosts description 'Blacklist file source'
set service dns forwarding blacklist hosts source myhosts dns-redirect-ip 0.0.0.0
set service dns forwarding blacklist hosts source myhosts file /config/user-data/blist.hosts.src
gsmtop.net
click.buzzcity.net
ads.admoda.com
stats.pflexads.com
a.glcdn.co
wwww.adleads.com
ad.madvertise.de
apps.buzzcity.net
ads.mobgold.com
android.bcfads.com
req.appads.com
show.buzzcity.net
api.analytics.omgpop.com
r.edge.inmobicdn.net
www.mmnetwork.mobi
img.ads.huntmad.com
creative1cdn.mobfox.com
admicro2.vcmedia.vn
admicro1.vcmedia.vn

[Top]

How do I use standalone or failover mode?

[Top]

How do I keep my USG configuration after an upgrade, provision or reboot?

[Top]

How do I add or delete sources?

configure
delete service dns forwarding blacklist domains source malc0de
delete service dns forwarding blacklist hosts source yoyo.org
commit;save;exit
#               No Coin Filter List           #
#   https://raw.githubusercontent.com/hoshsadiq/adblock-nocoin-list/master/hosts.txt   #
#         Last updated: Mon, 04 Dec 17 19:18:42 +0000      #

127.0.0.1  localhost
127.0.0.1  0koryu0.easter.ne.jp
127.0.0.1  109-204-26-16.netconnexion.managedbroadband.co.uk
127.0.0.1  1866809.securefastserver.com
configure
set service dns forwarding blacklist hosts source nocoinfilterlist description '127.0.0.1 based host and domain list'
set service dns forwarding blacklist hosts source nocoinfilterlist prefix '127.0.0.1  '
set service dns forwarding blacklist hosts source nocoinfilterlist url 'https://raw.githubusercontent.com/hoshsadiq/adblock-nocoin-list/master/hosts.txt'
commit;save;exit

[Top]

How do I globally exclude or include hosts or a domains?

configure
set service dns forwarding blacklist exclude cdn.visiblemeasures.com
set service dns forwarding blacklist include www.nastywebsites.com
commit;save;exit

[Top]

How do I exclude or include a host or a domain?

configure
set service dns forwarding blacklist domains exclude visiblemeasures.com
set service dns forwarding blacklist domains include domainsnastywebsites.com
set service dns forwarding blacklist hosts exclude cdn.visiblemeasures.com
set service dns forwarding blacklist hosts include www.nastywebsites.com
commit;save;exit

[Top]

How does whitelisting work?

server=/www.bing.com/#
address=/bing.com/#

[Top]

Does update-dnsmasq run automatically?

set system task-scheduler task update_blacklists executable arguments 10800
set system task-scheduler task update_blacklists executable path /config/scripts/update-dnsmasq-cronjob.sh
set system task-scheduler task update_blacklists executable arguments 10800
set system task-scheduler task update_blacklists interval 1d
set system task-scheduler task update_blacklists interval 6h

[Top]

How do I use the command line switches?

/config/scripts/update-dnsmasq -h
  -dir string
        Override dnsmasq directory (default "/etc/dnsmasq.d")
  -f <file>
        <file> # Load a config.boot file
  -h    Display help
  -safe
        Fail over to /config/user-data/blacklist.failover.cfg
  -v    Verbose display
  -version

[Top]

How do I configure dnsmasq?

configure
set service dns forwarding cache-size 2048
set service dns forwarding except-interface [Your WAN i/f]
set service dns forwarding name-server [Your choice of IPv4 Internet Name-Server]
set service dns forwarding name-server [Your choice of IPv4 Internet Name-Server]
set service dns forwarding name-server [Your choice of IPv6 Internet Name-Server]
set service dns forwarding name-server [Your choice of IPv6 Internet Name-Server]
set service dns forwarding options bogus-priv
set service dns forwarding options domain-needed
set service dns forwarding options domain=mydomain.local
set service dns forwarding options enable-ra
set service dns forwarding options expand-hosts
set service dns forwarding options localise-queries
set service dns forwarding options strict-order
set service dns forwarding system
set system name-server 127.0.0.1
set system name-server '::1'
commit; save; exit

[Top]

What is the difference between blocking domains and hosts?

[Top]

How do I troubleshoot dnsmasq blacklisting?

  tail /var/log/update-dnsmasq.log

  Total entries extracted = Total sites blocked
  Timestamp = Last time the update ran
  sudo /config/scripts/update-dnsmasq -v
  grep [host.domain.tld] /etc/dnsmasq.d/*
  grep [domain.tld] /etc/dnsmasq.d/* 
  sudo /config/scripts/update-dnsmasq -version

[Top]