Debian + chroot + apache2

Introdução

Neste tutorial, iremos criar um disco virtual, montado no diretório /chroot/apache2, que será a jaula do apache.

Escopo

Debian, 6.0.4
apache2, 2.2.16-6
libapache2-mod-chroot, 0.5-7


Instalação

Os pacotes necessários já estão disponíveis no repositório do Debian, bastando executar o comando abaixo.
aptitude install vim build-essential apache2-mpm-prefork apache2-threaded-dev libapache2-mod-chroot

configuração

A configuração é a parte mais importante deste tutorial, é esta parte que define todo o funcionamento adequado do apache sob o chroot.

Diretórios Principais:
mkdir -vp /mnt/vm /chroot/apache2

Disco Virtual:
  • dd if=/dev/zero of=/mnt/vm/httpdjail.img bs=1k seek=100k count=1;
  • mkfs.ext4 /mnt/vm/httpdjail.img;
  • mount -o loop,noexec,nodev,nosuid -t ext4 /mnt/vm/httpdjail.img /chroot/apache2;

Diretórios Necessários:
  • # mkdir -vp /opt/chroot/apache2/{var/www/html,var/run/apache2,var/log/apache2,usr/share/apache2,tmp,home}
  • # cp -var /usr/share/apache2/{error,icons} /opt/chroot/apache2/usr/share/apache2

Mapeamento do disco virtual:
echo "/mnt/vm/httpdjail.img /chroot/apache2 ext4 loop,nodev,noexec,nosuid 0 0" >> /etc/fstab

Ativar chroot no apache:
echo "ChrootDir /chroot/apache2" > /etc/apache2/conf.d/chroot

Atualizações

26/06/2012; 27/06/2012;

Comentários