Установка и настройка tripwire для проверки целостности файлов

Инструкция по настройке и установке утилиты tripware для проверки целостности файлов и каталогов файловой системы на Linux.

Что это такое?

Tripwire - это инструмент, который помогает системным администраторам, инженерам и обычным пользователям контролировать любые изменения определенного набора файлов.

При регулярное работе с системными файлами (например, ежедневно) tripwire может отправлять пользователям информацию о поврежденных или подделанных файлах, поэтому меры по борьбе могут быть приняты своевременно.

Установка

Установите утилиту с помощью вашего пакетного менеджера, например yum:

yum install tripwire -y

Далее необходимо провести начальную конфигурацию, создав ключи. Запустите следующий скрипт и несколько раз введите секретные фразы (пароли):

tripwire-setup-keyfiles

Примечание: site key -ключ, который используется для защиты конфигурационных файлов. Local key - ключ, который используется для запуска бинарных файлов.

Вывод:

[...]
Creating key files...

[...]
Enter the site keyfile passphrase: <введите пароль для site keyfile>
Verify the site keyfile passphrase: <подтвердите пароль site keyfile>
Generating key (this may take several minutes)...Key generation complete.

[...]
Enter the local keyfile passphrase: <введите пароль для local keyfile>
Verify the local keyfile passphrase: <подтвердите пароль local keyfile>
Generating key (this may take several minutes)...Key generation complete.

----------------------------------------------
Signing configuration file...
Please enter your site passphrase: <введите пароль для site keyfile>
Wrote configuration file: /etc/tripwire/tw.cfg

[...]
Signing policy file...
Please enter your site passphrase: <введите пароль для site keyfile>
Wrote policy file: /etc/tripwire/tw.pol
[...]

Запустите скрипт инициализации, это может занять несколько минут. При инициализации базы данных Tripwire создает коллекцию объектов файловой системы. Эта база данных служит базой для проверки целостности:

tripwire --init

Вывод:

Please enter your local passphrase: <введите пароль для local keyfile>
Parsing policy file: /etc/tripwire/tw.pol
Generating the database...
*** Processing Unix File System ***
### Warning: File system error.
### Filename: /usr/sbin/fixrmtab
### No such file or directory
### Continuing...
### Warning: File system error.
### Filename: /usr/bin/vimtutor
### No such file or directory
### Continuing...
[...]

/etc/tripwire/twpol.txt - это текстовые политики Tripwire, где вы указываете, какие файлы и каталоги проверяются. Обратите внимание, что для редактирования этого файла требуется опыт. По умолчанию приведен рабочий пример, из которого вы можете начать свою собственную настройку. Чтобы открыть файл используйте текстовый редактор, например vi:

vi /etc/tripwire/twpol.txt

Для применения изменений выполните следующую команду:

tripwire --update-policy --secure-mode low /etc/tripwire/twpol.txt

Вывод:

Parsing policy file: /etc/tripwire/twpol.txt
Please enter your local passphrase: <введите пароль для local keyfile>
Please enter your site passphrase: <введите пароль для site keyfile>
======== Policy Update: Processing section Unix File System.
======== Step 1: Gathering information for the new policy.
### Warning: File system error.
### Filename: /usr/sbin/fixrmtab
### No such file or directory
### Continuing...
### Warning: File system error.
### Filename: /usr/bin/vimtutor
### No such file or directory
### Continuing…
[...]
======== Step 2: Updating the database with new objects.
======== Step 3: Pruning unneeded objects from the database.
Wrote policy file: /etc/tripwire/tw.pol
Wrote database file: /var/lib/tripwire/centos7x64.twd

Чтобы проверить наличие изменений в файловой системе используйте следующие опции:

tripwire --check --interactive

Например, из этого вывода что создан новый каталог documents и в него добавлен файл test.txt, а а также изменен /etc/tripwire/tw.pol:

[...]
Modified:
[x] "/etc/tripwire/tw.pol"

-------------------------------------------------------------------------------
Rule Name: Root config files (/root)
Severity Level: 100
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Added:
[x] "/root/documents"
[x] "/root/documents/test.txt"

Modified:
[x] "/root"
[...]

Автоматическое создание отчетов

Для того, чтобы отчеты регулярно автоматически создавались и сохранялись, необходимо настроить планировщик Cron.

Откройте файл с расписанием:

crontab -e

Внесите строку описывающую регулярность запуска проверки целостности, например, запуск скрипта каждый день в 0:30 и 12:30:

30 */12 * * * tripwire --check --interactive > <имя_файла>$(date +"%H:%M:%S_%d-%m-%Y")

Например:

30 */12 * * * tripwire --check --interactive > system-$(date +"%H:%M:%S_%d-%m-%Y")

Подробно о правилах планировщика написано в инструкции Настройка планировщика Cron в Linux.

 


Средняя оценка: 5,0, всего оценок: 1