Pular para o conteúdo

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.
Vandré Torres Paes vandre
Hits: 17.561 Categoria: Linux Subcategoria: Segurança
  • Indicar
  • Impressora
  • Denunciar

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!

   1. Introdução

Utilizando o apt para gerenciamento de pacotes

Gerenciando contas de usuários

Definição de hacker

Código Aberto já não é uma questão de gosto

SysLog: Sistema de log do Linux

Impedindo o compartilhamento de conexão

5 comandos que ninguém nunca deve executar no Linux

#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

Entre na sua conta para comentar.