Djbdns

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 2 septembrie 2016; verificările necesită 9 modificări .

djbdns
Tip de server DNS _
Dezvoltator Daniel Julius Bernstein
Scris in Xi
Sistem de operare UNIX
ultima versiune 1.05 ( 11 februarie 2001 )
Licență domeniu public [1]
Site-ul web cr.yp.to/djbdns.html

djbdns este un set simplu și sigur de programe pentru întreținerea și rezolvarea zonelor DNS, dezvoltat de Daniel Bernstein. Autorul programului l-a creat după ce a descoperit numeroase erori în codul BIND . El a promis un bonus de 1000 USD oricui găsește o eroare în codul djbdns. [2]

În 2004, componenta tinydns a suitei djbdns a fost al doilea cel mai popular server DNS în ceea ce privește numărul de domenii acceptate. [3]

În 2009, Matthew Dempsky a găsit vulnerabilități în dnscache. [patru]

Componentele djbdns

Servere:

Programe client:

…și câteva instrumente de configurare aferente.

În djbdns, diverse funcții și servicii, cum ar fi transferurile de zonă prin AXFR , sunt separate între programe separate. fișierelor de zonă memorarea în cache a înregistrărilor DNS și recursivă a înregistrărilor sunt , de asemenea, implementate ca programe separate. Rezultatul acestei decizii de proiectare a fost o reducere enormă a cantității de cod și a complexității programelor daemon care răspund la solicitările clienților. Daniel Bernstein (și mulți alții) este conștient de faptul că această abordare se potrivește bine cu spiritul UNIX și facilitează verificările de securitate.

Un exemplu de utilizare a utilităților client

Rezolvați invers mai multe gazde dintr-un fișier:

rădăcină@gazdă[/rădăcină]# fișier pisică-cu-listă-ip.txt | dnsfilter 194.87.0.50=www.ru 87.118.90.81=ns.km35112.keymachine.de 93.158.134.8=ya.ru

Conținutul fișierului-cu-lista-ip.txt:

194.87.0.50 87.118.90.81 93.158.134.8

Obținerea unei adrese IP după nume, pentru mai multe gazde dintr-un fișier:

#!/bin/sh # Utilizați: ./h2ip.sh dns-list-file.txt # # exemplu de ieșire: # www.ru=194.87.0.50 # ns.ru=87.118.90.81 # ya.ru=93.158.134.8 77.88.21.8 213.180.204.8 echo „Utilizarea listei de fișiere DNS: $1” pentru nume în `cat $1`; do echo -n $nume=; dnsip $nume; Terminat

Utilizare:

# chmod +x h2ip.sh; ./h2ip.sh dns-list-file.txt

Pentru bash , în consolă:

pentru nume în `cat dns-list-file.txt`; do echo -n $nume=;dnsip $nume; Terminat

Situația licenței

Pachetul a fost distribuit anterior ca software fără licență , ceea ce era în contradicție cu definiția Open Source . Acest lucru a împiedicat djbdn-urile să fie incluse în unele distribuții Linux, cum ar fi Debian Linux . Utilizarea djbdns a fost gratuită pentru toată lumea; codul sursă era disponibil publicului și putea fi descărcat gratuit de oricine; era deschis spre revizuire și schimbare de către toți veniți. Singura restricție a fost că o versiune modificată a djbdns nu putea fi distribuită; modificările ar putea fi distribuite doar ca patch -uri la codul sursă.

Pe 28 decembrie 2008, djbdns (mai precis, fișierul djbdns-1.05.tar.gz [5] , a cărui sumă hash MD5 este 3147c5cd56832aa3b41955c7a51cbeb2 ) a intrat în domeniul public.

Note

  1. Daniel J. Bernstein. Întrebări frecvente de la distribuitori (ing.) (downlink) . Preluat la 7 martie 2010. Arhivat din original la 4 iunie 2012.   
  2. Daniel J. Bernstein. Garanția de securitate djbdns  (ing.)  (downlink) . Preluat la 7 martie 2010. Arhivat din original la 4 iunie 2012.
  3. Moore, Don DNS server sondaj (2004). Consultat la 28 ianuarie 2014. Arhivat din original pe 6 ianuarie 2005.
  4. Problemă de securitate în djbdns confirmată  (ing.)  (downlink) . Preluat la 7 martie 2010. Arhivat din original la 4 iunie 2012.
  5. Copie arhivată . Preluat la 7 martie 2010. Arhivat din original la 14 mai 2011.

Link -uri