Configurer l'accounting

Auteur : Olivier BOYER - oboyer () ajoute ! org

Mots clés

OpenBSD, système, accounting

Introduction

Ce document décrit comment mettre en place l'accounting sur un système OpenBSD.

Présentation de la maquette

  • un système OpenBSD sur lequel l'administrateur veut connaître les commandes exécutées par les utilisateurs.

Note

Toutes les commandes présentées ici, sont à exécuter, sauf mention contraire, en tant qu'administrateur de la machine.

Pré-requis

Aucun, tout est livré par défaut avec le système.

Démarrer l'accounting

La mise en place de l'accounting sous OpenBSD est très simple. Il sufit d'exécuter en tant que root la commande suivante :

Créer le fichier d'accounting

Avant tout, il faut créer le fichier dans lequel seront enregistrées les données collectées. Procédez comme suit :

# cat /dev/null > /var/account/acct

Modifier les permissions par défaut

Les données d'accounting doivent rester confidentielles. Pour ce faire, interdisez comme suit,l'accès aux fichiers d'accounting :

# chmod 750 /var/account
# chmod 640 /var/account/acct

Démarrer l'accounting

Pour démarrer l'accounting, c'est très simple, il suffit d'exécuter la commande suivante :

# accton /var/account/acct

Activer l'accounting au démarrage de la machine

OpenBSD jusqu'à la version 4.0

Sur les systèmes Openbsd jusqu'à la version 4.0, l'accounting était démarré via le script /etc/rc, dès que le fichier /var/account/acct était créé.

OpenBSD depuis la version 4.1

Depuis la version OpenBSD 4.1, l'accounting est démarré en positionnant la variable accounting=YES dans le fichier /etc/rc.conf.local. Il n'est plus nécessaire de créer le fichier /var/account/acct.

Ajoutez la ligne suivante au fichier /etc/rc.conf.local :

accounting=YES      # process accounting (using /var/account/acct)

Désactiver l'accounting

Pour désactiver l'accounting, c'est toujours très simple, il suffit d'exécuter la commande suivante :

# accton

Lire les rapports d'accounting

Pour lire les rapports d'accounting, il existe deux commandes :

  • lastcomm(1) : affiche les commandes exécutées en ordre inverse
  • sa(8) : affiche les statistiques de l'accounting

Gérer l'archivage des fichiers d'accounting

Le script /etc/daily gère automatiquement les fichiers d'enregistrement de l'accounting. L'admistrateur n'a donc pas besoin de s'en préoccuper.

Extrait du script /etc/daily :

if [ -f /var/account/acct ]; then
        echo ""
        echo "Purging accounting records:"
        mv -f /var/account/acct.2 /var/account/acct.3
        mv -f /var/account/acct.1 /var/account/acct.2
        mv -f /var/account/acct.0 /var/account/acct.1
        cp -f /var/account/acct /var/account/acct.0
        sa -sq
fi

Liens

ANNEXES

Un script pour lister les commandes par utilisateurs

Le script suivant liste toutes les commandes exécutées par chaque utilisateur du système :

# for u in $(cat /etc/passwd| grep -v nologin| awk -F: '{print $1}')
> do
> echo " ===== $u ===== "; lastcomm $u
> done

Ou, dans le cas d'utilisateurs NIS :

# for u in $(ypcat passwd| awk -F: '{print $1}')
> do 
> echo " ===== $u ===== "; lastcomm $u
> done

/etc/rc.d/account

Voici un exemple de script de démarrage et d'arrêt de l'accounting :

/etc/rc.d/account

 
doc/openbsd/accounting.txt · Dernière modification: 2009/12/23 22:36 (édition externe)     Haut de page