Chroot + Bind sem stress

O objetivo deste artigo é tratar sobre de um dos mais conhecidos métodos de segurança utilizado para servidor DNS e outros serviços do Linux, o chroot. O artigo visa único e exclusivamente a criação da jaula para o funcionamento do bind.

[ Hits: 16.785 ]

Por: Vandré Torres Paes em 10/05/2004


Introdução



O chroot funciona da seguinte forma:
Todo serviço (bind, FTP, etc) que estiver rodando sobre uma cadeia de chroot é incapaz de enxergar qualquer diretório fora de sua cadeia, por exemplo se o bind estiver rodando no diretório /var/named/jaula, para o bind esse diretório será considerado o "/" (raiz) do servidor.

O objetivo do chroot é limitar o acesso de algum usuário "malicioso" ou invasor ao diretório principal do servidor, pois caso o invasor consiga atacar o servidor de nomes com sucesso, os únicos arquivos que ele terá acesso são os arquivos utilizados pelo bind, que por sua vez estarão no diretório do chroot.

Configuração


Para criar uma cadeia de chroot não será necessário utilizar nenhum aplicativo, basta seguir as instruções abaixo e iniciar o bind, lembrando, que este artigo não mostrará como configurar o bind e sim, apenas como criar a jaula para o serviço. Vamos aos passos!

1 - Iremos criar o diretório que servirá como jaula:

# mkdir /var/named/jaula

2 - Agora iremos criar os diretórios utilizados pelo named dentro da jaula:

# cd /var/named/jaula
# mkdir -p etc
# mkdir -p var/log/named
# mkdir -p var/run
# mkdir -p dev
# mkdir -p var/named


3 - Estes são os arquivos utilizados pelo named:

# mknod null c 1 3
# mknod random c 1 8
# chmod 666 null
# chmod 666 random


4 - Devemos agora copiar os arquivos utilizados pelo named para dentro da jaula (lembre-se você precisa estar dentro da jaula):

# cp /var/named/* var/named

5 - Note que os diretórios dentro da jaula pertencem ao root, é necessário alterar o dono para o usuário named:

# chown named.named var/named
# chown named.named var/run
# chown named.named var/log/named
# chown named.named var/run/named


6 - Agora precisamos habilitar a execução do chroot, edite o arquivo /etc/sysconfig/named, deixando "chroot = yes".

7 - Para finalizar, iremos fazer com que o daemon ao startar o processo localize os arquivos de configuração do named dentro da jaula, para isso precisamos editar o arquivo /etc/init.d/named. Nas linhas que indicarem o PATH onde os arquivos de configuração estão, é preciso alterar para o novo destino que ficara assim:

    -f /var/named/jaula/etc/named.conf
    -f /var/named/jaula/etc/named.conf

8. Pronto, agora bastar iniciar o named e seu serviço de DNS estará rodando sobre uma cadeia de chroot, "a salvo" de penetras:

# /etc/init.d/named start

Conclusão


Bom, tendo feito esses procedimentos o serviço de DNS estará mais protegido contra o ataque de possíveis invasores, porém isso não significa que sua máquina está totalmente à salvo, lembre-se de que o chroot é apenas mais um dos muitos métodos utilizados para minimizar os danos provocados por um invasor.

Todo cuidado é pouco!

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Utilizando o apt para gerenciamento de pacotes

Gerenciando contas de usuários

Leitura recomendada

Resumo da Norma ISO/IEC 13335-3

Introdução ao Conceito de Hardening

Site seguro com Apache-SSL em 15 minutos

Melhorando a segurança de servidores GNU/Linux (Parte 1)

Replicação com OpenLDAP

  
Comentários
[1] Comentário enviado por rdsat em 10/05/2004 - 16:14h

Muito bom artigo ! ehehe

[2] Comentário enviado por y2h4ck em 11/05/2004 - 10:00h

Chroot e legal :)
Seu artigo ta bem explicadinho ... bem legal parabens.

[3] Comentário enviado por rbn_jesus em 08/11/2004 - 09:50h

vc poderia me enviar o arquivo named.conf, pois a distro que estou usando (fc2), está bem diferente de seu artigo, gostaria de comparar as diferenças.

obrigado!

[4] Comentário enviado por fredaum em 28/06/2006 - 16:44h

to apanhando bastante disso, mas acho q o artigo vai me ajuda

abraços

[5] Comentário enviado por TSM em 01/08/2007 - 21:58h

Legal gostei, muito bem explicado....
Parabéns.

Valeu...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts