Tripwire может работать в одном из следующих режимов.
• Генерация базы данных. При первом запуске Tripwire необходимо инициализировать базу данных. Для этого после редактирования конфигурационного файла вызовите команду tripwire -initialize. Выполнение этой процедуры может продлиться достаточно долго, так как программа Tripwire должна создать контрольные суммы всех файлов, контроль над которыми был предусмотрен при настройке данного инструмента. Сформированная база данных помещается в подкаталог databases
текущего каталога, но желательно переместить ее в каталог /usr/lib/tripwire/databases
. Запись данных в этот каталог следует запретить.
• Обновление базы данных. Если вы внесли изменения в систему, можете обновить базу данных Tripwire. Для этого вызовите команду tripwire -update путь_к_файлу
, указав файл, который необходимо учесть в базе данных.
• Интерактивное обновление базы данных. Если внесенные вами изменения затрагивают несколько компонентов системы или если вы установили большой пакет, запустите Tripwire в интерактивном режиме. Для этого вызовите команду tripwire -interactive
. В этом случае программа будет отыскивать файлы, подвергшиеся изменениям, и осведомляться у вас, следует ли учитывать эти изменения в базе данных.
• Проверка целостности системы. Этот режим используется по умолчанию. Для того чтобы запустить Tripwire в таком режиме, достаточно ввести в командной строке tripwire
. Проверку целостности системы желательно выполнять каждый день. Периодический вызов Tripwire можно организовать с помощью cron
.
Работой Tripwire управляет конфигурационный файл /etc/tripwire/tw.config
. Подобно многим другим конфигурационным файлам, строки, начинающиеся с символа #
, содержат комментарии. В остальных строках указываются каталоги, предназначенные для проверки. Соответствующие записи имеют следующий формат:
[!|=] объект [ флаги_выбора | шаблон ]
Назначение компонентов записи приведено ниже.
• !
. Если данный символ предшествует имени объекта, то указанный файл или каталог не подлежит проверке. Если объектом является каталог, содержащиеся в нем подкаталоги также не проверяются.
• =
. Данный символ указывает на то, что каталог подлежит проверке, а файлы и подкаталоги, содержащиеся в нем, не должны проверяться. Обычно этот символ указывается для рабочих каталогов пользователей. Если символ =
предшествует имени каталога, то Tripwire лишь сообщает о том, что файлы или подкаталоги были созданы или удалены, но не приводит подробную информацию об этих файлах.
• объект
. Объект представляет собой имя файла или каталога, предназначенного для проверки, например /etc
или /usr
. Если в качестве объекта указан каталог, выполняется проверка всех его подкаталогов. Не проверяются лишь подкаталоги, представляющие собой отдельные файловые системы. Например, если содержимое каталогов /usr
и /usr/local
находится в разных разделах, то, чтобы проверить все дерева подкаталогов, вы должны создать записи как для /usr
, так и для /usr/local
.
• флаги_выбора
. Данный компонент записи указывает Tripwire на то, какие типы изменений должны быть отражены в отчете. Флаги задаются в формате [+|-] [pinugsamc123456789]...
. Символ +
или -
разрешает или запрещает включать сведения в отчет. Остальные символы определяют типы проверки. Например, pзадает поверку прав доступа, i
— проверку индексных дескрипторов (mode), n
соответствует числу связей, u
— идентификатору владельца файла, g
— идентификатору группы, s
— размеру файла, а
— времени доступа, m
— времени модификации, с
— времени создания индексного дескриптора, а числа 0-9 задают особенности контрольного суммирования.
• шаблон
. Вместо флагов выбора вы можете задать шаблон. По умолчанию принимается шаблон R
, соответствующий +pinugsm12-ac3456789
. В качестве примеров других шаблонов можно привести L
( +pinugsacm123456789
), используемый для проверки файлов протоколов, N
( +pinugsamc123456789
), который выполняет подробную проверку, но проверка эта занимает много времени, и E
( -pinugsamc123456789
), игнорирующий все типы проверки.
Сформировав конфигурационный файл Tripwire, вы должны запустить программу в режиме генерации базы данных. В результате файл базы данных будет создан в каталоге databases
. При последующих запусках Tripwire будет отыскивать файл базы данных в каталоге /usr/lib/tripwire/databases
. Этот файл очень важен, поэтому вы должны обеспечить его сохранность. Способы сохранения файла базы данных описаны ниже.
Читать дальше