Quando inicio firejail , vejo meu diretório pessoal completo. Quando inicio firejail --whitelist=~/something , vejo apenas something em minha casa.
Agora eu gostaria de restringir mais acesso ao sistema. Por exemplo, posso adicionar --blacklist=/media e funciona como esperado.
Mas como o comportamento padrão determina que /home/OTHERUSER e /home/* , exceto os arquivos permitidos, estão ocultos?
Não vejo uma regra correspondente em /etc/firejail/* .
E os subdiretórios são permitidos? Por exemplo, --blacklist=/media --whitelist=/media/data não funciona como esperado, mesmo quando a página de manual informa, essa lista de permissões anula outras opções como --read-only .
Essas regras são codificadas no binário? Se não, qual regra faz essas coisas?
Um exemplo do que eu gostaria de ter. Regras básicas:
/media/data
~/apps ->/media/data/apps somente leitura. /media/data/apps (se necessário) somente leitura. 1, 2 estão funcionando, 3 está trabalhando apenas com 4 (provavelmente está bem), mas a sobreposição do acesso de leitura para um subdiretório de um diretório proibido não funciona.
Parece um pouco intuitivo que funcione, mas na camada do sistema de arquivos mkdir -p foo/bar;chmod 111 foo;ls foo/bar/ (onde 111 significa que não há permissão de leitura (dir-listing) no foo, mas apenas o bit executável (entrada) subdiretórios) funciona, mesmo quando ls foo/ falha.
O cenário estendido não permitiria todos, exceto uma lista de desbloqueio (perfil + / usr, / bin, / lib, etc.). Outra coisa que não parece possível sem o root (e depois o próprio aplicativo é executado como root) é substituir o arquivo / etc / passwd por um que não contenha usuários, o que não deve ser conhecido na cadeia. /etc contém muitos dados legíveis, que devem ser ocultados de aplicativos não confiáveis.
Mas possivelmente o cenário estendido justificaria um contêiner chroot + userspace-lxc completo.
Tags firejail