Comment configurer DJBDNS sur FreeBSD

Ce didacticiel vous montrera comment configurer un service DNS qui est facile à entretenir, facile à configurer et qui est généralement plus sécurisé que le service BIND classique. Cet article suppose que vous exécutez un VPS avec FreeBSD installé.

Pour commencer, ouvrez votre terminal et installez ce package:

<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%

L'installation installera automatiquement des packages supplémentaires ( daemontoolset ucspi-tcp).

Créez deux utilisateurs gtinydnset gdnslog. Commencez avec le premier utilisateur:

<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!

Maintenant, ajoutez le deuxième utilisateur:

<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!

Exécutez la commande suivante. Remplacez l'adresse IP par l'adresse de votre serveur Vultr.

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

Cette commande créera des répertoires, des fichiers et d'autres sous-répertoires dans /usr/local/etc/tinydns. Il mettra également l'adresse IP du VPS /usr/local/etc/tinydns/env/IP.

Créez le répertoire /service.

<ceph>[~]# mkdir /service

Modifiez votre /etc/rc.conffichier:

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

... et et ces lignes:

svscan_enable="YES"
svscan_servicedir="/service"

Enregistrez la configuration et démarrez le svscanservice:

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

Ensuite, allez dans ce répertoire:

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

Modifiez le datafichier:

 <ceph>[root]# ee data

... et ajoutez quelques données DNS:

# 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

Enregistrez le fichier et quittez.

Exécuter ls:

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

Convertissez vos données texte au format de base de données:

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

Exécutez à lsnouveau:

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

Remarquez le data.cdbfichier. Vous l'avez créé avec la makecommande.

Et encore une chose, créez un lien symbolique:

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

Testez maintenant votre nouveau serveur DNS. Remplacez 108.61.178.110par l'adresse IP de votre serveur.

<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

Recherche de serveur de noms:

<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.

Recherche Mailserver MX:

<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.

Encore une fois pour être sûr:

<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

Toutes nos félicitations! Vous disposez d'un serveur DNS fonctionnel. Remplacez domain1.compar votre domaine. Après chaque modification, exécutez la makecommande pour créer un nouveau data.cdbfichier.

Explication du fichier de données:

Les enregistrements "A" commencent par un =signe. Alias ​​ou enregistrements CNAME avec un +signe. Les serveurs de messagerie commencent par le @signe. Serveurs de noms avec le &signe.

Exemple 1:

=test1.domain1.com:193.198.184.100:3600

=signifie enregistrement "A". test1.domain1.comest le nom DNS, IP 193.198.184.100est l'adresse dans laquelle se test1.domain1.comrésout et 3600 est le TTL (durée de vie).

Exemple 2:

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

Dans cet exemple, mail1et mail2sont des serveurs de messagerie pour domain1.com. mail1a la priorité 10 et la mail2priorité 30. Cela signifie que les serveurs de messagerie essaieront d'abord de distribuer le courrier à mail1. En cas d' mail1échec, ils essaieront mail2.

La ligne suivante marque le début des informations de zone. C'est requis.

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

2013101203numéro est utilisé lorsque vous avez un DNS secondaire sur un autre fournisseur. Lorsque vous changez le nombre en 2013101204, le DNS secondaire saura qu'il y a des changements dans le DNS et récupérera les changements. Ceci est juste à titre informatif (vous auriez besoin du service de transfert DNS AXFR). Alternativement, vous pouvez copier et coller vos modifications DNS entre deux serveurs DJBDNS avec le rsyncprogramme.

Si vous avez PF Firewall sur votre serveur FreeBSD, ajoutez cette ligne pour autoriser les requêtes DNS:

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


Leave a Comment

Comment installer Blacklistd sur FreeBSD 11.1

Comment installer Blacklistd sur FreeBSD 11.1

Introduction Tout service connecté à Internet est une cible potentielle dattaques par force brute ou daccès injustifié. Il existe des outils comme fail2ba

Comment installer la pile Apache, MySQL et PHP (FAMP) sur FreeBSD 12.0

Comment installer la pile Apache, MySQL et PHP (FAMP) sur FreeBSD 12.0

Introduction Une pile FAMP, qui est comparable à une pile LAMP sous Linux, est une collection de logiciels open source qui sont généralement installés ensemble t

Comment installer Osclass sur FreeBSD 12

Comment installer Osclass sur FreeBSD 12

Vous utilisez un système différent? Osclass est un projet open source qui vous permet de créer facilement un site classé sans aucune connaissance technique. Son sourc

Comment installer Wiki.js sur FreeBSD 11

Comment installer Wiki.js sur FreeBSD 11

Vous utilisez un système différent? Wiki.js est une application wiki moderne gratuite et open source basée sur Node.js, MongoDB, Git et Markdown. Le code source de Wiki.js est public

Comment installer lalbum photo Lychee 3.1 sur un VPS FBS FreeBSD 11

Comment installer lalbum photo Lychee 3.1 sur un VPS FBS FreeBSD 11

Vous utilisez un système différent? Lychee 3.1 Photo Album est un outil de gestion de photos simple et flexible, gratuit et open source qui fonctionne sur un serveur VPS. Il installe

