Tornar todos os contextos SELinux permanentes


9

chconUltimamente, eu fiz várias coisas , mas se eu entendi direito, elas serão apagadas na próxima remarcação. Existe alguma maneira de tornar os contextos atuais (preferencialmente apenas em um determinado diretório) permanentes? Entendo que existe uma maneira de fazer isso usando semanage, mas isso significa voltar e verificar o contexto de cada arquivo e chamar semanagepara definir uma regra. Então, existe alguma maneira automatizada de fazer isso?

Respostas:


5

Primeiro, você está correto ao semanage fcontext -a -t <type> <filepattern>tornar as alterações de arquivo permanentes adicionando-as à política - será necessário re-rotular ou restorecon -R -v <filepattern>aplicar essas alterações. chconnão altera a política, apenas o contexto em disco.

Você pode gerar uma lista de diferenças para sua política rotulada com matchpathcon, especificamente:

matchpathcon -V /path/to/file

Infelizmente, não há opção recursiva, provavelmente devido ao fato de andar pela árvore ser caro, mas você pode conduzi-la com:

find / -exec matchpathcon -V {} \;

No entanto, tenha cuidado. Acredito que o find irá percorrer todas as montagens de sistema de arquivos, incluindo sistemas de arquivos sem atributos estendidos (xattrs), o que pode causar problemas. Obviamente, se todos os seus sistemas de arquivos tiverem atributos estendidos, não haverá problema.

Depois de ter essa lista, você poderá escrever um script para escolher aqueles que deseja semanage. Eu não sei de uma maneira automatizada de fazer isso em um hit, no entanto.


3

Usar matchpathconcom findé muito lento. Por que não usar restorecon?

restorecon -rnv /path/to/dir

os sinalizadores são recursivos, sem alterações e detalhados.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.