diff options
author | root <root@rshg054.dnsready.net> | 2013-04-28 01:12:25 -0700 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2013-04-28 01:12:25 -0700 |
commit | f38edbff3878008c8b2ae1ca8a496c349763017b (patch) | |
tree | 4f9ff6891842a0a6dcd9c0c8424ec8f16527e023 /community/bind | |
parent | a27a6af53095da314eca1d33911f72775dfc2bce (diff) |
Sun Apr 28 01:11:42 PDT 2013
Diffstat (limited to 'community/bind')
-rw-r--r-- | community/bind/127.0.0.zone | 11 | ||||
-rw-r--r-- | community/bind/PKGBUILD | 85 | ||||
-rw-r--r-- | community/bind/install | 21 | ||||
-rw-r--r-- | community/bind/localhost.zone | 10 | ||||
-rwxr-xr-x | community/bind/named | 49 | ||||
-rw-r--r-- | community/bind/named.conf | 64 | ||||
-rw-r--r-- | community/bind/named.conf.d | 4 | ||||
-rw-r--r-- | community/bind/named.logrotate | 6 | ||||
-rw-r--r-- | community/bind/named.service | 11 | ||||
-rw-r--r-- | community/bind/remove-tools.patch | 12 | ||||
-rw-r--r-- | community/bind/tmpfiles.d | 1 |
11 files changed, 274 insertions, 0 deletions
diff --git a/community/bind/127.0.0.zone b/community/bind/127.0.0.zone new file mode 100644 index 000000000..509c311f6 --- /dev/null +++ b/community/bind/127.0.0.zone @@ -0,0 +1,11 @@ +$ORIGIN 0.0.127.in-addr.arpa. + +@ 1D IN SOA localhost. root.localhost. ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS localhost. +1 1D IN PTR localhost. diff --git a/community/bind/PKGBUILD b/community/bind/PKGBUILD new file mode 100644 index 000000000..4cff0b633 --- /dev/null +++ b/community/bind/PKGBUILD @@ -0,0 +1,85 @@ +# $Id: PKGBUILD 89171 2013-04-27 13:07:51Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> +# Contributor: Mario Vazquez <mario_vazq@hotmail.com> + +pkgname=bind +_pkgver=9.9.2-P2 +pkgver=${_pkgver//-/.} +pkgrel=1 +pkgdesc='Berkeley Internet Name Daemon is the reference implementation of the DNS protocols' +url='http://www.isc.org/software/bind/' +license=('custom:ISC') +arch=('i686' 'x86_64') +options=('!makeflags' '!libtool') +depends=('openssl' 'krb5' 'libxml2') +source=("http://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz" + 'root.hint::http://www.internic.net/zones/named.root' + 'remove-tools.patch' + 'tmpfiles.d' + 'named' + 'named.conf' + 'named.conf.d' + 'named.service' + 'named.logrotate' + 'localhost.zone' + '127.0.0.zone') +sha1sums=('3aadeaf64164a31a1cf22737ff2eea706792b68d' + '029f89c49550c40ec7a95116b6a33f0e5a041094' + '14264affa71bcfe7703d0fb7c3556c4c47efaa8b' + 'c5a2bcd9b0f009ae71f3a03fbdbe012196962a11' + '47f9ac4f6f70bc9167c1cf7859a298531197ad20' + 'c71a7fc02d4bf0d55e8e29d1e014607ac1d58726' + '7848edbfb9a848843f57c11c02b0289eefd42d00' + '7de92fff4b90c4821b3b133a05affd186fb93951' + '3fe1f0b5c1a51dc1db9ebe5e173d18c52c97169b' + '76a0d4cd1b913db177a5a375bebc47e5956866ec' + '53be0f1437ebe595240d8dbdd819939582b97fb9') +provides=('dns-server') + +install=install +backup=('etc/logrotate.d/named' + 'etc/conf.d/named' + 'etc/named.conf') + +build() { + cd "${srcdir}/bind-${_pkgver}" + + patch -p1 -i ../remove-tools.patch + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-static \ + --disable-linux-caps \ + --with-openssl \ + --with-libxml2 \ + --with-libtool \ + + make +} + +package() { + cd "${srcdir}/bind-${_pkgver}" + + install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + make DESTDIR="${pkgdir}" install + + rmdir "${pkgdir}/var/run" + install -d "${pkgdir}"/usr/share/doc/bind + install doc/arm/*.html "${pkgdir}"/usr/share/doc/bind + + install -D -m755 ../named "${pkgdir}"/etc/rc.d/named + install -D -m644 ../tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/named.conf + install -D -m644 ../named.conf.d "${pkgdir}"/etc/conf.d/named + install -D -m644 ../named.service "${pkgdir}"/usr/lib/systemd/system/named.service + install -D -m600 ../named.logrotate "${pkgdir}"/etc/logrotate.d/named + install -D -m640 -o 0 -g 40 ../named.conf "${pkgdir}"/etc/named.conf + + install -d -m750 -o 0 -g 40 "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../root.hint "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../127.0.0.zone "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../localhost.zone "${pkgdir}"/var/named +} diff --git a/community/bind/install b/community/bind/install new file mode 100644 index 000000000..287d0e05b --- /dev/null +++ b/community/bind/install @@ -0,0 +1,21 @@ +post_install() { + getent group named &>/dev/null || groupadd -g 40 named + getent passwd named &>/dev/null || useradd -u 40 -c "BIND DNS Server" -g named -d /var/named -s /bin/false named + passwd -l named &>/dev/null + + touch var/log/named.log + chown named:named var/log/named.log + + # create an rndc.key if it doesn't already exist + if [[ ! -s etc/rndc.key ]]; then + usr/sbin/rndc-confgen -r /dev/urandom -b 256 | head -n 5 >>etc/rndc.key + chown root:named etc/rndc.key + chmod 640 etc/rndc.key + fi +} + +pre_remove() { + getent passwd named &>/dev/null && userdel named >/dev/null + getent group named &>/dev/null && groupdel named >/dev/null + return 0 +} diff --git a/community/bind/localhost.zone b/community/bind/localhost.zone new file mode 100644 index 000000000..e3ff9641c --- /dev/null +++ b/community/bind/localhost.zone @@ -0,0 +1,10 @@ +$ORIGIN localhost. +@ 1D IN SOA @ root ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS @ + 1D IN A 127.0.0.1 diff --git a/community/bind/named b/community/bind/named new file mode 100755 index 000000000..65dd0fe82 --- /dev/null +++ b/community/bind/named @@ -0,0 +1,49 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/named + +PIDFILE=/run/named/named.pid +PID=$(cat $PIDFILE 2>/dev/null) +readlink -q /proc/$PID/exe | grep -q '^/usr/sbin/named' || { PID=; rm $PIDFILE 2>/dev/null; } + +case "$1" in + start) + stat_busy "Starting BIND" + [ -z "$PID" ] && /usr/sbin/named ${NAMED_ARGS} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon named + stat_done + fi + ;; + stop) + stat_busy "Stopping BIND" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon named + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + reload) + stat_busy "Reloading BIND" + [ ! -z "$PID" ] && rndc reload &>/dev/null || kill -HUP $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + *) + echo "usage: $0 {start|stop|reload|restart}" +esac +exit 0 diff --git a/community/bind/named.conf b/community/bind/named.conf new file mode 100644 index 000000000..4aaf19a49 --- /dev/null +++ b/community/bind/named.conf @@ -0,0 +1,64 @@ +// +// /etc/named.conf +// + +options { + directory "/var/named"; + pid-file "/run/named/named.pid"; + auth-nxdomain yes; + datasize default; +// Uncomment these to enable IPv6 connections support +// IPv4 will still work: +// listen-on-v6 { any; }; +// Add this for no IPv4: +// listen-on { none; }; + + // Default security settings. + allow-recursion { 127.0.0.1; }; + allow-transfer { none; }; + allow-update { none; }; + version none; + hostname none; + server-id none; +}; + +zone "localhost" IN { + type master; + file "localhost.zone"; + allow-transfer { any; }; +}; + +zone "0.0.127.in-addr.arpa" IN { + type master; + file "127.0.0.zone"; + allow-transfer { any; }; +}; + +zone "." IN { + type hint; + file "root.hint"; +}; + +//zone "example.org" IN { +// type slave; +// file "example.zone"; +// masters { +// 192.168.1.100; +// }; +// allow-query { any; }; +// allow-transfer { any; }; +//}; + +logging { + channel xfer-log { + file "/var/log/named.log"; + print-category yes; + print-severity yes; + print-time yes; + severity info; + }; + category xfer-in { xfer-log; }; + category xfer-out { xfer-log; }; + category notify { xfer-log; }; +}; + diff --git a/community/bind/named.conf.d b/community/bind/named.conf.d new file mode 100644 index 000000000..aecbd2307 --- /dev/null +++ b/community/bind/named.conf.d @@ -0,0 +1,4 @@ +# +# Parameters to be passed to BIND +# +NAMED_ARGS="-u named" diff --git a/community/bind/named.logrotate b/community/bind/named.logrotate new file mode 100644 index 000000000..5f9a47693 --- /dev/null +++ b/community/bind/named.logrotate @@ -0,0 +1,6 @@ +/var/log/named.log { + missingok + postrotate + /bin/kill -HUP `cat /run/named/named.pid 2>/dev/null` 2>/dev/null || true + endscript +} diff --git a/community/bind/named.service b/community/bind/named.service new file mode 100644 index 000000000..c21f13f4b --- /dev/null +++ b/community/bind/named.service @@ -0,0 +1,11 @@ +[Unit] +Description=Internet domain name server +After=network.target + +[Service] +ExecStart=/usr/sbin/named -f -u named +ExecReload=/usr/sbin/rndc reload +ExecStop=/usr/sbin/rndc stop + +[Install] +WantedBy=multi-user.target diff --git a/community/bind/remove-tools.patch b/community/bind/remove-tools.patch new file mode 100644 index 000000000..29b4c9c5f --- /dev/null +++ b/community/bind/remove-tools.patch @@ -0,0 +1,12 @@ +diff -aur old/bin/Makefile.in new/bin/Makefile.in +--- old/bin/Makefile.in 2009-10-05 05:07:08.000000000 -0700 ++++ new/bin/Makefile.in 2011-08-28 19:14:17.025674400 -0700 +@@ -19,7 +19,7 @@ + VPATH = @srcdir@ + top_srcdir = @top_srcdir@ + +-SUBDIRS = named rndc dig dnssec tests tools nsupdate \ ++SUBDIRS = named rndc dnssec tests tools nsupdate \ + check confgen @PYTHON_TOOLS@ @PKCS11_TOOLS@ + TARGETS = + diff --git a/community/bind/tmpfiles.d b/community/bind/tmpfiles.d new file mode 100644 index 000000000..1cfc82d08 --- /dev/null +++ b/community/bind/tmpfiles.d @@ -0,0 +1 @@ +d /run/named 0750 named named - |