Kategorie: Linux

Vollständige Konfiguration von BIND und DNS auf den neuen Server

Nach dem Kauf eines dedizierten Servers oder VPS von einem Anbieter erhalten wir normalerweise eine IP-Adresse und einen Hostnamen, was der nächsten Bestellnummer ähnlicher ist, in der Domäne des Anbieters. Heute werde ich jedoch vorstellen, wie ein BIND-Server installiert und konfiguriert wird, um Domänen zu unterstützen.

DAS:
DNS-Serverkonfiguration.
Basic wird auf meinem VPS-Server sein, Während ich ein Backup erstelle, verwende ich einen der kostenlosen DNS-Wartungsdienste freedns.42.pl.

Ändern des Hostnamens

Der Name des neuen Servers kann mit dem Befehl überprüft werden:

Hostname -f

Hostname Konfiguration:

Bearbeiten Sie Ihre nano /etc / hosts

nano nano /etc/hosts

Die Datei sollte wie folgt aussehen:

127.0.0.1       localhost.localdomain localhost
185.38.250.250   node.serwerweb.pl node

# Die folgenden Zeilen sind für IPv6-fähige Hosts wünschenswert
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 IP6-Allrouter

der nächste Schritt ist die Datei nano / etc / Host-Namen zu bearbeiten

nano nano /etc/hostname 

Und wir geben den Hostnamen Knoten

Wir machen einen Neustart des Servers.
Wenn Sie in der Konsole anmelden, können wir alle Befehle überprüfen:

hostname
hostname -f
Wurzelknoten:/tmp# hostname
node
root@node:/tmp# hostname -f
node.serwerweb.pl

Wir gehen zur Hauptkonfiguration von Bind.

Am Anfang müssen Sie sicher sein, dass der BIND-Nameserver installiert ist. Für den Fall, dass er noch nicht da war, Diese Installation sieht so aus:

apt-get install bind9

BIND Sicherheit

BIND ist ein ziemlich verbreitetes Programm, Deshalb ist Sicherheit gut, nämlich es in einer chrootable Umgebung zu schließen. Sie müssen zuerst den gesamten Dienst beenden

/etc/init.d/bind9 stop

Bearbeiten Sie dann / etc / default / bind9 und ändern Sie den darin enthaltenen Parameterwert OPTIONS, so dass es so aussieht:

OPTIONEN="-u bind -t /var/lib/named"

Als Nächstes müssen Sie neue Verzeichnisse erstellen und die vom Programm erstellten Standardverzeichnisse an neue Speicherorte verschieben:

# Utworzenie katalogów
mkdir -p /var/lib/named/etc
mkdir -p /var/lib/named/var/cache/bind
mkdir /var/lib/named/var/run
mkdir /var/lib/named/dev
# Przeniesienie plików konfiguracyjnych BINDa
mv /etc/bind /var/lib/named/etc

Ich hinterlasse anstelle der übertragenen Kataloge einen symbolischen Link:

ln -s /var/lib/named/etc/bind /etc/bind

Es ist auch erforderlich, Null- und Zufallsgeräte zu erstellen und entsprechende Rechte zu gewähren:

# Urządzenia
mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
# Uprawnienia do plików i katalogów
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind

BIND ist jetzt in einer chrootable Umgebung geschlossen. Es bleibt eine Lösung für das Problem der Ereignisprotokollierung. Damit Ereignisse in Systemprotokollen protokolliert werden können, sollte die Datei / etc / default / syslogd geringfügig geändert werden. Suchen Sie die Zeile mit dem Parameter SYSLOGD und ändern Sie sie, lass es so aussehen:

SYSLOGD="-a /var/lib/named/dev/log"

Sie müssen lediglich den sysklogd-Dienst neu starten und bind9 starten.

/etc/init.d/sysklogd restart
/etc/init.d/bind9 start

Im Protokoll / var / log / syslog können Sie sehen, ob alles richtig gestartet wurde.
Und jetzt können Sie zu den richtigen Einstellungen gehen

Überprüfen Sie zuerst die Datei /etc/bind/named.conf
In meinem Fall können Sie sehen, dass es in untergeordnete Teile unterteilt ist, die aus Dateien enthalten sind: named.conf.options i named.conf.local

Wir beginnen mit der Überprüfung der Datei named.conf.options, denn im Grunde sind in meinem Fall die Standardeinstellungen vorerst ausreichend, und es sieht ungefähr so ​​aus:

Optionen {
        Verzeichnis "/var/cache/bind";
 
        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113
 
        // If your ISP provided one or more IP addresses for stable
        // Name-Server, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.
 
        // forwarders {
        //      0.0.0.0;
        // };
 
        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { irgendein; };
};

