Tripwire-2.4.3.7

Introduction à Tripwire

Le paquet Tripwire contient des programmes utilisés pour vérifier l'intégrité des fichiers sur un système donné.

This package is known to build and work properly using an LFS 12.0 platform.

Informations sur le paquet

Dépendances de Tripwire

Facultatives

Un MTA

Installation de Tripwire

Compilez Tripwire en exécutant les commandes suivantes :

sed -e '/^CLOBBER/s/false/true/'         \
    -e 's|TWDB="${prefix}|TWDB="/var|'   \
    -e '/TWMAN/ s|${prefix}|/usr/share|' \
    -e '/TWDOCS/s|${prefix}/doc/tripwire|/usr/share/doc/tripwire-2.4.3.7|' \
    -i installer/install.cfg                               &&

find . -name Makefile.am | xargs                           \
    sed -i 's/^[[:alpha:]_]*_HEADERS.*=/noinst_HEADERS =/' &&

sed '/dist/d' -i man/man?/Makefile.am                      &&
autoreconf -fi                                             &&

./configure --prefix=/usr --sysconfdir=/etc/tripwire       &&
make CPPFLAGS=-std=c++11
[Note]

Note

La configuration par défaut consiste à utiliser un MTA local. Si vous n'avez pas installé de MTA et si vous ne souhaitez pas en installer, modifiez install/install.cfg pour utiliser plutôt un serveur SMTP. Sans cela, l'installation échouera.

Ce paquet n'a pas de suite de tests.

Maintenant, en tant qu'utilisateur root :

