Зробіть усі контексти SELinux постійними


9

Я багато робив chconостаннім часом, але якщо я це правильно зрозумів, вони будуть стерті на наступному реле. Чи є спосіб змінити поточний контекст (бажано, під певним каталогом) постійним? Я розумію, що є спосіб зробити це за допомогою semanage, але це означає повернутись назад і перевірити контекст кожного файлу і попросити semanageвстановити правило. То чи існує якийсь автоматизований спосіб це зробити?

Відповіді:


5

По-перше, ви коректуєте, що semanage fcontext -a -t <type> <filepattern>робить зміни файлів постійними, додаючи їх до політики - вам потрібно буде відновити повторний зв'язок або restorecon -R -v <filepattern>застосувати ці зміни. chconне змінює політику, лише контекст на диску.

Ви можете створити список відмінностей у вашій політиці з маркуванням matchpathcon, зокрема:

matchpathcon -V /path/to/file

На жаль, він не має рекурсивного варіанту, ймовірно, через те, що ходити по дереву було б дорого, але ви могли б керувати ним:

find / -exec matchpathcon -V {} \;

Однак будьте обережні. Я вважаю, що пошук обмине всі кріплення файлової системи, включаючи файлові системи без розширених атрибутів (xattrs), що може спричинити проблеми. Звичайно, якщо всі ваші файлові системи мають розширені атрибути, це не проблема.

Коли у вас є цей список, ви зможете написати сценарій, щоб вибрати ті, які ви будете semanage. Однак я не знаю автоматизованого способу зробити це одним ударом.


3

Використання matchpathconз findдуже повільним. Чому б не використовувати restorecon?

restorecon -rnv /path/to/dir

прапори є рекурсивними, без змін та багатослівними.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.