Bind9 Probleme

  • Hallo,



    Ich habe ein kleines Problem.
    Folgende aufstellung.


    Hardware: J1900, 8GB DDR3, 2x500GB SSD, 5 IPv4/6 Adressen
    Software: Debian 10 Clean mit Liveconfig, Metapaket, Bind, Nginx, PowerDNS und die ganzen anderen benötigten Pakete.


    Ich verwende in der config jetzt Private IPs wegen Datenschutz
    Folgende Configuration:
    IP1 - 10.0.0.1/::1 - Apache2 HTTP/s, Mailserver In/Out, MySQL Ext, FTP
    IP2 - 10.0.0.2/::2 - Nginx HTTP/s, Mailserver IN
    IP3 - 10.0.0.3/::3 - Apach2 HTTP Only
    IP4 - 10.0.0.4/::4 - NameServer Bind
    IP5 - 10.0.0.5/::5 - NameServer PowerDNS MySQL Backend


    Problem Beschreibung:


    Ich habe Bind per Liveconfig eingerichtet dass dieser nur IP4 nutzt leider kommt es aber immer wieder vor dass dieser Anfragen mit Anderen als ihm zugeteilten IPs beantwortet oder absendet.


    PowerDNS ist sohingehend eingerichtet als Slave für Bind und SuperMaster für nen Externen SlaveServer mit Gesonderter IP.


    Mein Problem ist jetzt wenn ich PowerDNS mit bind Backend betreibe werden auf dem Ext. Slave die zonen nicht geupdatet.
    Intern nutzt er ja die Bind Backend und bekommt somit alle änderungen ohne AFXR durch dierekt zugriff auf die Zone-Files.


    Ich wollte jetzt PowerDNS als Slave Only einrichten und den Externen als SuperSlave für den Slave.
    damit am Externen DNS keine handeingriffe erforderlich sind. (Übertragung per TSIG Gesichert)


    Bekomme jetzt aber immer die folgenden Meldungen,
    "Received NOTIFY for domain.tld from IP1 but remote is not permitted by TSIG or allow-notify-from"
    "Received NOTIFY for domain.tld from IP1which is not a master"


    Gibt es eine Möglichkeit per custom.lua die Bindconfig so anzupassen dass dieser nurnoch auf 127.0.0.1 läuft?
    Den könnte ich den als Hidden Primary nutzen und die config so gehend anpassen dass der Bind-Server nurnoch intern Argiert und nicht mehr extern und könnte PowerDNS so einrichten dass er die Zonefiles von Bind ausliest und an den Slave weiter reicht.

  • Vielleicht findest du in

    Code
    bind.LOCALOPTIONS = {
    --  ['allow-transfer'] = "{ ...; }"
      ['check-names'] = "master warn",
      ['allow-notify'] = "{none;}",
      ['notify-source'] = "...",
      ['transfer-source'] = "...",
      ['alt-transfer-source'] = "...",
      ['query-source'] = "...",
      ['transfers-per-ns'] = "...",
    }


    was passendes. Dies wird in /usr/lib/liveconfig/lua/custom.lua eingetragen. Dann LC restart und DNS evtl. neu schreiben.

    # Das Gras wächst nicht schneller wenn man daran zieht # Bitte keine inflationären Vollzitate #

  • Mein Problem ist jetzt wenn ich PowerDNS mit bind Backend betreibe werden auf dem Ext. Slave die zonen nicht geupdatet.
    Intern nutzt er ja die Bind Backend und bekommt somit alle änderungen ohne AFXR durch dierekt zugriff auf die Zone-Files.


    Die Änderungen landen aber nicht direkt in den Zonenfiles.
    LiveConfig aktualisiert die Zonen mittels DNS-Updates (RFC2136 etc.). BIND schreibt die Änderungen nicht direkt in die Zonendateien, sondern führt Journalfiles (.jnl). Ich weiß nicht, ob PowerDNS die mit berücksichtigt.


    Ich kann mir vorstellen, dass ein Hidden-Primary-Setup hier mehr Sinn macht. Primary DNS ist ein von LiveConfig verwalteter BIND, und die öffentlichen Secondaries laufen z.B. mit PowerDNS und erhalten die Zonenänderungen via AXFR/IXFR.


    Zitat

    Bekomme jetzt aber immer die folgenden Meldungen,
    "Received NOTIFY for domain.tld from IP1 but remote is not permitted by TSIG or allow-notify-from"
    "Received NOTIFY for domain.tld from IP1which is not a master"


    Da stimmt dann wohl was mit der Auth-Konfiguration nicht (falsche IPs und/oder falscher TSIG-Key).


    Zitat

    Leider kein Erfolg Bind nutzt immernoch die Anderen IPs für anfrage und notify


    Was genau haben Sie in bind.LOCALOPTIONS eingetragen, und was genau meinen Sie mit "die anderen IPs"? Mir ist das eigentliche Problem noch nicht so ganz klar.


    Viele Grüße


    -Klaus Keppler

  • Zitat

    Leider kein Erfolg Bind nutzt immernoch die Anderen IPs für anfrage und notify


    Sprich, wenn BIND ein ausgehendes Paket sendet, wird dafür die .1 als Source-IP verwendet?


    Es soll aber die .4 genutzt werden?



    Das ist kein BIND-Problem, sondern ein Linux-Problem, insbesondere dann, wenn das Programm, das die ausgehende Datenverbindung initiiert, die Quell-IP nicht explizit angibt.


    Lässt sich daher so nicht lösen.

  • Lässt sich daher so nicht lösen.


    Geht nicht gibt's nicht. ;)
    Man kann Sockets für ausgehende Verbindungen an bestimmte Adressen binden. Soweit ich weiß geht das in BIND durchaus (ich kann mich da dunkel an diverse Firewall-Thematiken erinnern).


    Die Frage ist daher, für welche Requests genau BIND an welche Adresse gebunden werden soll.


  • Was genau haben Sie in bind.LOCALOPTIONS eingetragen, und was genau meinen Sie mit "die anderen IPs"? Mir ist das eigentliche Problem noch nicht so ganz klar.


    Ich hatte folgende einträge gemacht in den bin.LOCALOPTIONS



    Und mit "die anderen IPs" waren die gemeint die dem bind garnicht als Listen-on zugeteilt waren.
    Bind hat ja im Liveconfig die IPs zugewiesen bekommen und hier in den LOCALOPTIONS nochmal.


    Leider hat bind in dem fall immernoch alle dem Linux System zugewiesenen IPs genutzt für jegliche art von Anfragen, Requests, Transfer, Notifys usw..



    Die Änderungen landen aber nicht direkt in den Zonenfiles.
    LiveConfig aktualisiert die Zonen mittels DNS-Updates (RFC2136 etc.). BIND schreibt die Änderungen nicht direkt in die Zonendateien, sondern führt Journalfiles (.jnl). Ich weiß nicht, ob PowerDNS die mit berücksichtigt.


    Ich kann mir vorstellen, dass ein Hidden-Primary-Setup hier mehr Sinn macht. Primary DNS ist ein von LiveConfig verwalteter BIND, und die öffentlichen Secondaries laufen z.B. mit PowerDNS und erhalten die Zonenänderungen via AXFR/IXFR.


    Ich werde dies jetzt auch per Hidden Primary lösen.
    Die frage ist nur wie ich die einstellungen machen muss dass Bind die Zonen auf den Externen Slave Servern automatisch anlegt ohne zusätzliche eingriffe.


    Dass müsste ich ja theoretisch per Supermaster/Superslave lösen können oder?

  • Ja die werte wurden übernommen.


    den fehler hab ich zwar nicht gefunden aber ich habe jetzt ein wenig meine Konfiguration umgebaut.


    wie kann ich in Liveconfig den Mailserver komplett deaktivieren?
    Achja und MySQL 8 wird in Liveconfig nicht Erkannt als Datenbank System.
    Wie kann ich MySQL 8 einbinden in die liveconfig oberfläche?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!