Djbdns
O pacote de software djbdns é uma implementação de DNS. Ele foi criado por Daniel J. Bernstein em resposta às suas frustrações com repetidas falhas de segurança no amplamente utilizado software BIND DNS. Como desafio, Bernstein ofereceu um prêmio de $ 1.000 para a primeira pessoa a encontrar uma falha de segurança no djbdns, que foi concedido em março de 2009 a Matthew Dempsky.
A partir de 2004, o componente tinydns do djbdns era o segundo servidor DNS mais popular em termos de número de domínios para os quais era o servidor autorizado e o terceiro mais popular em termos de número de hosts DNS executando-o.
djbdns nunca foi vulnerável à vulnerabilidade generalizada de envenenamento de cache relatada em julho de 2008, mas foi descoberto que é vulnerável a um ataque relacionado.
O código-fonte não tem sido gerenciado centralmente desde seu lançamento em 2001, e foi lançado em domínio público em 2007. Em março de 2009, existem vários forks, um dos quais é dbndns (parte do Projeto Debian) e mais de uma dúzia de patches para modificar a versão lançada.
Embora o djbdns não suporte diretamente o DNSSEC, existem patches de terceiros para adicionar suporte ao DNSSEC ao djbdns' componente tinydns somente autoritativo.
Componentes
O software djbdns consiste em servidores, clientes e diversas ferramentas de configuração.
Servidores
- dnscache — o resolver DNS e cache.
- minúsculos — um servidor DNS orientado para o banco de dados.
- walldns — uma "parede DNS reversa", fornecendo o endereço IP ao domínio apenas pesquisa de nome.
- rbldns — um servidor projetado para o serviço de lista negra DNS.
- pickdns — um servidor orientado para o banco de dados que escolhe de registros correspondentes dependendo da localização do solicitante. (Esta característica é agora uma parte padrão de minúsculos.)
- axfrdns — um servidor de transferência de zona.
Ferramentas do cliente
- axfr-get — um cliente de transferência de zona.
- dnsip — endereço simples da pesquisa de nome.
- dnsipq — endereço de pesquisa de nome com regras de reescrever.
- dnsname — nome simples da pesquisa de endereço.
- dnstxt — registro de texto simples da pesquisa de nome.
- dnsmx — mail exchanger lookup.
- dnsfilter — procura nomes para endereços lidos de stdin, em paralelo.
- dnsqr — pesquisa geral recursiva.
- dnsq — pesquisa geral não-recursiva, útil para depuração.
- dnstrace (e dnstracesort) — testes abrangentes das cadeias de autoridade sobre servidores DNS e seus nomes.
Design
No djbdns, diferentes recursos e serviços são divididos em programas separados. Por exemplo, transferências de zona, análise de arquivo de zona, cache e resolução recursiva são implementados como programas separados. O resultado dessas decisões de design é uma redução no tamanho do código e na complexidade do programa daemon que fornece a função principal de responder a solicitações de pesquisa. Bernstein afirma que isso é fiel ao espírito do sistema operacional Unix e torna a verificação de segurança muito mais simples.
Status de direitos autorais
Em 28 de dezembro de 2007, Bernstein liberou djbdns para o domínio público. Anteriormente, o pacote era distribuído gratuitamente como software sem licença. No entanto, isso não permitia a distribuição de versões modificadas do djbdns, que era um dos princípios básicos do software de código aberto. Consequentemente, não foi incluído nas distribuições do Linux que exigiam que todos os componentes fossem de código aberto.
Contenido relacionado
Adicionador
Ás de Júpiter
Dennis Ritchie