So konfigurieren Sie DJBDNS unter FreeBSD

Dieses Tutorial zeigt Ihnen, wie Sie einen DNS-Dienst konfigurieren, der einfach zu warten, einfach zu konfigurieren und im Allgemeinen sicherer als der klassische BIND-Dienst ist. In diesem Artikel wird davon ausgegangen, dass Sie einen VPS mit installiertem FreeBSD ausführen.

Öffnen Sie zunächst Ihr Terminal und installieren Sie dieses Paket:

<ceph>[~]# pkg install djbdns                                              
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
The following 3 packages will be affected (of 0 checked):

New packages to be INSTALLED:
djbdns: 1.05_20,1
ucspi-tcp: 0.88_2
daemontools: 0.76_17

The process will require 1 MB more space.
251 KB to be downloaded.

Proceed with this action? [y/N]: y
Fetching djbdns-1.05_20,1.txz: 100%  139 KB 142.4k/s    00:01    
Fetching ucspi-tcp-0.88_2.txz: 100%   62 KB  63.1k/s    00:01    
Fetching daemontools-0.76_17.txz: 100%   51 KB  51.7k/s    00:01    
Checking integrity... done (0 conflicting)
[1/3] Installing ucspi-tcp-0.88_2...
[1/3] Extracting ucspi-tcp-0.88_2: 100%
[2/3] Installing daemontools-0.76_17...
[2/3] Extracting daemontools-0.76_17: 100%
[3/3] Installing djbdns-1.05_20,1...
[3/3] Extracting djbdns-1.05_20,1: 100%

Bei der Installation werden automatisch zusätzliche Pakete ( daemontoolsund ucspi-tcp) installiert .

Erstellen Sie zwei Benutzer gtinydnsund gdnslog. Beginnen Sie mit dem ersten Benutzer:

<ceph>[~]# adduser         
Username: gtinydns
Full name: gtinydns
Uid (Leave empty for default): 
Login group [gtinydns]: 
Login group is gtinydns. Invite gtinydns into other groups? []: 
Login class [default]: 
Shell (sh csh tcsh zsh rzsh nologin) [sh]: nologin
Home directory [/home/gtinydns]: 
Home directory permissions (Leave empty for default): 
Use password-based authentication? [yes]: 
Use an empty password? (yes/no) [no]: 
Use a random password? (yes/no) [no]: yes
Lock out the account after creation? [no]: 
Username   : gtinydns
Password   : <random>
Full Name  : gtinydns
Uid        : 1002
Class      : 
Groups     : gtinydns 
Home       : /home/gtinydns
Home Mode  : 
Shell      : /usr/sbin/nologin
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (gtinydns) to the user database.
adduser: INFO: Password for (gtinydns) is: rTsada2131sa1Mg
Add another user? (yes/no): no
Goodbye!

Fügen Sie nun den zweiten Benutzer hinzu:

<ceph>[~]# adduser
Username: gdnslog
Full name: gdnslog
Uid (Leave empty for default):  
Login group [gdnslog]: 
Login group is gdnslog. Invite gdnslog into other groups? []: 
Login class [default]: 
Shell (sh csh tcsh zsh rzsh nologin) [sh]: nologin
Home directory [/home/gdnslog]: 
Home directory permissions (Leave empty for default): 
Use password-based authentication? [yes]: 
Use an empty password? (yes/no) [no]: 
Use a random password? (yes/no) [no]: yes
Lock out the account after creation? [no]: 
Username   : gdnslog
Password   : <random>
Full Name  : gdnslog
Uid        : 1003
Class      : 
Groups     : gdnslog 
Home       : /home/gdnslog
Home Mode  : 
Shell      : /usr/sbin/nologin
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (gdnslog) to the user database.
adduser: INFO: Password for (gdnslog) is: jWsdad33aasdaFa0
Add another user? (yes/no): no
Goodbye!

Führen Sie den folgenden Befehl aus. Ersetzen Sie die IP-Adresse durch die Adresse Ihres Vultr-Servers.

<ceph>[~]# tinydns-conf gtinydns gdnslog /usr/local/etc/tinydns 108.61.100.100

Dieser Befehl erstellt Verzeichnisse, Dateien und andere Unterverzeichnisse in /usr/local/etc/tinydns. Es wird auch die IP-Adresse des VPS eingegeben /usr/local/etc/tinydns/env/IP.

Erstellen Sie das Verzeichnis /service.

<ceph>[~]# mkdir /service

Bearbeiten Sie Ihre /etc/rc.confDatei:

<ceph>[~]# ee /etc/rc.conf

... und und diese Zeilen:

svscan_enable="YES"
svscan_servicedir="/service"

Speichern Sie die Konfiguration und starten Sie den svscanDienst:

<ceph>[~]# /usr/local/etc/rc.d/svscan start
Starting svscan.

Wechseln Sie als Nächstes in dieses Verzeichnis:

 <ceph>[~]# cd /usr/local/etc/tinydns/root

Bearbeiten Sie die dataDatei:

 <ceph>[root]# ee data

... und einige DNS-Daten hinzufügen:

