diff options
Diffstat (limited to 'community/pdns')
-rw-r--r-- | community/pdns/PKGBUILD | 61 | ||||
-rw-r--r-- | community/pdns/pdns.conf | 417 | ||||
-rw-r--r-- | community/pdns/pdns.install | 11 | ||||
-rw-r--r-- | community/pdns/pdns.service | 12 |
4 files changed, 501 insertions, 0 deletions
diff --git a/community/pdns/PKGBUILD b/community/pdns/PKGBUILD new file mode 100644 index 000000000..ffec56609 --- /dev/null +++ b/community/pdns/PKGBUILD @@ -0,0 +1,61 @@ +# $Id: PKGBUILD 94038 2013-07-13 12:35:15Z svenstaro $ +# Maintainer: Alexander Rødseth <rodseth@gmail.com> +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: Kevin Mihelich <kevin@archlinuxarm.org> + +pkgname=pdns +pkgver=3.3 +pkgrel=2 +pkgdesc='Modern, advanced and high performance authoritative-only nameserver' +arch=('x86_64' 'i686') +url='http://www.powerdns.com/' +license=('GPL') +depends=('boost-libs' 'gcc-libs' 'postgresql-libs' 'libmariadbclient' 'sqlite' 'libldap' 'lua51') +makedepends=('boost') +provides=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +replaces=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +conflicts=('pdns-ldap' 'pdns-mysql' 'pdns-sqlite' 'pdns-pgsql') +install="$pkgname.install" +options=('!makeflags' '!libtool') +backup=('etc/powerdns/pdns.conf') +source=("http://downloads.powerdns.com/releases/$pkgname-$pkgver.tar.gz" + 'pdns.service' + 'pdns.conf') +sha256sums=('93417bb418ccd1eaf85fc98aa9f687ed175de388fa2624a1978b7cd40dc2b0b6' + 'b2358a5951ac944feee15ac03d42ffe9c2a72fa6f57746f77ef8997d54a82040' + 'a1afcccb0d2fb6a6f7a5960de95f8d38ce1ac75ac5e3dcecf09e49f0de10166e') + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + touch AUTHORS NEWS +} + +build() { + cd "$srcdir/$pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc/powerdns \ + --libexecdir=/usr/lib \ + --libdir=/usr/lib/powerdns \ + --mandir=/usr/share/man \ + --with-modules='' \ + --with-dynmodules="ldap pipe gmysql gpgsql gsqlite3 geo" \ + --disable-static \ + --sbindir=/usr/bin \ + --bindir=/usr/bin + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + install -m644 "$srcdir/pdns.conf" "$pkgdir/etc/powerdns/" + install -Dm644 "$srcdir/pdns.service" \ + "$pkgdir/usr/lib/systemd/system/pdns.service" + rm -f "$pkgdir/etc/powerdns/pdns.conf-dist" +} + +# vim:set ts=2 sw=2 et: diff --git a/community/pdns/pdns.conf b/community/pdns/pdns.conf new file mode 100644 index 000000000..e71d7155c --- /dev/null +++ b/community/pdns/pdns.conf @@ -0,0 +1,417 @@ +# Autogenerated configuration file template +################################# +# allow-axfr-ips Allow zonetransfers only to these subnets +# +# allow-axfr-ips=0.0.0.0/0,::/0 + +################################# +# allow-recursion List of subnets that are allowed to recurse +# +allow-recursion=127.0.0.1 + +################################# +# cache-ttl Seconds to store packets in the PacketCache +# +cache-ttl=60 + +################################# +# chroot If set, chroot to this directory for more security +# +chroot=/var/empty + +################################# +# config-dir Location of configuration directory (pdns.conf) +# +config-dir=/etc + +################################# +# config-name Name of this virtual configuration - will rename the binary image +# +# config-name= + +################################# +# control-console Debugging switch - don't use +# +# control-console=no + +################################# +# daemon Operate as a daemon +# +daemon=yes + +################################# +# default-soa-name name to insert in the SOA record if none set in the backend +# +# default-soa-name=a.misconfigured.powerdns.server + +################################# +# default-ttl Seconds a result is valid if not set otherwise +# +# default-ttl=3600 + +################################# +# disable-axfr Disable zonetransfers but do allow TCP queries +# +# disable-axfr=no + +################################# +# disable-tcp Do not listen to TCP queries +# +# disable-tcp=no + +################################# +# distributor-threads Default number of Distributor (backend) threads to start +# +distributor-threads=3 + +################################# +# do-ipv6-additional-processing Do AAAA additional processing +# +# do-ipv6-additional-processing=yes + +################################# +# edns-subnet-option-number EDNS option number to use +# +# edns-subnet-option-number=20730 + +################################# +# edns-subnet-processing If we should act on EDNS Subnet options +# +# edns-subnet-processing=no + +################################# +# entropy-source If set, read entropy from this file +# +# entropy-source=/dev/urandom + +################################# +# experimental-direct-dnskey EXPERIMENTAL: fetch DNSKEY RRs from backend during DNSKEY synthesis +# +# experimental-direct-dnskey=no + +################################# +# experimental-json-interface If the webserver should serve JSON data +# +# experimental-json-interface=no + +################################# +# experimental-logfile Filename of the log file for JSON parser +# +# experimental-logfile=/var/log/pdns.log + +################################# +# fancy-records Process URL and MBOXFW records +# +# fancy-records=no + +################################# +# guardian Run within a guardian process +# +guardian=yes + +################################# +# launch Which backends to launch and order to query them in +# +# launch= + +################################# +# load-modules Load this module - supply absolute or relative path +# +# load-modules= + +################################# +# local-address Local IP addresses to which we bind +# +local-address=127.0.0.1 + +################################# +# local-ipv6 Local IP address to which we bind +# +# local-ipv6= + +################################# +# local-port The port on which we listen +# +local-port=53 + +################################# +# log-dns-details If PDNS should log DNS non-erroneous details +# +# log-dns-details= + +################################# +# log-dns-queries If PDNS should log all incoming DNS queries +# +# log-dns-queries=no + +################################# +# log-failed-updates If PDNS should log failed update requests +# +# log-failed-updates= + +################################# +# logging-facility Log under a specific facility +# +# logging-facility= + +################################# +# loglevel Amount of logging. Higher is more. Do not set below 3 +# +loglevel=3 + +################################# +# lua-prequery-script Lua script with prequery handler +# +# lua-prequery-script= + +################################# +# master Act as a master +# +# master=no + +################################# +# max-cache-entries Maximum number of cache entries +# +# max-cache-entries=1000000 + +################################# +# max-ent-entries Maximum number of empty non-terminals in a zone +# +# max-ent-entries=100000 + +################################# +# max-queue-length Maximum queuelength before considering situation lost +# +# max-queue-length=5000 + +################################# +# max-tcp-connections Maximum number of TCP connections +# +# max-tcp-connections=10 + +################################# +# module-dir Default directory for modules +# +module-dir=/usr/lib/powerdns + +################################# +# negquery-cache-ttl Seconds to store negative query results in the QueryCache +# +negquery-cache-ttl=60 + +################################# +# no-shuffle Set this to prevent random shuffling of answers - for regression testing +# +# no-shuffle=off + +################################# +# out-of-zone-additional-processing Do out of zone additional processing +# +# out-of-zone-additional-processing=yes + +################################# +# overload-queue-length Maximum queuelength moving to packetcache only +# +# overload-queue-length=0 + +################################# +# pipebackend-abi-version Version of the pipe backend ABI +# +# pipebackend-abi-version=1 + +################################# +# query-cache-ttl Seconds to store query results in the QueryCache +# +# query-cache-ttl=20 + +################################# +# query-local-address Source IP address for sending queries +# +# query-local-address=0.0.0.0 + +################################# +# query-local-address6 Source IPv6 address for sending queries +# +# query-local-address6=:: + +################################# +# query-logging Hint backends that queries should be logged +# +# query-logging=no + +################################# +# queue-limit Maximum number of milliseconds to queue a query +# +# queue-limit=1500 + +################################# +# receiver-threads Default number of Distributor (backend) threads to start +# +# receiver-threads=1 + +################################# +# recursive-cache-ttl Seconds to store packets for recursive queries in the PacketCache +# +# recursive-cache-ttl=10 + +################################# +# recursor If recursion is desired, IP address of a recursing nameserver +# +# recursor=no + +################################# +# retrieval-threads Number of AXFR-retrieval threads for slave operation +# +# retrieval-threads=2 + +################################# +# send-root-referral Send out old-fashioned root-referral instead of ServFail in case of no authority +# +# send-root-referral=no + +################################# +# server-id Returned when queried for 'server.id' TXT or NSID, defaults to hostname +# +# server-id= + +################################# +# setgid If set, change group id to this gid for more security +# +setgid=nobody + +################################# +# setuid If set, change user id to this uid for more security +# +setuid=nobody + +################################# +# signing-threads Default number of signer threads to start +# +# signing-threads=3 + +################################# +# slave Act as a slave +# +# slave=no + +################################# +# slave-cycle-interval Reschedule failed SOA serial checks once every .. seconds +# +# slave-cycle-interval=60 + +################################# +# slave-renotify If we should send out notifications for slaved updates +# +# slave-renotify=no + +################################# +# smtpredirector Our smtpredir MX host +# +# smtpredirector=a.misconfigured.powerdns.smtp.server + +################################# +# soa-expire-default Default SOA expire +# +# soa-expire-default=604800 + +################################# +# soa-minimum-ttl Default SOA minimum ttl +# +# soa-minimum-ttl=3600 + +################################# +# soa-refresh-default Default SOA refresh +# +# soa-refresh-default=10800 + +################################# +# soa-retry-default Default SOA retry +# +# soa-retry-default=3600 + +################################# +# soa-serial-offset Make sure that no SOA serial is less than this number +# +# soa-serial-offset=0 + +################################# +# socket-dir Where the controlsocket will live +# +socket-dir=/var/run + +################################# +# strict-rfc-axfrs Perform strictly rfc compliant axfrs (very slow) +# +# strict-rfc-axfrs=no + +################################# +# tcp-control-address If set, PowerDNS can be controlled over TCP on this address +# +# tcp-control-address= + +################################# +# tcp-control-port If set, PowerDNS can be controlled over TCP on this address +# +# tcp-control-port=53000 + +################################# +# tcp-control-range If set, remote control of PowerDNS is possible over these networks only +# +# tcp-control-range=127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10 + +################################# +# tcp-control-secret If set, PowerDNS can be controlled over TCP after passing this secret +# +# tcp-control-secret= + +################################# +# traceback-handler Enable the traceback handler (Linux only) +# +# traceback-handler=yes + +################################# +# trusted-notification-proxy IP address of incoming notification proxy +# +# trusted-notification-proxy= + +################################# +# urlredirector Where we send hosts to that need to be url redirected +# +# urlredirector=127.0.0.1 + +################################# +# version-string PowerDNS version in packets - full, anonymous, powerdns or custom +# +# version-string=full + +################################# +# webserver Start a webserver for monitoring +# +webserver=no + +################################# +# webserver-address IP Address of webserver to listen on +# +# webserver-address=127.0.0.1 + +################################# +# webserver-password Password required for accessing the webserver +# +# webserver-password= + +################################# +# webserver-port Port of webserver to listen on +# +# webserver-port=8081 + +################################# +# webserver-print-arguments If the webserver should print arguments +# +# webserver-print-arguments=no + +################################# +# wildcard-url Process URL and MBOXFW records +# +# wildcard-url=no + + diff --git a/community/pdns/pdns.install b/community/pdns/pdns.install new file mode 100644 index 000000000..f41b36b20 --- /dev/null +++ b/community/pdns/pdns.install @@ -0,0 +1,11 @@ +post_install() { + cat << 'EOM' +==> PowerDNS is built without recursor now. To use the recursor, +==> please install the pdns-recursor package and update the +==> configuration in /etc/powerdns/recursor.conf +EOM +} + +post_upgrade() { + post_install $1 +} diff --git a/community/pdns/pdns.service b/community/pdns/pdns.service new file mode 100644 index 000000000..b544ba73e --- /dev/null +++ b/community/pdns/pdns.service @@ -0,0 +1,12 @@ +[Unit] +Description=PowerDNS Authorative Server +After=syslog.target network.target + +[Service] +Type=forking +ExecStart=/usr/bin/pdns_server --daemon --guardian=yes +ExecReload=/usr/bin/pdns_control cycle +ExecStop=/usr/bin/pdns_control quit + +[Install] +WantedBy=multi-user.target |