make install &&
cp -v policy/*.txt /usr/share/doc/tripwire-2.4.3.7
[Note]

Note

Pendant make install, plusieurs questions sont posées, incluant les mots de passe. Si vous voulez faire un script, vous devez appliquer un sed avant de lancer make install:

sed -i -e 's@installer/install.sh@& -n -s <site-password> -l <local-password>@' Makefile

Bien sûr, vous devez faire cela avec des mots de passe triviaux et les changer ensuite.

Un autre problème quand on utilise un script est que l'installateur termine quand l'entrée standard n'est pas un terminal. Vous pouvez désactiver ce comportement avec le sed suivant :

sed '/-t 0/,+3d' -i installer/install.sh

Explication des commandes

sed ... installer/install.cfg : Cette commande dit au paquet d'installer la base de données et les rapports du programme dans /var/lib/tripwire et indique les bons emplacements pour les pages de manuel et la documentation.

find ..., sed ... et autoreconf -fi : Le système de construction est inutilisable tel quel et doit être modifié pour que la construction réussisse.

CPPFLAGS=-std=c++11 : il faut paramétrer les drapeaux du préprocesseur C++ à la version 11 pour éviter un conflit avec la version par défaut qui est c++17 dans les versions récentes de gcc.

make install : Cette commande crée les clés de sécurité Tripwire et installe les binaires. Il y a deux clés : une clé distante et une clé locale qui sont stockées dans /etc/tripwire/.

cp -v policy/*.txt /usr/doc/tripwire-2.4.3.7 : Cette commande installe les modèles de fichiers de politique de tripwire avec le reste de la documentation de tripwire.

Configuration de Tripwire

Fichiers de configuration

/etc/tripwire/*

Informations sur la configuration

Tripwire utilise un fichier de règles pour déterminer les fichiers dont l'intégrité est à vérifier. Le fichier de règles par défaut (/etc/tripwire/twpol.txt) vaut pour une installation par défaut et devra être mis à jour selon votre système.

Vous devriez adapter les fichiers de règles à chaque distribution ou installation individuelle. Vous pouvez trouver certains fichiers de règles d'exemples dans /usr/share/doc/tripwire/.

Si vous le souhaitez, copiez le fichier de règles que vous aimeriez essayer dans /etc/tripwire/ au lieu d'utiliser le fichier de règles par défaut, twpol.txt. Néanmoins, on vous recommande d'éditer votre propre fichier de règles. Inspirez-vous des exemples ci-dessus et lisez /usr/share/doc/tripwire/policyguide.txt pour des informations supplémentaires. twpol.txt est un bon fichier de règles pour apprendre Tripwire car il remarquera n'importe quelle modification dans le système de fichiers et il peut même être utilisé comme une façon ennuyeuse de garder une trace des changements de désinstallation d'un logiciel.

Après que votre fichier de règles a été éditez selon vos désirs, vous pouvez commencer les étapes de configuration (effectuez en tant qu'utilisateur root) :

twadmin --create-polfile --site-keyfile /etc/tripwire/site.key \
    /etc/tripwire/twpol.txt &&
tripwire --init

Selon votre système et le contenu du fichier de règles, la phase d'initialisation ci-dessus peut prendre un temps relativement long.

Informations d'utilisation

Tripwire identifiera les modifications de fichiers dans les fichiers critiques du système indiqués dans le fichier de règles. L'utilisation de Tripwire si vous modifiez souvent ces répertoires marquera toutes ces modifications. C'est souvent utile après que le système a atteint une configuration considérée comme stable par l'utilisateur.

Pour utiliser Tripwire après avoir créé un fichier de règles pour lancer un signalement, utilisez la commande suivante :

tripwire --check > /etc/tripwire/report.txt

Observez la sortie pour vérifier l'intégrité de vos fichiers. Un rapport automatique d'intégrité peut être obtenu en utilisant une fonctionnalité cron pour programmer à l'avance les exécutions.

Les rapports sont stockés en binaire et, si vous le désirez, chiffrés. Observez les rapports, en tant qu'utilisateur root, avec :

twprint --print-report -r /var/lib/tripwire/report/<report-name.twr>

Après avoir lancé une vérification d'intégrité, vous devriez examiner le rapport (ou le message électronique) puis modifier la base de données Tripwire pour refléter les fichiers modifiés sur votre système. Ceci pour que Tripwire ne vous notifie pas en permanence que des fichiers que vous avez volontairement modifiés sont une violation de sécurité. Pour faire cela, vous devez tout d'abord faire ls -l /var/lib/tripwire/report/ et remarquer le nom du fichier le plus récent qui commence par le nom de votre système tel que présenté par la commande uname -n et qui finit par .twr. Ces fichiers ont été créés pendant la création du rapport et le plus actuel est nécessaire pour mettre à jour la base de données Tripwire de votre système. En tant qu'utilisateur root, entrez la commande suivante en faisant le nom du rapport adéquat :

tripwire --update --twrfile /var/lib/tripwire/report/<report-name.twr>

Vous serez mis dans vim avec une copie du rapport face à vous. Si tous les changements sont corrects, tapez simplement :wq et après avoir entré votre clé locale, la base de données sera mise à jour. S'il y a des fichiers pour lesquels vous voulez encore être averti, supprimez le 'x' avant le nom du fichier dans le rapport et tapez :wq.

Modifier le fichier de règles

Si vous n'êtes pas content de votre fichier de règles et si vous aimeriez le modifier ou en utiliser un nouveau, modifiez le fichier de règles puis exécutez les commandes suivantes en tant qu'utilisateur root :

twadmin --create-polfile /etc/tripwire/twpol.txt &&
tripwire --init

Contenu

Programmes installés: siggen, tripwire, twadmin et twprint
Bibliothèques installées: Aucune
Répertoires installés: /etc/tripwire, /var/lib/tripwire et /usr/share/doc/tripwire-2.4.3.7

Descriptions courtes

siggen

est un outil rassembleur de signatures qui affiche les valeurs de la fonction de hachage pour les fichiers spécifiés

tripwire

est le programme principal de vérification d'intégrité des fichiers

twadmin

outil d'administration utilisé pour effectuer certaines fonctions administratives et certaines options de configuration liées aux fichiers Tripwire

twprint

affiche une base de données et des fichiers de rapport Tripwire au format texte en clair