Logs d'authentification sur OmniOS CE

Introduction

Par défaut, OmniOS CE ne journalise pas les événements d'authentification (connexions SSH, su, sudo, etc.).
Cette configuration est problématique pour la sécurité, car elle empêche de détecter les tentatives d'intrusion et de mettre en place des mécanismes de protection comme fail2ban.

Cet article présente deux méthodes pour activer ces logs :


Méthode 1 : rsyslog

Présentation

OmniOS CE utilise rsyslog comme démon de journalisation système.
Par défaut, les messages d'authentification ne sont pas redirigés vers un fichier dédié.
Cette méthode crée un fichier /var/log/authlog contenant tous les événements d'authentification.

Vérification de l'état initial

Vérifier quel service syslog est actif :

# Vérifier les services syslog
svcs system-log

# Résultat attendu :
STATE STIME FMRI
disabled ... svc:/system/system-log:default
online ... svc:/system/system-log:rsyslog

(rsyslog doit être "online", le syslog classique "disabled")

Configuration de rsyslog

Créer un fichier de configuration pour activer les logs d'authentification :

# Créer le fichier de configuration
cat << 'EOF' > /etc/rsyslog.d/authlog.conf
# Logs d'authentification
auth.* /var/log/authlog
authpriv.* /var/log/authlog
EOF

# Redémarrer rsyslog
svcadm restart system-log:rsyslog

# Vérifier le statut
svcs system-log:rsyslog

Test de la configuration

Générer un événement de test et vérifier le fichier de log :

# Générer un événement de test
logger -p auth.info "Test authlog rsyslog"

# Vérifier le contenu du fichier
cat /var/log/authlog

Résultat attendu après une connexion SSH :

Dec 30 15:56:19 localhost sshd-session[1806]: Accepted password for adminweb from 192.168.10.196 port 61140 ssh2
Dec 30 15:56:22 localhost sudo: adminweb : TTY=pts/2 ; PWD=/home/adminweb ; USER=root ; COMMAND=/usr/bin/su -
Dec 30 15:56:22 localhost su: 'su root' succeeded for adminweb on /dev/pts/2

Format des logs

Les logs rsyslog utilisent un format texte simple, facile à parser :


Méthode 2 : auditd (BSM)

Présentation

OmniOS hérite du système d'audit BSM (Basic Security Module) de Solaris. Ce système offre un audit de sécurité complet avec des informations très détaillées sur chaque événement. Les logs sont stockés au format binaire dans /var/audit/ et doivent être lus avec la commande praudit.

Vérification de l'état initial

# Vérifier le service auditd
svcs auditd

# Vérifier la condition d'audit
auditconfig -getcond

# Résultat par défaut :
audit condition = noaudit

Configuration des classes d'audit

Vérifier que la classe lo (login/logout) est configurée :

# Voir les flags d'audit configurés
auditconfig -getflags

# Résultat attendu :
active user default audit flags = lo(0x1000,0x1000)
configured user default audit flags = lo(0x1000,0x1000)

# Voir les classes disponibles
cat /etc/security/audit_class | grep -E "^0x"

Classes d'audit principales :

Activation du service auditd

# Activer le service auditd
svcadm enable auditd

# Vérifier le statut
svcs auditd

# Vérifier que l'audit est actif
auditconfig -getcond

# Résultat attendu :
audit condition = auditing

Lecture des logs d'audit

Les logs sont stockés au format binaire et doivent être convertis avec praudit :

# Voir les fichiers d'audit
ls -la /var/audit/

# Lire tous les logs d'audit
praudit /var/audit/*

# Filtrer sur les événements de connexion
praudit /var/audit/* | grep -i -E "ssh|login|subject"

Exemple de sortie :

header,97,2,login - ssh,,localhost,2025-12-30 16:08:12.809 +01:00
subject,adminweb,adminweb,other,adminweb,other,0,2244675411,0 0 0.0.0.0
return,success,0

header,81,2,su,,localhost,2025-12-30 16:08:18.112 +01:00
subject,adminweb,root,root,root,root,1971,2666542011,13883 163315 192.168.10.196
return,success,0

Commandes utiles auditconfig


Comparaison des deux méthodes

Aspect rsyslog auditd (BSM)
Format Texte lisible Binaire (praudit)
Fichier /var/log/authlog /var/audit/*
Parsing script Simple (grep/awk) Plus complexe
Niveau de détail Basique Très détaillé
Charge système Légère Légèrement plus élevée
Usage recommandé Scripts anti-brute-force Audit de sécurité complet

Recommandation

Il est recommandé d'activer les deux méthodes en fonction de l'usage souhaité :

Les deux systèmes fonctionnent indépendamment et ne créent pas de conflit.


Résumé des commandes

Activation rsyslog

cat << 'EOF' > /etc/rsyslog.d/authlog.conf
auth.* /var/log/authlog
authpriv.* /var/log/authlog
EOF
svcadm restart system-log:rsyslog

Activation auditd

svcadm enable auditd
auditconfig -getcond

Conclusion

L'activation des logs d'authentification est une étape essentielle pour sécuriser un serveur OmniOS CE. Que ce soit via rsyslog pour sa simplicité ou auditd pour sa richesse d'information, ces logs permettent de détecter les tentatives d'intrusion et de mettre en place des mécanismes de protection automatisés.

Une fois les logs activés, il devient possible d'implémenter des solutions de type fail2ban pour bloquer automatiquement les adresses IP malveillantes.



↑ Haut de page