summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJorge Barroso2015-06-15 21:27:31 +0200
committerJorge Barroso2015-06-15 21:27:31 +0200
commitc9115e092d6274a93ec7770ecfa8b51d8514b1a3 (patch)
treef4780e163d0d0f2f3448a267d4ed8c7b85709a87
downloadaur-c9115e092d6274a93ec7770ecfa8b51d8514b1a3.tar.gz
Initial import
-rw-r--r--.AURINFO18
-rw-r--r--.SRCINFO22
-rw-r--r--50-adsuck-update16
-rw-r--r--PKGBUILD37
-rw-r--r--adsuck.install33
-rw-r--r--adsuck.service11
-rw-r--r--filter34
7 files changed, 171 insertions, 0 deletions
diff --git a/.AURINFO b/.AURINFO
new file mode 100644
index 000000000000..b1c09de4e675
--- /dev/null
+++ b/.AURINFO
@@ -0,0 +1,18 @@
+pkgbase = adsuck
+ pkgdesc = DNS filter
+ pkgver = 2.5.0
+ pkgrel = 4
+ url = http://opensource.conformal.com/wiki/Adsuck
+ install = adsuck.install
+ arch = any
+ license = BSD
+ depends = ldns
+ depends = libevent
+ source = http://opensource.conformal.com/snapshots/adsuck/adsuck-2.5.0.tgz
+ source = 50-adsuck-update
+ source = filter
+ source = adsuck.service
+ backup = var/adsuck/filter
+
+pkgname = adsuck
+
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..d68587d1e499
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = adsuck
+ pkgdesc = DNS filter
+ pkgver = 2.5.0
+ pkgrel = 4
+ url = http://opensource.conformal.com/wiki/Adsuck
+ install = adsuck.install
+ arch = any
+ license = BSD
+ depends = ldns
+ depends = libevent
+ backup = var/adsuck/filter
+ source = http://opensource.conformal.com/snapshots/adsuck/adsuck-2.5.0.tgz
+ source = 50-adsuck-update
+ source = filter
+ source = adsuck.service
+ sha512sums = 5c4a2747d77c7cafe6115814f342f6f63bc5aac049f3d061e25153727cd1885219b5c826579100e2620f3613de19520231c7472af77b709c0896f1b7f594a1db
+ sha512sums = bed32b5aa6174a7973d2405e6b6f9ab33434e493043222329d6ecf8982a939bb029720b590668276031f0d049cea7b9fd4c127daec502e2b08877cf151476dde
+ sha512sums = b0a76aeb116c058b888d21b119d44a2eccb1410cd7b1987b5167059855091bb6b52b8ec9ebd8504ba9d82a1489e52c8d3a19927f0841161977f7a8d8f3a7e58e
+ sha512sums = 74f33eb005187cb48eca121f8b05001823f0df5c9d244755d53061b91b8dd2bc8e8fa645b183420fc01f938724af8882b40844d797843b6cc16e57f83c1a06ad
+
+pkgname = adsuck
+
diff --git a/50-adsuck-update b/50-adsuck-update
new file mode 100644
index 000000000000..bac8efbb89d1
--- /dev/null
+++ b/50-adsuck-update
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+if have_daemon adsuck; then
+ # copy the resolv.conf generated by dhcpcd to the adsuck directory
+ cp -f /etc/resolv.conf /var/adsuck/
+fi
+
+if ! ck_daemon adsuck; then
+ # create a new resolv.conf containing one entry pointing to the loopback device
+ echo "nameserver 127.0.0.1" > /etc/resolv.conf
+ # make adsuck reload the config to make sure the new resolv.conf file is read
+ /etc/rc.d/adsuck reload
+fi \ No newline at end of file
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..24e2ed2a9754
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,37 @@
+#!/bin/bash
+# Contributor: Mimas <mimasgpc+pkgbuild@free.fr> (http://forums.archlinux.fr/topic5585.html)
+# Contributor: acoolon <@web.de>
+# Maintainer: jorge_barroso <jorge.barroso.11@gmail.com>
+
+pkgname=adsuck
+pkgver=2.5.0
+pkgrel=4
+pkgdesc="DNS filter"
+arch=(any)
+backup=('var/adsuck/filter')
+url=http://opensource.conformal.com/wiki/Adsuck
+license=(BSD)
+depends=(ldns libevent)
+install=adsuck.install
+source=("http://opensource.conformal.com/snapshots/${pkgname}/${pkgname}-${pkgver}.tgz"
+ 50-adsuck-update filter adsuck.service)
+sha512sums=('5c4a2747d77c7cafe6115814f342f6f63bc5aac049f3d061e25153727cd1885219b5c826579100e2620f3613de19520231c7472af77b709c0896f1b7f594a1db'
+ 'bed32b5aa6174a7973d2405e6b6f9ab33434e493043222329d6ecf8982a939bb029720b590668276031f0d049cea7b9fd4c127daec502e2b08877cf151476dde'
+ 'b0a76aeb116c058b888d21b119d44a2eccb1410cd7b1987b5167059855091bb6b52b8ec9ebd8504ba9d82a1489e52c8d3a19927f0841161977f7a8d8f3a7e58e'
+ '74f33eb005187cb48eca121f8b05001823f0df5c9d244755d53061b91b8dd2bc8e8fa645b183420fc01f938724af8882b40844d797843b6cc16e57f83c1a06ad')
+
+build()
+{
+ cd "${pkgname}-${pkgver}"
+ make -f GNUmakefile adsuck
+}
+
+package()
+{
+ install -D -m700 "${srcdir}/${pkgname}-${pkgver}/adsuck" "${pkgdir}/usr/sbin/adsuck"
+ install -D "${srcdir}/${pkgname}-${pkgver}/adsuck.8" "${pkgdir}/usr/share/man/man8/adsuck.8"
+ install -D -m644 "${srcdir}/filter" "${pkgdir}/var/adsuck/filter"
+ install -D -m755 "${srcdir}/adsuck.service" "${pkgdir}/usr/lib/systemd/system/adsuck.service"
+ # uncomment if you want it
+ #install -D -m755 "${srcdir}/50-adsuck-update" "${pkgdir}/usr/lib/dhcpcd/dhcpcd-hooks/50-adsuck-update"
+}
diff --git a/adsuck.install b/adsuck.install
new file mode 100644
index 000000000000..9bd86c243cd0
--- /dev/null
+++ b/adsuck.install
@@ -0,0 +1,33 @@
+#! /bin/bash
+
+post_install() {
+ if [ ! `egrep '^_adsuck:' /etc/group` ]; then
+ echo "Adding adsuck group"
+ groupadd _adsuck
+ fi
+
+ if [ ! `egrep '^_adsuck:' /etc/passwd` ]; then
+ echo "Adding adsuck user"
+ useradd -g _adsuck -d /var/adsuck -s /bin/false _adsuck
+ fi
+ echo 'Now manipulate the regex file /var/adsuck/filter and get your /var/adsuck/hosts file'
+ echo 'Examples: http://www.mvps.org/winhelp2002/hosts.txt'
+ echo ' http://rlwpx.free.fr/WPFF/hosts.htm'
+ echo ' http://pgl.yoyo.org/adservers/serverlist.php?showintro=0;hostformat=hosts'
+ echo 'And make sure your setup with resolv.conf is correct.'
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ echo "Removing adsuck user and group"
+ groupdel _adsuck &> /dev/null
+ userdel _adsuck &> /dev/null
+}
+
+op=$1
+shift
+
+$op $*
diff --git a/adsuck.service b/adsuck.service
new file mode 100644
index 000000000000..ef4187160547
--- /dev/null
+++ b/adsuck.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=A small DNS server that spoofs blacklisted addresses and forwards all other queries.
+After=syslog.target
+Wants=network.target
+Before=network.target
+
+[Service]
+ExecStart=/usr/sbin/adsuck -D -c /var/adsuck -f /resolv.conf /hosts -r /filter
+
+[Install]
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/filter b/filter
new file mode 100644
index 000000000000..cb1606711d23
--- /dev/null
+++ b/filter
@@ -0,0 +1,34 @@
+# computer names
+^count(er)?[0-9]+?\.
+^banners?[0-9]+?\.
+^ad(s|srv|serv|serve|server|v|vert)?[0-9]+?\.
+^clicks?\.
+^[a-z][0-9]+\.[a-z]\.akamaiedge\.net
+^[a-z][0-9]+\.[a-z]\.akastream\.net
+^[a-z][0-9]+\.[a-z]\.akamaitech\.net
+^[a-z][0-9]+\.[a-z]\.a\.yimg\.com
+^[a-z][0-9]+\.[a-z]\.ak\.nbci\.com
+^pub[0-9]\.
+^stats\.
+^s[0-9]\.sitemeter\.com
+^s[0-9]\.cnzz\.com
+^track(er|ing)?\.
+^u.*\.spylog\.com
+# domains
+247realmedia\.com
+\.2o7\.net
+advserv
+adbrite
+adbureau\.net
+adultfriendfinder\.com
+adtech\.com$
+casalemedia
+clickbank
+clickzs\.com$
+cybermonitor\.com
+cqcounter\.com
+liveadvert
+dynamic\.dol\.ru
+doubleclick
+erasercash
+fastclick \ No newline at end of file