Dann müssen Sie etwas schreiben und die Datei named.conf.local bearbeiten, Hier werden die vom Server bedienten Zonen definiert. Fügt meine Zone am Ende der Datei hinzu:

zone "serwerweb.pl" {
        type master;
        Datei "/etc/bind/serwerweb.pl";
        notify yes;
        allow-transfer { 
                195.80.237.194;
                193.70.13.218;
        };
};

Typ Master bedeutet, dass dies der Grundtyp ist.
Datei gibt die Detaildatei für diese Domain an. Die absolute Adresse der Datei finden Sie hier, das muss in einem Moment erstellt werden. Durch Angabe des Dateinamens hier, Das Verzeichnis, in dem sich diese Datei befinden soll, ist das Verzeichnis, das in der Datei named.conf.options im Verzeichnisparameter angegeben ist.
Benachrichtigen Sie ja Ursachen, Backup-DNSs werden auch über Änderungen am Grundeintrag informiert.
Allow-Transfer gibt die IP-Adressen an, Wer hat die Erlaubnis, diese Zone herunterzuladen?, Hier sind die spezifischen Adressen der DNS-Server von der eingangs erwähnten freedns.42.pl-Website, Welches werden die Backup-Server hier sein (sekundär)

Erstellen Sie als Nächstes die oben genannte Datei mit Einträgen für die Domäne /etc/bind/serwerweb.pl

nano /etc/bind/serwerweb.pl
$TTL 86400
$ORIGIN serwerweb.pl.
@ IN SOA ns1.serwerweb.pl. boss.serwerweb.pl. (
        2018040301 ;; serial
        10800      ;; refresh
        3600       ;; retry
        604800     ;; expire
        10800      ;; TTL
)
@               IN NS           ns1.serwerweb.pl.
@               IN NS           ns2.serwerweb.pl.
@               IN NS           ns3.serwerweb.pl.
 
@               IN A            XX.XX.XX.XX
ns1             IN A            XX.XX.XX.XX
ns2             IN A            193.70.13.218
ns3             IN A            195.80.237.194
 
;; poczta
@               IN MX 10        mail
mail            IN A            XX.XX.XX.XX
 
;; serwer www
www             IN A            XX.XX.XX.XX
 
ftp             IN CNAME        @

Auf einen Blick:

$TTL - definiert die Gültigkeitsdauer von Datensätzen (in Sekunden)
$HERKUNFT - Domainname. Im Folgenden bedeutet @ nur diesen Wert.
Wenn der Domainname irgendwo in der Datei angezeigt wird, müssen Sie ihn mit einem Punkt beenden, Andernfalls wird der Domainname angehängt ($ ORIGIN-Wert)
@ IN SOA ... - Start Of Authority informiert über den primären DNS-Server und wer ihn verwaltet (E-Mail mit einem Punkt an der Stelle des Affen gespeichert)

Aufgrund der Datei habe ich drei DNS-Server für meine Domain definiert. Zwei wären hier genug.
Die erste von meinem Server unterstützte primäre ns1.serwerweb.pl, auf dem auch die Domain installiert wird, zwei mehr (ns2.serwerweb.pl i ns3.serwerweb.pl) sind Sicherungsadressen, die auf der Website freedns.42.pl erstellt wurden.

Bevor Sie mit der Konfiguration der Sicherungszone fortfahren, Sie sollten die vorgenommenen Änderungen bestätigen, indem Sie den bind9-Dienst neu starten

service bind9 restart

Sie können weiterhin überprüfen, ob alle nur für die Zone vorgenommenen Eingaben korrekt sind, indem Sie ein solches Programm aufrufen:

named-checkzone serwerweb.pl /etc/bind/serwerweb.pl
zone serwerweb.pl/IN: loaded serial 2018040301
OK

Wenn etwas nicht stimmt oder ein drastischer Tippfehler begangen wurde, informiert das Programm, wo mehr oder weniger nach einem Fehler suchen.

Darüber hinaus kann mit dem folgenden Befehl überprüft werden, ob die Domäne korrekt hinzugefügt wurde (sollte nach der Ausführung erscheinen)
1

named -g 2>&1 | grep loaded

Das ist alles,, Wir haben den BIND-Server richtig konfiguriert.

Linux

