Jaulas com debootstrap e schroot
Neste artigo apresento duas ferramentas que tornam a criação de jaulas bem mais fácil e flexível, isso sem comprometer a segurança.
Parte 2: Conhecendo o schroot
Como foi dito, o schroot é um chroot tunado de forma a garantir mais segurança. O seu comportamento é definido pelos seguintes arquivos de configuração:
E alguns scripts em /etc/schroot/chroot.d/, /etc/schroot/exec.d/, /etc/schroot/setup.d/.
O arquivo /etc/schroot/copyfiles-defaults contém uma listagens de arquivos que deverão ser copiados para dentro de uma jaula quando executada. Isso é interessante para que você possa manter algumas configurações do hospedeiro como usuários e senhas, servidores de domínio, nome de hosts ou qualquer arquivo de configuração.
O arquivo /etc/schroot/mount-defaults contém uma série de diretórios que deverão serem montados (bind) na jaula. Isso é interessante para garantir acesso a dispositivos, dados de processos etc.
O padrão é bem limitado, se você quiser executar aplicativos que usem o X, por exemplo, eu recomendo o seguinte conteúdo:
O arquivo /etc/schroot/script-defaults define quais scripts serão executados por default. Não experimentei mexer nele mas achei ele alto explicativo.
O arquivo /etc/schroot/schroot.conf é o mais importante de todos, por isso pede um capítulo a parte. Vamos ver um pouco sobre ele agora?
- /etc/schroot/copyfiles-defaults;
- /etc/schroot/mount-defaults;
- /etc/schroot/script-defaults;
- /etc/schroot/schroot.conf.
E alguns scripts em /etc/schroot/chroot.d/, /etc/schroot/exec.d/, /etc/schroot/setup.d/.
O arquivo /etc/schroot/copyfiles-defaults contém uma listagens de arquivos que deverão ser copiados para dentro de uma jaula quando executada. Isso é interessante para que você possa manter algumas configurações do hospedeiro como usuários e senhas, servidores de domínio, nome de hosts ou qualquer arquivo de configuração.
O arquivo /etc/schroot/mount-defaults contém uma série de diretórios que deverão serem montados (bind) na jaula. Isso é interessante para garantir acesso a dispositivos, dados de processos etc.
O padrão é bem limitado, se você quiser executar aplicativos que usem o X, por exemplo, eu recomendo o seguinte conteúdo:
proc /proc proc defaults 0 0 /dev /dev none rw,bind 0 0 /dev/pts /dev/pts none rw,bind 0 0 /sys /sys none rw,bind 0 0 /home /home none rw,bind 0 0 /tmp /tmp none rw,bind 0 0
O arquivo /etc/schroot/script-defaults define quais scripts serão executados por default. Não experimentei mexer nele mas achei ele alto explicativo.
O arquivo /etc/schroot/schroot.conf é o mais importante de todos, por isso pede um capítulo a parte. Vamos ver um pouco sobre ele agora?