GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat rychlý a lehký DNS Server MaraDNS na CentOS 7

MaraDNS je malý, bezplatný a lehký server doménových jmen. Jedná se o alternativní open-source DNS server, který funguje jako mezipaměť, rekurzivní nebo autoritativní jmenný server. Je pozoruhodně snadno konfigurovatelný a dostupný pro platformy Linux a Windows. Lze jej stáhnout zde. Více o DNS, rekurzivním DNS a autoritativním DNS si můžete přečíst zde.

Níže jsou uvedeny některé zajímavé charakteristiky MarDNS:

  • Snadná instalace
  • Nízké využití paměti (používá přibližně 5 MB RAM)
  • Může fungovat jako autoritativní jmenný server a rekurzivní jmenný server.
  • Nepřehlédněte, dokumentace na webu MaraDNS je velmi jednoduchá na pochopení.

Pojďme nyní začít s MaraDNS na CentOS 7. Níže uvedené kroky vás provedou instalací a konfigurací MaraDNS:

Instalace MaraDNS

V tuto chvíli nejsou k dispozici žádné RPM MaraDNS pro CentOS 7, takže jej nainstalujeme a zkompilujeme ze zdroje.

Nainstalujte gcc:

sudo yum install gcc

Stáhněte si nejnovější zdrojový archiv odtud. Můžete to udělat jako:

wget http://maradns.samiam.org/download/2.0/2.0.11/maradns-2.0.11.tar.bz2

Extrahujte obsah archivu:

tar -xjf maradns-2.0.11.tar.bz2

Přejděte do extrahovaného adresáře MaraDNS, zkompilujte a nainstalujte programy:

cd maradns-2.0.11
sudo make
sudo make install

MaraDNS je nyní nainstalován. Služba MaraDNS je nainstalována na /etc/init.d/maradns. Službu můžete jednoduše spustit:

sudo /etc/init.d/maradns start

Chcete-li spustit rekurzivního démona, spusťte:

sudo /etc/init.d/maradns.deadwood start

Ve výchozím nastavení autoritativní jmenný server naslouchá na portu 127.0.0.1 a rekurzivní na portu 127.0.0.2.

Ujistěte se, že spustíme MaraDNS při spouštění:

chkconfig maradns on


Init skript rekurzivního serveru DNS musí být kompatibilní s chkconfig, než jej budete moci spustit při spuštění. Přidejte níže uvedený obsah na začátek souboru /etc/init.d/maradns.deadwood:

# chkconfig: - 55 45
# description: MaraDNS is secure Domain Name Server (DNS)
# probe: true

Nastavte jej tak, aby se spouštěl při spuštění:

chkconfig maradns.deadwood on

Konfigurace MaraDNS jako autoritativního jmenného serveru

Autoritativní servery DNS „znají“ mapování adresy URL na IP pro danou doménu. Jsou zdrojem informací, které rekurzivní servery DNS odesílají webovým klientům, jako jsou prohlížeče (Chrome, Firefox). MaraDNS můžete nakonfigurovat jako autoritativní jmenný server jako:

Upravte konfigurační soubor MaraDNS, tj. /etc/mararc:

ipv4_bind_addresses = "127.0.0.1"
chroot_dir = "/etc/maradns"
csv2 = {} csv2["example.net."] = "db.example.net"

První řádek říká MaraDNS, aby naslouchal na IP-127.0.0.1. Můžete k němu přidat více IP adres oddělených čárkou. Pro např.- 127.0.0.1, x.x.x.x

Druhý řádek chroot_dir uvádí adresář, kde budou uloženy všechny soubory zóny.

Třetí řádek inicializuje hash csv2 pomocí příkazu csv2 ={}.

Čtvrtý řádek uvádí soubor zóny s názvem db.example.net pro název domény example.net.

Zde je soubor zóny s názvem db.example.net pro název domény example.net, který je samozřejmý:

example.net.      +14400    soa    ns1.example.net. [email protected] 2012010117 14400 3600 604800 14400 ~ 
example.net.      +14400    ns     ns1.example.net. ~ 
example.net.      +14400    ns     ns2.example.net. ~ 
ns1.example.net.  +14400    a      127.0.0.1 ~ 
ns2.example.net.  +14400    a      127.0.0.1 ~ 
example.net.      +14400    a      127.0.0.1 ~ 
www.example.net.  +14400    a      127.0.0.1 ~ 
example.net.      +14400    mx     10 mail.example.net. ~
mail.example.net. +14400    a      127.0.0.1 ~

Začnete řádkem SOA (Start Of Authority). Poté určíte autoritativní jmenné servery a další záznamy. Záznam se skládá z názvu domény, TTL (Time to live), typu záznamu a hodnoty záznamu.
Dvě věci, které je třeba poznamenat, je, že všechny názvy domén končí tečkou, tj. musí se jednat o plně kvalifikované názvy domén a všechny záznamy končí znakem vlnovky (~). Chcete-li vědět více, podívejte se na dokumentaci o formátu zónových souborů.

Aby to bylo jednodušší, ukažme example.net na 127.0.0.1. Uděláte to takto:

example.net.    127.0.0.1 ~

Restartujte službu jako:

sudo /etc/init.d/maradns restart

Konfigurace MaraDNS jako rekurzivního jmenného serveru

Když váš webový prohlížeč odešle dotaz DNS – za předpokladu, že prohlížeč ještě nemá mapování uložené ve své mezipaměti – je odeslán na rekurzivní server DNS. Říká se tomu také přesměrování DNS. Ve výchozím nastavení naslouchá na portu 127.0.0.2 a můžete k němu přidat více IP oddělených čárkou. Pro např.- 127.0.0.2, x.x.x.x. MaraDNS můžete nakonfigurovat jako rekurzivní jmenný server připojením následujících řádků k souboru /etc/dwood3rc:

upstream_servers = {}
upstream_servers["."] = "8.8.8.8, 8.8.4.4" # Forwarding requests to Google DNS Servers

Restartujte službu jako:

sudo /etc/init.d/maradns.deadwood restart

S nastavením serveru MaraDNS jste hotovi! :)

Tip – Pokud chcete, aby váš server MaraDNS odpovídal na externí dotazy DNS, budete potřebovat:

Přidejte veřejnou IP svého počítače do obou konfiguračních souborů (/etc/mararc &/etc/dwood3rc) a upravte je takto:

/etc/mararc:

ipv4_bind_addresses = "127.0.0.1, x.x.x.x" #Replace x.x.x.x with your machine's public address.

/etc/dwood3rc:

bind_address="127.0.0.2, x.x.x.x" #Replace x.x.x.x with your machine's public address.

recursive_acl ="0.0.0.0/0" #Povolit připojení odkudkoli.

Zde můžete tyto ukázkové soubory. Nezapomeňte služby znovu restartovat.

To je vše!


Cent OS
  1. Jak nainstalovat DNS server na RHEL 8 / CentOS 8 Linux

  2. Jak nainstalovat a používat TeamSpeak Server na CentOS 7

  3. Jak nainstalovat a nakonfigurovat Gitlab na CentOS 8

  1. Jak nainstalovat a nakonfigurovat VNC na CentOS 7

  2. Jak nainstalovat a nakonfigurovat server NFS na CentOS 8

  3. Jak nainstalovat a nakonfigurovat Postgres 13 na Centos 8

  1. Jak nainstalovat a nakonfigurovat VNC na CentOS 8

  2. Jak nainstalovat PHP 7.4, 7.3, 7.2 na CentOS 7 a RHEL 7 Server

  3. Jak nainstalovat a nakonfigurovat FreeIPA na CentOS 7 Server