All Projects → oznu → docker-dns-ad-blocker

oznu / docker-dns-ad-blocker

Licence: other
A lightweight dnsmasq DNS server to block traffic to known ad servers with optional DNSCrypt support. Supports x86_64 and Raspberry Pi (armhf).

Programming Languages

Dockerfile
14818 projects

Projects that are alternatives of or similar to docker-dns-ad-blocker

Docker Homebridge
Homebridge Docker. HomeKit support for the impatient using Docker on x86_64, Raspberry Pi (armhf) and ARM64. Includes ffmpeg + libfdk-aac.
Stars: ✭ 1,847 (+2267.95%)
Mutual labels:  x86-64, alpine-linux, arm64, armhf, aarch64
Pi Hole
A black hole for Internet advertisements
Stars: ✭ 34,076 (+43587.18%)
Mutual labels:  ad-blocker, dnsmasq, blocker, dns-server
Hosts Blocklists
Automatically updated, moderated and optimized lists for blocking ads, trackers, malware and other garbage
Stars: ✭ 1,749 (+2142.31%)
Mutual labels:  blacklist, dnscrypt, dnsmasq, dnscrypt-proxy
alpine-qbittorrent-openvpn
qBittorrent docker container with OpenVPN client running as unprivileged user on alpine linux
Stars: ✭ 230 (+194.87%)
Mutual labels:  alpine-linux, arm64, armhf, aarch64
docker-powerdns
PowerDNS + Recursor + Admin GUI + Adblock in one single Docker
Stars: ✭ 49 (-37.18%)
Mutual labels:  x86-64, dns-server, armhf
alpine-php-fpm
Lightweight and optimised PHP-FPM (PHP 7.4, 8.0, 8.1) Docker images with essential extensions on top of latest Alpine Linux.
Stars: ✭ 53 (-32.05%)
Mutual labels:  x86-64, alpine-linux, arm64
pinktrace
Pink's Tracing Library
Stars: ✭ 20 (-74.36%)
Mutual labels:  x86-64, arm64, aarch64
Docker Cloudflare Ddns
A small amd64/ARM/ARM64 Docker image that allows you to use CloudFlare as a DDNS / DynDNS Provider.
Stars: ✭ 467 (+498.72%)
Mutual labels:  x86-64, arm64, aarch64
Netflix Proxy
Smart DNS proxy to watch Netflix
Stars: ✭ 3,220 (+4028.21%)
Mutual labels:  dnsmasq, alpine-linux, dns-server
insaneworks-packer-template
CentOS 7-8 8Stream / AlmaLinux 8 / FreeBSD 12 - 13 x64 + VirtualBox / VMWare for Packer Template + FreeBSD 13 / AlmaLinux 9 + Parallels
Stars: ✭ 38 (-51.28%)
Mutual labels:  x86-64, arm64, aarch64
Rappel
A linux-based assembly REPL for x86, amd64, armv7, and armv8
Stars: ✭ 818 (+948.72%)
Mutual labels:  x86-64, arm64, aarch64
Wag
WebAssembly compiler implemented in Go
Stars: ✭ 177 (+126.92%)
Mutual labels:  x86-64, arm64, aarch64
Hblock
Improve your security and privacy by blocking ads, tracking and malware domains.
Stars: ✭ 724 (+828.21%)
Mutual labels:  ad-blocker, dnsmasq, blocker
libcluon
libcluon is a small and efficient, single-file and header-only library written in modern C++ to power microservices.
Stars: ✭ 81 (+3.85%)
Mutual labels:  x86-64, armhf, aarch64
docker-nxfilter
🐳 Run NxFilter in Docker!
Stars: ✭ 28 (-64.1%)
Mutual labels:  ad-blocker, blocker, dns-server
docker-unms
All-in-one docker image for Ubiquiti UISP (formerly UNMS). Supports x86_64 and ARM (Raspberry Pi).
Stars: ✭ 153 (+96.15%)
Mutual labels:  x86-64, arm64, armhf
tensorflow-serving-arm
TensorFlow Serving ARM - A project for cross-compiling TensorFlow Serving targeting popular ARM cores
Stars: ✭ 75 (-3.85%)
Mutual labels:  arm64, armhf, aarch64
alpine-prestashop
Prestashop running on Alpine Linux [Docker]
Stars: ✭ 13 (-83.33%)
Mutual labels:  alpine-linux, arm64, armhf
Mandibule
linux elf injector for x86 x86_64 arm arm64
Stars: ✭ 171 (+119.23%)
Mutual labels:  x86-64, arm64, aarch64
profiler-api
The portable version of JetBrains profiler API for .NET Framework / .NET Core / .NET / .NET Standard / Mono
Stars: ✭ 21 (-73.08%)
Mutual labels:  x86-64, arm64, aarch64