Installer Fork CMS sur FreeBSD 12

Installer Fork CMS sur FreeBSD 12

Vous utilisez un système différent? Fork est un CMS open source écrit en PHP. Le code source de Forks est hébergé sur GitHub. Ce guide vous montrera comment installer Fork CM

Créer un fichier déchange sur FreeBSD 10

Créer un fichier déchange sur FreeBSD 10

Par défaut, les serveurs Vultr FreeBSD ne sont pas configurés pour inclure lespace de swap. Si votre intention est pour une instance de cloud jetable, vous navez probablement pas besoin

Comment redimensionner un disque dans FreeBSD

Comment redimensionner un disque dans FreeBSD

Le système dexploitation FreeBSD utilise UFS (Unix File System) pour son système de fichiers de partitions racine; autrement connu sous le nom de freebsd-ufs En cas de mise à niveau

Comment installer Selfoss RSS Reader sur un VPS FBS FreeBSD 11

Comment installer Selfoss RSS Reader sur un VPS FBS FreeBSD 11

Vous utilisez un système différent? Selfoss RSS Reader est un lecteur Web gratuit et open source auto-hébergé à usages multiples, diffusion en direct, mashup, flux de nouvelles (RSS / Atom)

Comment installer Matomo Analytics sur FreeBSD 11

Comment installer Matomo Analytics sur FreeBSD 11

Vous utilisez un système différent? Matomo (anciennement Piwik) est une plate-forme danalyse open source, une alternative ouverte à Google Analytics. La source Matomo est hébergée o

Comment activer TLS 1.3 dans Nginx sur FreeBSD 12

Comment activer TLS 1.3 dans Nginx sur FreeBSD 12

Vous utilisez un système différent? TLS 1.3 est une version du protocole TLS (Transport Layer Security) qui a été publiée en 2018 en tant que norme proposée dans la RFC 8446

Comment installer le CMS Backdrop sur un VPS FBS FreeBSD 11

Comment installer le CMS Backdrop sur un VPS FBS FreeBSD 11

Vous utilisez un système différent? Backdrop CMS 1.8.0 est un système de gestion de contenu (CMS) simple et flexible, adapté aux mobiles, gratuit et open source qui nous permet

Comment installer ImpressPages CMS 5.0 sur un VPS FBS FreeBSD 11

Comment installer ImpressPages CMS 5.0 sur un VPS FBS FreeBSD 11

Vous utilisez un système différent? ImpressPages CMS 5.0 est un système de gestion de contenu (CMS) simple et efficace, gratuit et open source, convivial et basé sur MVC

Comment installer le forum NodeBB sur FreeBSD 12

Comment installer le forum NodeBB sur FreeBSD 12

Vous utilisez un système différent? NodeBB est un logiciel de forum basé sur Node.js. Il utilise des sockets Web pour des interactions instantanées et des notifications en temps réel. Le NodeB

Installez eSpeak sur FreeBSD 12

Installez eSpeak sur FreeBSD 12

Vous utilisez un système différent? ESpeak peut générer des fichiers audio de synthèse vocale (TTS). Ceux-ci peuvent être utiles pour de nombreuses raisons, telles que la création de votre propre Turin

Comment installer LimeSurvey CE sur FreeBSD 12

Comment installer LimeSurvey CE sur FreeBSD 12

Vous utilisez un système différent? LimeSurvey est un logiciel denquête open source écrit en PHP. Le code source de LimeSurvey est hébergé sur GitHub. Ce guide vous montrera

Comment installer Monica sur FreeBSD 12

Comment installer Monica sur FreeBSD 12

Vous utilisez un système différent? Monica est un système de gestion des relations personnelles open source. Considérez-le comme un CRM (un outil populaire utilisé par les équipes

Comment installer Automad CMS sur FreeBSD 12

Comment installer Automad CMS sur FreeBSD 12

Vous utilisez un système différent? Automad est un système de gestion de contenu (CMS) basé sur des fichiers open source et un moteur de modèle écrit en PHP. Le code source Automad i

Installer Akaunting sur FreeBSD 12

Installer Akaunting sur FreeBSD 12

Vous utilisez un système différent? Introduction Akaunting est un logiciel de comptabilité gratuit, open source et en ligne conçu pour les petites entreprises et les indépendants. Cest moi

Choix dun système dexploitation: CentOS, Ubuntu, Debian, FreeBSD, CoreOS ou Windows Server

Choix dun système dexploitation: CentOS, Ubuntu, Debian, FreeBSD, CoreOS ou Windows Server

Cet article fournit un bref résumé des systèmes dexploitation du serveur proposés en tant que modèles sur Vultr. CentOS CentOS est une version open source de RHEL (Re

Comment générer des clés SSH?

Comment générer des clés SSH?

Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.

Créer un serveur de messagerie avec hMailServer sous Windows

Créer un serveur de messagerie avec hMailServer sous Windows

Découvrez comment créer un serveur de messagerie avec hMailServer sous Windows pour recevoir des e-mails facilement.

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.