Mein eigener Server

Dokumentation meiner Projekte und Hobbies

bind9 DNS Server

Bebilderte Schritt für Schritt Anleitung für den DNS Dienst Bind9.

Bind9 installieren

Ihr meldet Euch als root am System an bzw. nutzt das su- Kommando um zum root user zu wechseln.

bind9_1Zuerst führt Ihr ein apt-get update durch damit das Inhaltsverzeichnis von apt-get auf dem neuesten Stand ist.

bind9_2Jetzt mittels apt-get install bind9 Bind9 auf dem Server installieren.

bind9_3Installation mit j bestästigen.

Bind9 in chroot Umgebung einbinden

Verzeichnisse Anlegen:

mkdir -p /chroot/named
cd /chroot/named
mkdir -p dev etc/bind/namedb/slave var/run
mkdir -p /chroot/named/var/cache/bind

Rechte vergeben:

chown root:root /chroot
chmod 700 /chroot
chown bind:bind /chroot/named
chmod 700 /chroot/named
chown bind:bind /chroot/named/etc/bind/namedb/slave
chown bind:bind /chroot/named/etc/bind/namedb 
chown bind:bind /chroot/named/var/run 
chown bind:bind /chroot/named/var/cache/bind

Geränte (Interfaces) anlegen:

mknod /chroot/named/dev/null c 1 3
mknod /chroot/named/dev/random c 1 8

Dateien kopieren und Rechta anpassen:

cp /etc/bind/* /chroot/named/etc/bind/
mv /chroot/named/etc/bind/named.* /chroot/named/etc
chown bind:bind /chroot/named/etc/bind/rndc.key

Parameter in der Datei anpassen vi /etc/default/bind9

#OPTIONS="-u bind"
#-4 -> nur IPv4
OPTIONS="-4 -u bind -t /chroot/named -c /etc/named.conf"

Einträge im File anpassen: vi /chroot/named/etc/named.conf

include "/etc/named.conf.options";
include "/etc/named.conf.local";
include "/etc/named.conf.default-zones";

Parameter im Option Bereich anpassen/hinzufügen: vi /chroot/named/etc/named.conf.options

options {
  #directory "/var/cache/bind";
  directory "/etc/bind/namedb";
  pid-file "/var/run/named.pid";
  statistics-file "/var/run/named.stats";
};

Neues File erstellen: vi /etc/rsyslog.d/bind-chroot.conf

$AddUnixListenSocket /chroot/named/dev/log

bind9_4Rsyslog mit service rsyslog restart neu starten.

bind9_5Mit ls -al /chroot/named/dev/log Rsyslog prüfen.

bind9_6Bind9 mit service bind9 restart neu starten.

Bind9 log File in chroot Umgebung

Verzeichniss erstellen und Rechte anpassen:

mkdir /chroot/named/var/log
chown bind:bind /chroot/named/var/log

Einträge am Ende hinzufügen: vi /chroot/named/etc/named.conf.options

logging {
  channel query.log {
    file "/var/log/query.log";
    // Set the severity to dynamic to see all the debug messages.
    severity debug 3;
  };
  category queries { query.log; };

  channel security_file {
    file "/var/log/security.log" versions 3 size 30m;
    severity dynamic;
    print-time yes;
  };
  category security { security_file; };
};

bind9_7Bind9 mit service bind9 restart neu starten.

bind9_8Log File prüfen: ls -l /chroot/named/var/log

Weiter geht es mit der Konfiguration von fail2ban für BIND9.

Bind9 in chroot Umgebung Konfiguration

Neues File anlegen (Domain und IP anpassen): vi /chroot/named/etc/bind/eigener-server.ch.db

$ORIGIN eigener-server.ch.
$TTL 86400
@       IN      SOA     ns1.eigener-server.ch. hostmaster.eigener-server.ch. (
          2014081801      ; Serial
              3H ; Refresh 1 day
              15M ; Retry 2 hours
              1W ; Expire 41.67 days
              1D ) ; Minimum TTL 2 days

@                       IN      NS      ns1.eigener-server.ch.
                        IN      A       12.23.34.45

ns1                     IN      A       12.23.34.45
www                     IN      A       12.23.34.45

Neues File anlegen (Name des Files und IPs im File sind die ersten 3 Stellen der IP in gegengesetzter Reihenfolge): vi /chroot/named/etc/bind/34.23.12.db

;; db.34.23.12 - Reverse lookup zone for eigener-server.ch
$TTL 2D
@       IN      SOA     ns1.eigener-server.ch. mail.eigener-server.ch. (
          2014071601      ; Serial
                                      8H      ; Refresh
                                      2H      ; Retry
                                      4W      ; Expire
                                      2D )    ; TTL Negative Cache

@       IN      NS      ns1.eigener-server.ch.
                                             ;;; what it stands for:
38      IN      PTR     ns1.eigener-server.ch.
38      IN      PTR     www.eigener-server.ch.
38      IN      PTR     mail.eigener-server.ch.

Einträge zum File hinzufügen (Domain und IP anpassen): vi /chroot/named/etc/named.conf.local

    zone "eigener-server.ch" {
          type master;
          file "/etc/bind/eigener-server.ch.db";
    };

    zone "34.23.12.in-addr.arpa" {
          type master;
          file "/etc/bind/34.23.12.db";
    };

bind9_7Bind9 mit service bind9 restart neu starten.

bind9_9DNS Auflösung von einem anderen PC/Server mit dig testen: dig www.eigener-server.ch @12.23.34.45

Weiter geht es mit der Installation von Apache.

Domain mit DNS Server verbinden

Dies ist Providerabhängig. Sucht bitte Hilfe auf den Seiten des Providers der Eure Domain registriert hat.