Bug 22478 - bind9 9.8.x importieren/paketieren für Samba4 Kerberos DNS dynamic updates
bind9 9.8.x importieren/paketieren für Samba4 Kerberos DNS dynamic updates
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: DNS
UNSTABLE
Other Linux
: P5 enhancement (vote)
: UCS 3.0 - MS1
Assigned To: Felix Botner
Arvid Requate
https://lists.isc.org/pipermail/bind-...
:
: 23131 (view as bug list)
Depends on:
Blocks: 23168
  Show dependency treegraph
 
Reported: 2011-05-10 16:30 CEST by Arvid Requate
Modified: 2011-12-13 15:50 CET (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
angepasster Debian Patch (1.19 MB, patch)
2011-07-28 16:06 CEST, Felix Botner
Details | Diff
Patch für die Anpassungen am Debian Verzeichnis bzgl. der neuen Upstream Version (13.31 KB, patch)
2011-07-28 16:06 CEST, Felix Botner
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arvid Requate univentionstaff 2011-05-10 16:30:04 CEST
Die aktuell für Kerberos DNS dynamic updates (GSS-TSIG) gegen Samba4-Server  empfohlene Version von bind9 ist Version 9.8.0:
 http://ftp.isc.org/isc/bind9/9.8.0/RELEASE-NOTES-BIND-9.8.html

Die Paketierung dieser Version von bind9 wäre daher für UCS 3.0 zu empfehlen.
Comment 1 Felix Botner univentionstaff 2011-07-28 16:03:42 CEST
Vorgehen.

   * unser Source Paket von bind9 geladen (apt-get source bind9)
   * upstream Tar Archiv geladen
   * uupdate im alten Source Verzeichnis -> Fehler das Debian Patch nicht
     angewendet werden kann
   * Debian Patch angepasst (siehe unten)
   * Patch aus http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625988
     geladen und angepasst, damit wird das debian Verzeichnis aus dem
     alten Source Paket für die neue Upstream Version angepasst
   * Source Paket gebaut und in repo geladen

   * die Patches 00-fix-build.patch 040_bind9_ldap.patch  
     060_bind9_ldap_openldap2.4.patch für die neuen Version in repo
     aktiviert (ldap support, ...)


Anpassungen am Original Debian Patch:
   
   * Änderungen an den Dateien 
      aclocal.m4
      config.sub
      config.guess, 
      config.h.in
      mkinstalldirs
      ltmain.sh
      configure 
     wurden nicht übernommen

   * Änderungen an diesen Datei wurden angepasst (meist entfernt, da die 
     Änderungen bereits Upstream waren) 
      configure.in
      lib/isccfg/aclconf.c
      lib/dns/message.c
      lib/dns/validator.c
      lib/dns/masterdump.c
      lib/dns/nsec3.c
      lib/dns/resolver.c
      lib/dns/rdataset.c
      lib/dns/ncache.c
      lib/dns/rbtdb.c
      lib/dns/include/dns/ncache.h
      lib/dns/include/dns/rdataset.h
      lib/dns/include/dns/masterdump.h

   * Änderung an folgenden Debian Files wurden gemacht
      rules (autoconf wird vor configure aufgerufen, da neue configure.in)
      changelog (auto-build Eintrag entfertn)
      control (automake in build-deps aufgenommen)
Comment 2 Felix Botner univentionstaff 2011-07-28 16:06:17 CEST
Created attachment 3410 [details]
angepasster Debian Patch
Comment 3 Felix Botner univentionstaff 2011-07-28 16:06:58 CEST
Created attachment 3411 [details]
Patch für die Anpassungen am Debian Verzeichnis bzgl. der neuen Upstream Version
Comment 4 Felix Botner univentionstaff 2011-07-28 16:08:41 CEST
Paket gebaut und kurz getestet.
Comment 5 Arvid Requate univentionstaff 2011-08-01 14:20:33 CEST
bind9 kann seit UCS 3.0 seine PID-Datei etc. nicht mehr schreiben, weil dafür nicht mehr das Verzeichnis /var/run/bind/run/ sondern /var/run/named/ verwendet wird. Für /var/run/named/  müssten daher Schreibrechte für die Gruppe bind gegeben werden,

Sep 15 17:54:46 qamaster named[10088]: could not open file '/var/run/named/named.pid': Permission denied
Comment 6 Arvid Requate univentionstaff 2011-08-01 16:00:03 CEST
Ich hatte den Eindruck, dass Änderungen von IP-Adressen an host_recrod Objekten
im LDAP nicht vom univention-bind-proxy übernommen wurden. Unter
/var/cache/bind lag ein core und /var/cache/bind/univention.qa.zone war
unverändert. Erst das Löschen der Datei und ein resync auf das Listener Modul
"bind" hat die Cachedatei neu geschrieben.

Das Problem liegt ggf. aber auch nicht an bind9.8.
Comment 7 Arvid Requate univentionstaff 2011-08-01 16:00:21 CEST
*** Bug 23131 has been marked as a duplicate of this bug. ***
Comment 8 Felix Botner univentionstaff 2011-08-04 13:39:55 CEST
(In reply to comment #5)
> bind9 kann seit UCS 3.0 seine PID-Datei etc. nicht mehr schreiben, weil dafür
> nicht mehr das Verzeichnis /var/run/bind/run/ sondern /var/run/named/ verwendet
> wird. Für /var/run/named/  müssten daher Schreibrechte für die Gruppe bind
> gegeben werden,
> 
> Sep 15 17:54:46 qamaster named[10088]: could not open file
> '/var/run/named/named.pid': Permission denied

Dieses Verzeichnis wird nun in den univention-bind* Startskripten entsprechend angelegt (wie es auch im debian init Skript gemacht wird).


(In reply to comment #6)
> Ich hatte den Eindruck, dass Änderungen von IP-Adressen an host_recrod Objekten
> im LDAP nicht vom univention-bind-proxy übernommen wurden. Unter
> /var/cache/bind lag ein core und /var/cache/bind/univention.qa.zone war
> unverändert. Erst das Löschen der Datei und ein resync auf das Listener Modul
> "bind" hat die Cachedatei neu geschrieben.
> 
> Das Problem liegt ggf. aber auch nicht an bind9.8.

Das konnte ich nicht nachvollziehen. DNS HostRecord angelegt und nach einer Weile (ohne expliziten Neustart von bind) konnte der Name aufgelöst werden, ebenso beim Löschen des HostRecord.
Comment 9 Arvid Requate univentionstaff 2011-08-04 16:58:54 CEST
Wir sollten bind9 mit der configure Option --with-dlz-dlopen bauen, damit bind9
in named.conf die Anweisung

  'database "dlopen auf /usr/lib/samba/libdlz_bind9.so"'

akzeptiert, siehe Bug 23168.
Comment 10 Felix Botner univentionstaff 2011-08-04 17:30:21 CEST
bind9 ist nochmal mit "--with-dlz-dlopen" für 3.0 gebaut.
Comment 11 Arvid Requate univentionstaff 2011-08-10 14:51:09 CEST
Changelog Eintrag fehlt noch?

012_configure_bdb.patch und 010_control.patch wurden nicht übernommen. Vermutlich ist das aber egal, weil wir keine bdb-Datenbanken für bind verwenden. Etwas seltsam daran ist, dass in debian/control als Build-Dependency libdb-dev (>>4.6) steht, aber dann gegen db4.6 gelinkt wird. Hmm..

bind9 funktioniert sonst normal, insbesondere die LDAP Patches sind übernommen und der named ist mit --with-dlz-dlopen gebaut.
Comment 12 Stefan Gohmann univentionstaff 2011-08-10 15:00:53 CEST
(In reply to comment #11)
> Changelog Eintrag fehlt noch?

Hier reicht ein Eintrag an diesem Bug #22136.
Comment 13 Felix Botner univentionstaff 2011-08-15 15:00:15 CEST
(In reply to comment #12)
> 012_configure_bdb.patch und 010_control.patch wurden nicht übernommen.
> Vermutlich ist das aber egal, weil wir keine bdb-Datenbanken für bind
> verwenden. Etwas seltsam daran ist, dass in debian/control als Build-Dependency
> libdb-dev (>>4.6) steht, aber dann gegen db4.6 gelinkt wird. Hmm..

bind9 ist nun so gepatched, dass er gegen db4.8 geht.

(In reply to comment #12)
> Hier reicht ein Eintrag an diesem Bug #22136.

Wurde am Bug kommentiert.

Im Moment gibt es noch eine merkwürdige Sache. "host -l domain" scheint nicht ganz zu funktionieren.

-> host -l drei
; Transfer failed.
drei name server master.drei.
master.drei has address 10.200.7.133

syslog:
named[1497]: client 10.200.7.133#41142: bad zone transfer request: 
             'drei.drei/IN': non-authoritative zone (NOTAUTH)
named[1497]: client 10.200.7.133#49751: transfer of 'drei/IN': AXFR started
named[1497]: client 10.200.7.133#49751: transfer of 'drei/IN': AXFR ended

Jedoch funktioniert dies.

-> host -l drei.
drei name server master.drei.
master.drei has address 10.200.7.133

syslog:
named[1497]: client 10.200.7.133#57143: transfer of 'drei/IN': AXFR started
named[1497]: client 10.200.7.133#57143: transfer of 'drei/IN': AXFR ended

Ich muss hier nochmal schauen, ob das Probleme machen könnte oder ob die Konfiguration da noch kaputt ist.
Comment 14 Felix Botner univentionstaff 2011-08-15 17:19:29 CEST
(In reply to comment #13)
> (In reply to comment #12)
> > 012_configure_bdb.patch und 010_control.patch wurden nicht übernommen.
> > Vermutlich ist das aber egal, weil wir keine bdb-Datenbanken für bind
> > verwenden. Etwas seltsam daran ist, dass in debian/control als Build-Dependency
> > libdb-dev (>>4.6) steht, aber dann gegen db4.6 gelinkt wird. Hmm..
> 
> bind9 ist nun so gepatched, dass er gegen db4.8 geht.
> 
> (In reply to comment #12)
> > Hier reicht ein Eintrag an diesem Bug #22136.
> 
> Wurde am Bug kommentiert.
> 
> Im Moment gibt es noch eine merkwürdige Sache. "host -l domain" scheint nicht
> ganz zu funktionieren.
> 
> -> host -l drei
> ; Transfer failed.
> drei name server master.drei.
> master.drei has address 10.200.7.133
> 
> syslog:
> named[1497]: client 10.200.7.133#41142: bad zone transfer request: 
>              'drei.drei/IN': non-authoritative zone (NOTAUTH)
> named[1497]: client 10.200.7.133#49751: transfer of 'drei/IN': AXFR started
> named[1497]: client 10.200.7.133#49751: transfer of 'drei/IN': AXFR ended
> 
> Jedoch funktioniert dies.
> 
> -> host -l drei.
> drei name server master.drei.
> master.drei has address 10.200.7.133
> 
> syslog:
> named[1497]: client 10.200.7.133#57143: transfer of 'drei/IN': AXFR started
> named[1497]: client 10.200.7.133#57143: transfer of 'drei/IN': AXFR ended
> 
> Ich muss hier nochmal schauen, ob das Probleme machen könnte oder ob die
> Konfiguration da noch kaputt ist.

Da "host -l drei" trotz Warnung funktioniert (im syslog sieht man das erste drei.drei/IN versucht wird, dann aber auch drei/IN), der Output OK ist und ich auch sonst keine Hinweise gefunden habe, dass das ein Problem verursachen könnte, mache ich den Bug erst einmal zu. Bitte in der QA vielleicht auch nochmal diesbezüglich recherchieren.
Comment 15 Arvid Requate univentionstaff 2011-08-17 12:34:42 CEST
TODO:

Vermutlich sollten die cd-contents/ucs_3.0-0_*_dvd.txt  Listen noch angepaast werden, da steht noch:
 ./libdns46_9.5.1.dfsg.P1-2.59.201005191431_i386.deb

Analog für die anderen Binärpakete, der Namen versionsabhängig sind, z.B. :

for bp in libbind9- libdns libisc liblwres libisccc libisccfg; do
 grep ${bp}[0-9][0-9] \
    /var/univention/buildsystem2/cd-contents/ucs_3.0-0_i386_dvd.txt;
done



Vielleicht kann buildsystem2/apt/ucs_3.0-0/*/libdns69_9.7.3.dfsg-*.deb entfernt werden, analog für die anderen Binärpakete, der Namen versionsabhängig sind:

for bp in libbind9- libdns libisc liblwres libisccc libisccfg; do
 ls /var/univention/buildsystem2/apt/ucs_3.0-0/*/${bp}[0-9][0-9]*.deb | head -1;
done



Nicht so schön: Der 040_bind9_ldap.patch Passt nur noch mit fuzz 2, das ist potentiell gefährlich:
-----------------------
patching file bin/named/main.c

Hunk #1 succeeded at 80 with fuzz 2 (offset 10 lines).

Hunk #2 succeeded at 856 with fuzz 2 (offset 185 lines).

Hunk #3 succeeded at 883 with fuzz 2 (offset 195 lines).
-----------------------
In diesem Fall reicht die eine Zeile Kontext in allen Fällen aus.



Bisher VERIFIED:

 * Die aktuelle Version aus http://www.isc.org/software/bind/ wurde paketiert

 * 9.8.0.P4 ist mit Unterstützung für dlz-dlopen konfiguriert.

 * 040_bind9_ldap.patch und 060_bind9_ldap_openldap2.4.patch wurden unmodifiziert übernommen und beim Paketbau angewendet (ucs_3.0-0.bind9.201108151400.log.bz2).

 * Unsere Konfiguration per univention-bind und univention-bind-proxy funktioniert weiterhin.
Comment 16 Arvid Requate univentionstaff 2011-08-17 12:40:29 CEST
Der Patch aus Comment 2 führt nebenbei geoip-Suuprt mit in das configure-Skript usw ein, siehe http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625988#12 .
Ich denke das sollten wir in debian/rules nicht mit aktivieren, d.h.

 +		--with-geoip=/usr \

sollte raus.
Comment 17 Felix Botner univentionstaff 2011-08-17 13:14:31 CEST
(In reply to comment #16)
> Der Patch aus Comment 2 führt nebenbei geoip-Suuprt mit in das configure-Skript
> usw ein, siehe http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625988#12 .
> Ich denke das sollten wir in debian/rules nicht mit aktivieren, d.h.
> 
>  +        --with-geoip=/usr \
> 
> sollte raus.

Das (-with-geoip=/usr) kommt so aus dem Debian Squeeze Paket von bind9, die geoip Geschichten von http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625988#12 wurden NICHT übernommen.
Comment 18 Felix Botner univentionstaff 2011-08-17 13:32:31 CEST
cd-contents/ucs_3.0-0_*_dvd.txt wird später angepasst.
Comment 19 Arvid Requate univentionstaff 2011-08-17 13:55:42 CEST
Verified. Die alten 9.7.3 Pakete sind jetzt auch entfernt.
Comment 20 Sönke Schwardt-Krummrich univentionstaff 2011-12-13 15:50:36 CET
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert
werden: "Clone This Bug"