Travis Docker Pulls

oznu/dns-ad-blocker

A simple, lightweight, dnsmasq DNS server to block traffic to known ad servers.

Image Variants

Image Tag Architecture OS Size
latest x64 Alpine Linux
armhf arm32v6 Alpine Linux
aarch64 arm64 Alpine Linux

Usage

Quick Setup:

docker run -d -p 53:53/tcp -p 53:53/udp oznu/dns-ad-blocker

Raspberry Pi:

docker run -d -p 53:53/tcp -p 53:53/udp oznu/dns-ad-blocker:armhf

You can now set your devices to use the Docker Host's IP Address as the primary DNS resolver, if you are using Docker for Windows or Docker for Mac this will be 127.0.0.1.

Automatic blacklist updates are enabled by default.

Parameters

docker run --restart=always \
  -p 53:53/tcp -p 53:53/udp \
  -e DEBUG=0 \
  -e NS1=1.1.1.1 -e NS2=1.0.0.1 \
  -e AUTO_UPDATE=1 \
  -e BRANCH=master \
  -e DNSCRYPT=0 \
  -v </path/to/config>:/config \
  oznu/dns-ad-blocker

The parameters are split into two halves, separated by a colon, the left hand side representing the host and the right the container side.

  • --restart=always - ensure the container restarts automatically after host reboot.
  • -p 53:53/tcp -p 53:53/udp - expose port 53 on TCP and UDP to the host, required.
  • -e DEBUG - enables debug mode if set to -e DEBUG=1. For verbose logging (including source IP) set -e DEBUG=2.
  • -e NS1 -e NS2 - override the default forward lookup servers. Defaults to Cloudflares's DNS servers (1.1.1.1, 1.0.0.1).
  • -e AUTO_UPDATE - to disable automatic updates to the blacklist set -e AUTO_UPDATE=0. Automatic updates are enabled by default.
  • -e BLACKLIST_URL - the url where the blacklist should be downloaded from, useful if you want to lock the blacklist to a specific branch.
  • -e WHITELIST - a list of domains to exclude from the blacklist (comma separated, no spaces) eg. -e WHITELIST=www.oz.nu,hub.docker.com
  • -e DNSCRYPT=1 - enable DNSCrypt, disabled by default. See below for more details.
  • -v /config - any files with the .conf suffix included in the mounted volume will be included in the dnsmasq config.

AD Blocking

This image is using the blacklists created by oznu/dns-zone-blacklist and StevenBlack/hosts.

The DNS server works by returning NXDOMAIN when a DNS lookup is made by a browser or device to a blacklisted domain. This tells the browser the DNS record for domain name could not be found which means the browser won't even attempt a connection.

If you have found a host you think should be blacklisted please submit an issue on the upstream blacklist, StevenBlack/hosts, as the aim of this project is not to maintain yet another blacklist.

DNSCrypt

DNSCrypt is a protocol that authenticates communications between a DNS client and a DNS resolver. It uses cryptographic signatures to verify that responses originate from the chosen DNS resolver and haven't been tampered with.

Note: Using DNSCrypt does not increase your privacy online and is not a replacement for a VPN. Even if you’re using HTTPS, your browser is sending the website hostname in plain text due to SNI.

This image allows you to enable DNSCrypt for your entire local network or individual workstation without having to install any other client software.

docker run  -d --restart=always -p 53:53/tcp -p 53:53/udp -e DNSCRYPT=1 oznu/dns-ad-blocker
  • -e DNSCRYPT - To enable DNSCrypt set DNSCRYPT=1. Disabled by default.
  • -e DNS_CRYPT_SERVERS - a comma seperated (no spaces) list of servers to use. Defaults to cloudflare,cloudflare-ipv6.

Enabling DNSCrypt will override the NS1 and NS2 forward lookup server options.

See the offical list of DNSCrypt resolvers for alternative providers if you don't want to use Cloudflare DNS.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].