From 5b8d596ab9df3a7bd86892e7206a18f67d61e43e Mon Sep 17 00:00:00 2001 From: Matteo Croce Date: Thu, 2 Jul 2015 21:58:16 +0200 Subject: [PATCH] add list of domains serving advertising Add a script to download a list of domains which serves ads. This list can be used to block these servers in the DNS server. --- utils/banhosts/Makefile | 40 ++++++++++++++++++++++++++++++ utils/banhosts/files/updatebanhost | 19 ++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 utils/banhosts/Makefile create mode 100644 utils/banhosts/files/updatebanhost diff --git a/utils/banhosts/Makefile b/utils/banhosts/Makefile new file mode 100644 index 0000000000..0087a6ff1e --- /dev/null +++ b/utils/banhosts/Makefile @@ -0,0 +1,40 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=banhostlist +PKG_VERSION:=1 +PKG_RELEASE:=1 + +PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_MAINTAINER:=Matteo Croce +PKG_LICENCE:=GPL-2.0 + +include $(INCLUDE_DIR)/package.mk + +define Package/banhostlist + SECTION:=utils + CATEGORY:=Utilities + TITLE:=List of advertising domains + URL:=http://winhelp2002.mvps.org/ +endef + +define Package/banhostlist/description +List of domains serving advertising and malicious content to easily block them +endef + + +define Build/Compile/Default +endef + +define Package/banhostlist/install + $(INSTALL_DIR) $(1)/etc/hotplug.d/iface + $(INSTALL_BIN) ./files/updatebanhost $(1)/etc/hotplug.d/iface/80-banhosts +endef + +$(eval $(call BuildPackage,banhostlist)) diff --git a/utils/banhosts/files/updatebanhost b/utils/banhosts/files/updatebanhost new file mode 100644 index 0000000000..a00d9cb6bd --- /dev/null +++ b/utils/banhosts/files/updatebanhost @@ -0,0 +1,19 @@ +#!/bin/sh + +file=/tmp/banhost + +gethosts() { + logger -t "banhost[$$]" "Update $file" + wget -qO- http://winhelp2002.mvps.org/hosts.txt |awk 'BEGIN{printf "0.0.0.0"}/^0\.0\.0\.0/{printf " "$2}END{exit(!FNR)}' >$file || exit 1 + echo -n $time >$file.time + exec killall -HUP dnsmasq +} + +if [ "$ACTION" = ifup -a "$INTERFACE" = wan ]; then + read time