Control++:Blacklist/Whitelist

Материал из ALT Linux Wiki

control++ может быть использован для применения чёрных/белых списков файлов.

Постановка задачи

  1. Имеется текстовый файл /some_path/some_blacklist.txt, называемый чёрным списком, каждая строка которого представляет собой абсолютный путь к файлу данной системы; По единой команде должно производиться запрещение запуска (исполнения) всех файлов чёрного списка (по-умолчанию - для всех пользователей);
  2. Имеется текстовый файл /some_path/some_whitelist.txt, называемый белым списком, каждая строка которого представляет собой абсолютный путь к файлу данной системы; По единой команде должно производиться запрещение запуска (исполнения) всех файлов системы, кроме файлов белого списка, а запуск (исполнение) файлов белого списка должен быть резрешён (по-умолчанию - для всех пользователей).

Решения поставленной задачи

Правка основного файла настройки control++

Добавить в файл настройки /etc/control++/control++.conf секцию, обозначающую режим control++ с определённым названием (в данном примере режим имеет название some_mode_name), и требующую установку определённого режима прав на файлы (в данном примере режим прав на файлы имеет название some_perm_mode_name)

[some_mode_name]
permissions = some_perm_mode_name

Создание/правка файла настройки режима прав на файлы

Поместить в каталог /etc/control++/samples/permissions файл с описанием режима прав на файлы (в данном примере режим прав на файлы имеет название some_perm_mode_name, его абсолютный путь при этом будет равен /etc/control++/samples/permissions/some_perm_mode_name) и задать ему следующее содержимое:

  • Для задания применения чёрного списка
[blacklist]
path = /some_path/some_blacklist.txt
  • Для задания применения белого списка
[whitelist]
path = /some_path/some_whitelist.txt

Если в белом/чёрном списке присутствуют абсолютные пути к каталогам, файлы которых требуется рекурсивно обработать соответствующим образом, то вместо секций [blacklist] / [whitelist] следует задавать секции [blacklist_r] / [whitelist_r] соответственно.

Ссылки

Основное описание control++