Zobacz komentarze

  • named-checkzone sysadmin.info.pl /etc/bind/sysadmin.info.pl
    dns_rdata_fromtext: /etc / bind / sysadmin.info.pl:14: near 'XX.XX.XX.XX': schlecht gepunktetes Quad
    dns_rdata_fromtext: /etc / bind / sysadmin.info.pl:15: near 'XX.XX.XX.XX': schlecht gepunktetes Quad
    dns_rdata_fromtext: /etc / bind / sysadmin.info.pl:21: near 'XX.XX.XX.XX': schlecht gepunktetes Quad
    dns_rdata_fromtext: /etc / bind / sysadmin.info.pl:24: near 'XX.XX.XX.XX': schlecht gepunktetes Quad
    Zone sysadmin.info.pl/IN: Das Laden aus der Masterdatei /etc/bind/sysadmin.info.pl ist fehlgeschlagen: schlecht gepunktetes Quad
    Zone sysadmin.info.pl/IN: aufgrund von Fehlern nicht geladen.

    Wie man es repariert?

    • XX.XX.XX.XX Ich habe die öffentliche IP-Adresse vom ISP ersetzt (ISP). Es klappt.

      • Hallo,

        Wie die meisten würde ich Ihnen jedoch empfehlen, einen Server in einem bestimmten Unternehmen zu kaufen. Dann haben Sie eine feste IP-Adresse und das Vertrauen, dass sich dieser nicht ändert .
        Solange Ihr ISP in der Lage ist, Ihnen konstant zu geben, kein Problem, können Sie es selbst tun.

  • Wurzelknoten:/# systemctl status bind9.service
    ● bind9.service - BIND Domain Name Server
    Geladen: beladen (/lib / systemd / system / bind9.service; aktiviert; Anbieter voreingestellt: aktiviert)
    Aktiv: gescheitert (Ergebnis: Exit-Code) da Sa 2020-10-10 02:50:03 EHRE; 13s vor
    Docs: Mann:genannt(8)
    Prozess: 1659 ExecStart = / usr / sbin / named $ OPTIONS (code = verlassen, status = 1 / FAILURE)

    Okt. 10 02:50:03 Knoten benannt[1660]: couldn't mkdir '//run': Erlaubnis verweigert
    Okt. 10 02:50:03 Knoten benannt[1660]: //run/named/session.key konnte nicht erstellt werden
    Okt. 10 02:50:03 Knoten benannt[1660]: Sitzungsschlüssel für dynamisches DNS konnte nicht generiert werden: Erlaubnis verweigert
    Okt. 10 02:50:03 Knoten benannt[1660]: Größenpool-Aufgabenpool basierend auf 5 Zonen
    Okt. 10 02:50:03 Knoten benannt[1660]: could not configure root hints from '/usr/share/dns/root.hints': f
    Okt. 10 02:50:03 Knoten benannt[1660]: Konfiguration laden: Datei nicht gefunden
    Okt. 10 02:50:03 Knoten benannt[1660]: verlassen (aufgrund eines schwerwiegenden Fehlers)
    Okt. 10 02:50:03 Knotensystemd[1]: bind9.service: Steuerungsprozess beendet, code = verlassen, Status = 1 / FAILUR
    Okt. 10 02:50:03 Knotensystemd[1]: bind9.service: Failed with result 'exit-code'.
    Okt. 10 02:50:03 Knotensystemd[1]: BIND Domain Name Server konnte nicht gestartet werden.

    • Sie haben alle Schritte sicher gemacht, wie sie sein sollten?

      Okt. 10 02:50:03 Knoten benannt[1660]: mkdir konnte nicht "// run": Erlaubnis verweigert
      Okt. 10 02:50:03 Knoten benannt[1660]: //run/named/session.key konnte nicht erstellt werden

      Die allererste Meldung zeigt an, dass Sie keine Berechtigung haben und den Peak nicht erstellen können.

Udostępnij
Opublikowane przez
Linux

Neue Beiträge

KeePass2 2.52 w Ubuntu 22.04

In der folgenden Anleitung wird beschrieben, wie Sie KeePass unter Ubuntu installieren. Całość wykonamy za pomocą kilku poleceń

2 years temu

Installieren des Master-PDF-Editors in Ubuntu 22.04

Master PDF Editor ist ein umfassendes PDF-Programm, die viele Funktionen enthält. Oprócz tworzenia i edycji

2 years temu

iotop - Speicherüberwachung

Iotop jest prostym narzędziem dla systemów Uniksowych umożliwiającym monitorowanie użycia dowolnego nośnika pamięci flash/hdd/ssd w

2 years temu

Führen Sie mehrere Befehle in einem Cron-Job aus

Sie können zwei oder mehr Befehle durch Semikolons trennen (;), Semikolon (;): służy do oddzielania

2 years temu

Ändern der Exif-Daten eines Fotos im Linux-Terminal

Poniższy poradnik opisuje w jaki sposób za pomocą konsoli możemy dokonać edycji danych zdjęcia exif.

2 years temu

Installation von Rocket.Chat Server auf Rocky Linux 8

Die folgende Anleitung beschreibt, wie Rocket.Chat unter Rocky Linux installiert wird 8 Całość bardzo prosto zainstalujemy

2 years temu