Pular para o conteúdo

Encapsulamento de Apache com chroot

E o chroot é um módulo para o apache, que possibilita a execução do apache em um ambiente encapsulado e seguro.
Ricardo Brito do Nascimento rbn_jesus
Hits: 20.066 Categoria: Linux Subcategoria: Configuração
  • Indicar
  • Impressora
  • Denunciar

Introdução e Preparação do Ambiente

Introdução

Desde abril de 1996 o servidor Web Apache é o servidor web mais conhecido e utilizado no mundo.

O Apache HTTP Server ("httpd ou apache2") é um projeto da Apache Software Foundation, que pode ser encontrado na URL http://httpd.apache.org/, e utilizado livremente.

E o chroot é um módulo para o apache, que possibilita a execução do apache em um ambiente encapsulado e seguro.

O módulo chroot está incluído nos repositórios das distribuições FreeBSD, DarwinPorts, PLD Linux, Gentoo Linux, Debian e NetBSD.

Nas outras distribuições os fontes podem ser baixados em: http://core.segfault.pl/~hobbit/mod_chroot/dist, e a mais recente no momento da criação deste artigo foi http://core.segfault.pl/~hobbit/mod_chroot/dist/mod_chroot-0.5.tar.gz.

Preparando o ambiente

Criando o volume, com 100M:

# mkdir -vp /mnt/vm /httpdjail;
# dd if=/dev/zero of=/mnt/vm/httpdjail.img bs=1k seek=100k count=1;
# mke2fs /mnt/vm/httpdjail.img;
# mount -o loop,noexec,nodev,nosuid -t ext4 /mnt/vm/httpdjail.img /httpdjail;

Criando os diretórios necessários:

# mkdir -vp /httpdjail/var/www/html /httpdjail/{tmp,home} /httpdjail/var/{run,www,log} /httpdjail/var/run/{apache2,httpd};

Ou:

# mkdir -vp /httpdjail/var/{run,www};
# chown -R root.root /httpdjail/var/run;
# chmod 1777 /httpdjail/tmp;

Editando /etc/fstab:

/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0
/mnt/vm/httpdjail.img  /httpdjail      ext4    loop,nodev,noexec,nosuid       0       0


Instalando o módulo chroot no Apache através dos fontes no Debian-Like:

# aptitude install apache2-mpm-prefork apache2-threaded-dev; # wget http://core.segfault.pl/~hobbit/mod_chroot/dist/mod_chroot-0.5.tar.gz # tar -zxvf mod_chroot-0.5.tar.gz -C /tmp # apxs2 -cia /tmp/mod_chroot-0.5/mod_chroot.c

Instalação repositório Debian: Instalação repositório Ubuntu: Instalando o modulo chroot no Apache através dos fontes no RedHat-Like:

# yum install httpd-devel; # wget http://core.segfault.pl/~hobbit/mod_chroot/dist/mod_chroot-0.5.tar.gz # tar -zxvf mod_chroot-0.5.tar.gz -C /tmp # apxs -cia /tmp/mod_chroot-0.5/mod_chroot.c
   1. Introdução e Preparação do Ambiente
   2. Configurando apache e Referências

Explorando o wget

Proteção utilizando fail2ban contra ataques do tipo

Clonagem de Hardware Hotline em Software Livre

Conexão com chaves assimétricas sem uso de senha em servidor sshd

Gerenciando certificados A1 fornecidos pelo ICB-Brasil no navegador Chrome sobre Linux

Como instalar o driver da placa de vídeo SiS 771/671 no Ubuntu 18.04

Gerenciamento centralizado de usuários de rede com GOSA

OpenSUSE Internet Installation

Balanceamento de 3 links com redundância no Linux

VPN com PPTP + DDCLIENT em Debian 5.0 Lenny com IP dinâmico

#1 Comentário enviado por foxbit3r em 29/08/2011 - 14:30h
AI sim!
Isso sim que é um artigo bacana. Eu não cheguei a testar mas parabéns pela iniciativa.
#2 Comentário enviado por clebersoncs em 29/08/2011 - 14:53h
Parabéns pelo artigo.
Terei que montar novos servidores apache e vou usar esse recurso para melhorar a segurança do servidor.
Este artigo será minha principal fonte de referencia.
#3 Comentário enviado por dfsantos em 29/08/2011 - 15:25h
Show de bola.

Contribuir com comentário

Entre na sua conta para comentar.