# domain1.com
Zdomain1.com:dns1.domain1.com.:ns.domain1.com.:2013101203:604800:86400:2419200:604800:3600
&domain1.com::dns1.domain1.com.:3600
&domain1.com::dns2.domain1.com.:3600

# MX
@domain1.com::mail1.domain1.com.:10:3600
@domain1.com::mail2.domain1.com.:30:3600

# IP's (A records)
=dns1.domain1.com:108.61.210.99:3600
=dns2.domain1.com:89.201.163.42:3600
=mail1.domain1.com:89.201.163.42:3600
=mail2.domain1.com:85.114.41.8:3600
=www.domain1.com:108.61.178.194:3600
=test1.domain1.com:193.198.184.100:3600
=test2.domain1.com:108.61.178.215:3600

# Aliases
+domain1.com:108.61.178.194:3600
+smtp.domain1.com:89.201.163.42:3600
+imap.domain1.com:89.201.163.42:3600

Speichern Sie die Datei und beenden Sie sie.

Ausführen ls:

<ceph>[root]# ls
Makefile  add-alias  add-childns  add-host  add-mx  add-ns  data

Konvertieren Sie Ihre Textdaten in das Datenbankformat:

<ceph>[root]# make
/usr/local/bin/tinydns-data

lsWieder ausführen :

<ceph>[root]# ls
Makefile  add-alias  add-childns  add-host  add-mx  add-ns  data  data.cdb

Beachten Sie die data.cdbDatei. Sie haben es mit dem makeBefehl erstellt.

Und noch etwas: Erstellen Sie eine symbolische Verbindung:

<ceph>[root]# ln -s /usr/local/etc/tinydns /service

Testen Sie nun Ihren neuen DNS-Server. Ersetzen Sie 108.61.178.110durch die IP-Adresse Ihres Servers.

<ceph>[root]# host www.domain1.com 108.61.178.110 
Using domain server:
Name: 108.61.178.110
Address: 108.61.178.110#53
Aliases: 

www.domain1.com has address 108.61.178.194

Nameserver-Suche:

<ceph>[root]# host -t ns domain1.com 108.61.178.110 
Using domain server:
Name: 108.61.178.110
Address: 108.61.178.110#53
Aliases: 

domain1.com name server dns1.domain1.com.
domain1.com name server dns2.domain1.com.

Mailserver MX-Suche:

<ceph>[root]# host -t mx domain1.com 108.61.178.110 
Using domain server:
Name: 108.61.178.110
Address: 108.61.178.110#53
Aliases: 

domain1.com mail is handled by 10 mail1.domain1.com.
domain1.com mail is handled by 30 mail2.domain1.com.

Noch einmal, um sicher zu sein:

<ceph>[root]# host mail1.domain1.com 108.61.178.110 
Using domain server:
Name: 108.61.178.110
Address: 108.61.178.110#53
Aliases: 

mail1.domain1.com has address 89.201.163.42

Herzliche Glückwünsche! Sie haben einen funktionierenden DNS-Server. Ersetzen Sie domain1.comdurch Ihre Domain. Führen Sie nach jeder Änderung den makeBefehl aus, um eine neue data.cdbDatei zu erstellen.

Erläuterung der Datendatei:

"A" -Datensätze beginnen mit einem =Zeichen. Aliase oder CNAME-Datensätze mit einem +Zeichen. Mailserver beginnen mit dem @Zeichen. Nameserver mit dem &Zeichen.

Beispiel 1:

=test1.domain1.com:193.198.184.100:3600

=steht für "A" Rekord. test1.domain1.comist der DNS-Name, IP 193.198.184.100ist die Adresse, in der aufgelöst wird test1.domain1.com, und 3600 ist die TTL (Time to Live).

Beispiel 2:

# MX
@domain1.com::mail1.domain1.com.:10:3600
@domain1.com::mail2.domain1.com.:30:3600

In diesem Beispiel mail1und mail2sind Mailserver für domain1.com. mail1hat Priorität 10 und mail2Priorität 30. Das bedeutet, dass Mailserver zuerst versuchen, Mail an zuzustellen mail1. Wenn dies mail1fehlschlägt, werden sie es versuchen mail2.

Die folgende Zeile markiert den Beginn der Zoneninformationen. Es ist notwendig.

Zdomain1.com:dns1.domain1.com.:ns.domain1.com.:2013101203:604800:86400:2419200:604800:3600

2013101203Die Nummer wird verwendet, wenn Sie bei einem anderen Anbieter über sekundäres DNS verfügen. Wenn Sie die Nummer in ändern 2013101204, erkennt das sekundäre DNS, dass es einige Änderungen im DNS gibt, und übernimmt die Änderungen. Dies dient nur zu Informationszwecken (Sie benötigen den AXFR-DNS-Übertragungsdienst). Alternativ können Sie Ihre DNS-Änderungen zwischen zwei DJBDNS-Servern mit dem rsyncProgramm kopieren und einfügen .

Wenn Ihr FreeBSD-Server über eine PF-Firewall verfügt, fügen Sie diese Zeile hinzu, um DNS-Abfragen zuzulassen:

pass quick proto {tcp, udp} from any to $me port 53 flags S/SA keep state 


Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.