Iniciando um aplicativo que não pode tocar nos arquivos existentes

1

Eu tenho um aplicativo que gostaria de iniciar em um "ambiente visualizado". Eu não quero que este aplicativo seja capaz de gravar / ler quaisquer arquivos no meu sistema de arquivos local. Um bônus seria poder monitorar tudo o que esse aplicativo faz.

A aplicação é gráfica se isso for importante.

Posso fazer isso com as ferramentas existentes do Linux? Posso emular este comportamento com o chroot?

Eu não quero rodar um virtualbox completo apenas para um aplicativo, isso parece ser um over kill.

Obrigado Maxim.

    
por Maxim Veksler 21.11.2010 / 18:32

2 respostas

1

O SELinux permitirá que você inicie o aplicativo em um domínio restrito, e o subsistema de auditoria permitirá que você veja o que ele faz.

    
por 21.11.2010 / 18:41
1

verifique o lxc, contêineres Linux. É um 'melhor chroot do que o chroot', como os contêineres Solaris ou as cadeias BSD, também comparável ao OpenVZ ou ao VServer. O conceito base é isolar algumas visões do sistema de um processo.

Por exemplo, se você isolar a árvore PID, o processo inicia uma nova árvore: vê-se como PID # 1 e os subprocessos veem apenas essa subárvore. Outros processos vêem PIDs 'normais' como parte de toda a árvore.

Similarmente, você isola arquivos por um chroot mais poderoso, escolhe quanta memória e CPU esses processos podem obter, quais interfaces de rede eles vêem (que podem ser interfaces 'virtuais', opcionalmente roteadas ou conectadas às reais )

se desejar, o processo base no container pode ser init , criando um novo sistema virtual; ou pode ser uma aplicação específica, permitindo que você a limite enquanto ainda trabalha sem nenhuma sobrecarga mensurável.

    
por 22.11.2010 / 03:12