JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Guide d'administration système : Services de sécurité
search filter icon
search icon

Informations document

Préface

Partie I Présentation de la sécurité

1.  Services de sécurité (présentation)

Partie II Sécurité du système, des fichiers et des périphériques

2.  Gestion de la sécurité de la machine (présentation)

3.  Contrôle de l'accès aux systèmes (tâches)

4.  Contrôle de l'accès aux périphériques (tâches)

5.  Utilisation de l'outil de génération de rapports d'audit de base (tâches)

6.  Contrôle de l'accès aux fichiers (tâches)

7.  Utilisation d'Automated Security Enhancement Tool (Tâches)

Partie III Rôles, profils de droits et privilèges

8.  Utilisation des rôles et des privilèges (présentation)

9.  Utilisation du contrôle d'accès basé sur les rôles (tâches)

10.  Contrôle d'accès basé sur les rôles (référence)

11.  Privilèges (tâches)

12.  Privilèges (référence)

Partie IV Services cryptographiques

13.  Structure cryptographique Oracle Solaris (présentation)

14.  Structure cryptographique Oracle Solaris (tâches)

15.  Structure de gestion des clés Oracle Solaris

Partie V Services d'authentification et communication sécurisée

16.  Utilisation des services d'authentification (tâches)

17.  Utilisation de PAM

18.  Utilisation de SASL

19.  Utilisation d'Oracle Solaris Secure Shell (tâches)

20.  Oracle Solaris Secure Shell (référence)

Partie VI Service Kerberos

21.  Introduction au service Kerberos

22.  Planification du service Kerberos

23.  Configuration du service Kerberos (tâches)

24.  Messages d'erreur et dépannage de Kerberos

25.  Administration des principaux et des stratégies Kerberos (tâches)

26.  Utilisation des applications Kerberos (tâches)

27.  Service Kerberos (référence)

Partie VII Audit Oracle Solaris

28.  Audit Oracle Solaris (présentation)

29.  Planification de l'audit Oracle Solaris

30.  Gestion de l'audit Oracle Solaris (tâches)

Audit Oracle Solaris (liste des tâches)

Configuration des fichiers d'audit (liste des tâches)

Configuration des fichiers d'audit (tâches)

Modification du fichier audit_control

Configuration des journaux d'audit syslog

Modification des caractéristiques d'audit d'un utilisateur

Ajout d'une classe d'audit

Modification de l'appartenance à une classe d'un événement d'audit

Configuration et activation du service d'audit (liste des tâches)

Configuration et activation du service d'audit (tâches)

Création des partitions pour les fichiers d'audit

Configuration de l'alias de messagerie audit_warn

Configuration de la stratégie d'audit

Activation du service d'audit

Désactivation du service d'audit

Mise à jour du service d'audit

Configuration du service d'audit dans les zones (tâches)

Configuration identique de toutes les zones pour l'audit

Configuration de l'audit par zone

Gestion des enregistrements d'audit (liste des tâches)

Gestion des enregistrements d'audit

Affichage des formats d'enregistrement d'audit

Fusion des fichiers d'audit de la piste d'audit

Sélection des événements d'audit de la piste d'audit

Affichage du contenu des fichiers d'audit binaires

Nettoyage d'un fichier d'audit not_terminated

Contrôle du dépassement de la piste d'audit

Dépannage de l'audit Oracle Solaris (tâches)

Dépannage de l'audit Oracle Solaris (liste des tâches)

Vérification de l'exécution de l'audit Oracle Solaris

Atténuation du volume des enregistrements d'audit produits

Audit de toutes les commandes par les utilisateurs

Recherche des enregistrements d'audit concernant des modifications de fichiers spécifiques

Modification d'un masque de présélection utilisateur

Suppression de certains événements de la liste d'audit

Limitation de la taille des fichiers d'audit binaires

Audit des connexions à partir d'autres systèmes d'exploitation

Audit des transferts de fichiers FTP et SFTP

31.  Audit Oracle Solaris (référence)

Glossaire

Index

Dépannage de l'audit Oracle Solaris (liste des tâches)

La liste des tâches suivante présente les procédures de dépannage de l'audit Oracle Solaris.

Problème
Solution
Voir
Pourquoi les fichiers d'audit ne se sont-ils pas créés alors que j'ai configuré l'audit ?
Résolvez les problèmes du démon d'audit et des fichiers de configuration d'audit.
Comment puis-je réduire la quantité d'informations d'audit collectées ?
Auditez uniquement les événements que vous voulez contrôler.
Comment puis-je auditer tout ce qu'un utilisateur fait sur le système ?
Auditez un ou plusieurs utilisateurs pour chaque commande.
Comment faire pour affecter aux sessions existantes les modifications que j'apporte actuellement aux événements d'audit en cours d'enregistrement ?
Mettez à jour un masque de présélection utilisateur.
Comment accéder aux modifications apportées à un fichier particulier ?
Auditez les modifications du fichier, puis utilisez la commande auditreduce pour rechercher un fichier donné.
Comment puis-je réduire la taille de mes fichiers d'audit ?
Limitez la taille du fichier d'audit binaire.
Comment puis-je supprimer les événements d'audit du fichier audit_event ?
Mettez à jour le fichier audit_event.
Comment puis-je auditer tous les noms d'utilisateur d'un système Oracle Solaris ?
Auditez les connexions à partir de n'importe quel système.
Pourquoi les enregistrements d'audit ne sont-ils pas conservés pour mes transferts FTP ?
Utilisez l'outil d'audit qui permet aux utilitaires de gérer leurs propres journaux.

Vérification de l'exécution de l'audit Oracle Solaris

Si vous pensez que l'audit a été activé, mais constatez qu'aucun enregistrement d'audit n'apparaît dans votre répertoire d'audit principal, essayez d'effectuer l'une des opérations suivantes.

Avant de commencer

Vous avez correctement configuré la base de données hosts dans votre service de nommage et elle fonctionne. Pour déboguer des problèmes de service de nommage, reportez-vous aux sections suivantes :

  1. Vérifiez que l'audit est en cours d'exécution.
    • Vérifiez que le module de noyau c2audit est chargé.
      # modinfo | grep c2audit

      Aucune liste n'indique que l'audit n'est pas en cours d'exécution. La liste suivante indique que l'audit est en cours d'exécution :

      40  132ce90  14230 186   1  c2audit (C2 system call)
    • Vérifiez que le démon d'audit est en cours d'exécution.

      Vérifiez l'état du service auditd. La liste suivante indique que l'audit n'est pas en cours d'exécution :

      # svcs -x auditd
      svc:/system/auditd:default (Solaris audit daemon)
       State: disabled since Fri Aug 14 19:02:35 2009
      Reason: Disabled by an administrator.
         See: http://sun.com/msg/SMF-8000-05
         See: auditd(1M)
         See: audit(1M)
      Impact: This service is not running.

      La liste suivante indique que le service d'audit est en cours d'exécution :

      # svcs auditd
      STATE          STIME    FMRI
      online         10:10:10 svc:/system/auditd:default
    • Vérifiez la condition d'audit en cours.

      La liste suivante indique que l'audit n'est pas en cours d'exécution :

      # auditconfig -getcond
      auditconfig: auditon(2) failed.
      auditconfig: error = Operation not supported(48)

      La liste suivante indique que l'audit est en cours d'exécution :

      # auditconfig -getcond
      audit condition = auditing

    Si le service d'audit n'est pas activé, activez-le. Pour connaître la procédure, reportez-vous à la section Activation du service d'audit .

  2. Vérifiez la syntaxe du fichier audit_control.
    # audit -v /etc/security/audit_control
    audit: audit_control must have either a valid "dir:" entry 
    or a valid "plugin:" entry with "p_dir:" specified.

    Corrigez les erreurs. Le message syntaxe ok indique que le fichier est syntaxiquement correct.

  3. Vérifiez que le fichier audit_control a des valeurs valides pour les mots-clés flags et naflags.
    # grep flags /etc/security/audit_control
    flags:lo
    naflags:na,lp

    Fournissez des valeurs valides si le fichier audit_control possède des valeurs non valides. Dans l'exemple précédent, lp est une classe non valide.

  4. Vérifiez que le fichier audit_user a des valeurs valides pour chaque utilisateur.
    # tail audit_user
    ...
    # User Level Audit User File
    #
    # File Format
    #
    #    username:always:never
    #
    root:lo:no
    admin:lp:no

    Fournissez des valeurs valides si le fichier audit_user possède des valeurs non valides. Dans l'exemple précédent, lp est une classe non valide.

  5. Si vous avez créé une classe d'audit personnalisée, vérifiez que vous avez affecté des événements à cette classe.

    Par exemple, le fichier audit_control suivant contient une classe non fournie par le logiciel Oracle Solaris :

    # grep flags /etc/security/audit_control
    flags:lo,pf
    naflags:na,lo

    Pour obtenir une description de la création de la classe pf, reportez-vous à la section Ajout d'une classe d'audit .

    1. Vérifiez que la classe est définie dans le fichier audit_class.

      Le masque de classe d'audit doit être unique.

      # grep pf /etc/security/audit_class
      0x10000000:pf:profile command

      Si la classe n'est pas définie, définissez-la. Dans le cas contraire, supprimez la classe des fichiers audit_control et audit_user.

    2. Vérifiez que les événements ont été affectés à la classe.
      # grep pf /etc/security/audit_event
      6180:AUE_prof_cmd:profile command:ua,as,pf

      Si des événements ne sont pas affectés à la classe, affectez-y les événements appropriés.

  6. Si aucun problème n'a été indiqué au cours des étapes précédentes, reportez-vous aux fichiers journaux système, /var/adm/messages et /var/log/syslog.
    1. Localisez et résolvez les problèmes.
    2. Ensuite, si le service d'audit est en cours d'exécution, redémarrez-le.
      # audit -s
    3. Si le service d'audit n'est pas activé, activez-le.

      Pour connaître la procédure, reportez-vous à la section Activation du service d'audit .

Atténuation du volume des enregistrements d'audit produits

Une fois que vous avez déterminé les événements à auditer sur votre site, utilisez les suggestions suivantes pour créer des fichiers d'audit faciles à gérer.

  1. Utilisez la stratégie d'audit par défaut.

    Évitez en particulier d'ajouter des événements et des jetons d'audit à la piste d'audit. Les stratégies suivantes ont une incidence sur la taille de la piste d'audit.

    • Stratégie arge : ajoute des variables d'environnement aux événements d'audit exec.

    • Stratégie argv : ajoute des paramètres de commande aux événements d'audit exec.

    • Stratégie public : si des événements de fichier sont en cours d'audit, ajoute un événement à la piste d'audit chaque fois qu'un événement auditable se produit dans un fichier public. Les classes de fichier comprennent fa, fc, fd, fm, fr, fw et cl. Pour la définition d'un fichier public, reportez-vous à la section Terminologie et concept de l'audit.

    • Stratégie path : ajoute un jeton path aux événements d'audit qui comprennent un jeton path facultatif.

    • Stratégie group : ajoute un jeton group aux événements d'audit qui comprennent un jeton newgroups facultatif.

    • Stratégie seq : ajoute un jeton sequence à chaque événement d'audit.

    • Stratégie trail : ajoute un jeton trailer à chaque événement d'audit.

    • Stratégie windata_down : sur un système configuré avec Trusted Extensions, ajoute les événements lorsque les informations dans une fenêtre étiquetée sont réduites.

    • Stratégie windata_up : sur un système configuré avec Trusted Extensions, ajoute les événements lorsque les informations dans une fenêtre étiquetée sont détaillées.

    • Stratégie zonename : ajoute le nom de zone à chaque événement d'audit. Si la zone globale est la seule zone configurée, ajoute zone, global à chaque événement d'audit.

    L'enregistrement d'audit suivant montre l'utilisation de l'instruction de la commande ls. La classe ex est auditée et la stratégie par défaut est en cours d'utilisation :

    header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
    path,/usr/bin/ls
    subject,jdoe,root,root,root,root,1401,737,0 0 mach1
    return,success,0

    Ci-dessous, le même enregistrement lorsque toutes les stratégies sont activées :

    header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
    path,/usr/bin/ls
    attribute,100555,root,bin,136,432,0
    exec_args,1,ls
    exec_env,9,HOME=/,HZ=,LANG=C,LOGNAME=root,MAIL=/var/mail/root,PATH=/u
    sr/sbin:/usr/bin,SHELL=/sbin/sh,TERM=xterm,TZ=US/Pacific
    path,/lib/ld.so.1
    attribute,100755,root,bin,136,4289,0
    subject,jdoe,root,root,root,root,1401,737,0 0 mach1
    group,root,other,bin,sys,adm,uucp,mail,tty,lp,nuucp,daemon
    return,success,0
    zone,global
    sequence,313540
    trailer,375
  2. Utilisez le plug-in audit_syslog.so pour envoyer des événements d'audit à syslog.

    Cette stratégie fonctionne uniquement si vous n'êtes pas obligé de conserver des enregistrements binaires des événements d'audit que vous envoyez aux journaux syslog. En utilisant la commande auditreduce, vous pouvez éliminer les fichiers binaires de ces enregistrements, et, par conséquent, réduire la taille des fichiers binaires.

  3. Utilisez le fichier audit_user pour les événements d'audit pour des utilisateurs et des rôles spécifiques.

    Diminuez l'audit pour l'ensemble des utilisateurs en réduisant le nombre de classes d'audit dans le fichier audit_control. Dans le fichier audit_user, ajoutez des classes d'audit pour des utilisateurs et des rôles spécifiques.

  4. Créez votre propre classe d'audit.

    Vous pouvez créer des classes d'audit sur votre site. Dans ces classes, placez tous les événements d'audit que vous avez besoin de surveiller. Pour connaître cette procédure, reportez-vous à la section Ajout d'une classe d'audit .


    Remarque - Si vous modifiez des affectations de classes d'audit existantes, vos modifications risquent d'être perdues lors de la mise à niveau vers une version plus récente du SE Oracle Solaris. Lisez attentivement les journaux d'installation.


Audit de toutes les commandes par les utilisateurs

Dans le cadre de leur stratégie de sécurité, certains sites nécessitent des enregistrements d'audit pour toutes les commandes en cours d'exécution par l'utilisateur root ou par des rôles d'administration. Certains sites nécessitent également des enregistrements d'audit pour toutes les commandes exécutées par les utilisateurs.

  1. Auditez les classes lo et ex.

    La classe ex audite tous les appels des fonctions exec() et execve(). La classe lo audite les connexions, déconnexions et blocages d'écran. La sortie suivante répertorie tous les événements des classes ex et lo.

    7:AUE_EXEC:exec(2):ps,ex
    23:AUE_EXECVE:execve(2):ps,ex
    ...
    6152:AUE_login:login - local:lo
    6153:AUE_logout:logout:lo
    6154:AUE_telnet:login - telnet:lo
    6155:AUE_rlogin:login - rlogin:lo
    6158:AUE_rshd:rsh access:lo
    6159:AUE_su:su:lo
    6162:AUE_rexecd:rexecd:lo
    6163:AUE_passwd:passwd:lo
    6164:AUE_rexd:rexd:lo
    6165:AUE_ftpd:ftp access:lo
    6171:AUE_ftpd_logout:ftp logout:lo
    6172:AUE_ssh:login - ssh:lo
    6173:AUE_role_login:role login:lo
    6212:AUE_newgrp_login:newgrp login:lo
    6213:AUE_admin_authenticate:admin login:lo
    6221:AUE_screenlock:screenlock - lock:lo
    6222:AUE_screenunlock:screenlock - unlock:lo
    6227:AUE_zlogin:login - zlogin:lo
    • Pour auditer ces classes pour les administrateurs, modifiez le fichier audit_user.

      Dans l'exemple suivant, le site a créé trois rôles, sysadmin, auditadm et netadm. Ces rôles et le compte root sont audités pour les classes exec et lo :

      ## audit_user file
      root:lo,ex:no
      sysadm:lo,ex:no
      auditadm:lo,ex:no
      netadm:lo,ex:no
    • Pour auditer la classe lo au niveau des événements non attribuables, modifiez le fichier audit_control.
      ## audit_control file
      ...
      naflags:lo
      ...
    • Pour auditer ces classes pour tous les utilisateurs, modifiez le fichier audit_control.
      ## audit_control file
      flags:lo,ex
      naflags:lo
      ...

      La sortie se présente de la manière suivante :

      header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
      path,/usr/bin/ls
      subject,jdoe,root,root,root,root,1401,737,0 0 mach1
      return,success,0
  2. Pour enregistrer les arguments de commande, définissez la stratégie argv.
    ## audit_startup script
    ...
    auditconfig -setpolicy +argv
    ...

    Le jeton exec_args enregistre les arguments de commande :

    header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
    path,/usr/bin/ls
    exec_args,1,ls
    subject,jdoe,root,root,root,root,1401,737,0 0 mach1
    return,success,0
  3. Pour enregistrer l'environnement dans lequel la commande est exécutée, définissez la stratégie arge.
    ## audit_startup script
    ...
    auditconfig -setpolicy +arge
    ...

    Le jeton exec_env enregistre l'environnement de commande :

    header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
    path,/usr/bin/ls
    exec_env,9,HOME=/,HZ=,LANG=C,LOGNAME=root,MAIL=/var/mail/root,
      PATH=/usr/sbin:/usr/bin,SHELL=/sbin/sh,TERM=xterm,TZ=US/Pacific
    subject,jdoe,root,root,root,root,1401,737,0 0 mach1
    return,success,0
  4. Pour enregistrer les arguments et l'environnement de commande, définissez les deux stratégies.
    ## audit_startup script
    ...
    auditconfig -setpolicy +argv
    auditconfig -setpolicy +arge
    ...

    La sortie se présente de la manière suivante :

    header,375,2,execve(2),,mach1,2009-08-06 11:19:57.388 -07:00
    path,/usr/bin/ls
    exec_args,1,ls
    exec_env,9,HOME=/,HZ=,LANG=C,LOGNAME=root,MAIL=/var/mail/root,
      PATH=/usr/sbin:/usr/bin,SHELL=/sbin/sh,TERM=xterm,TZ=US/Pacific
    subject,jdoe,root,root,root,root,1401,737,0 0 mach1
    return,success,0

Recherche des enregistrements d'audit concernant des modifications de fichiers spécifiques

Si vous avez l'intention de consigner les écritures d'un nombre limité de fichiers, par exemple, /etc/passwd et les fichiers du répertoire /etc/default, utilisez la commande auditreduce pour localiser les fichiers.

  1. La classe d'audit fw.

    L'ajout de la classe au fichier audit_user génère moins d'enregistrements que si vous ajoutez la classe au fichier audit_control.

    • Ajoutez la classe fw au fichier audit_user.
      ## audit_user file
      root:fw:no
      sysadm:fw:no
      auditadm:fw:no
      netadm:fw:no
    • Ajoutez la classe fw au fichier audit_control.
      ## audit_control file
      flags:lo,fw
      ...
  2. Pour trouver les enregistrements d'audit pour des fichiers spécifiques, utilisez la commande auditreduce.
    # /usr/sbin/auditreduce -o file=/etc/passwd,/etc/default -O filechg

    La commande auditreduce effectue la recherche dans la piste d'audit pour toutes les instances de l'argument file. Cette commande crée un fichier binaire avec le suffixe filechg qui contient tous les enregistrements incluant le chemin d'accès aux fichiers concernés. Reportez-vous à la page de manuel auditreduce(1M) pour plus d'informations sur la syntaxe de l'option -o file=chemin.

  3. Pour lire le fichier filechg, utilisez la commande praudit.
    # /usr/sbin/praudit *filechg

Modification d'un masque de présélection utilisateur

Si vous modifiez le fichier audit_control ou audit_user, le masque de présélection des utilisateurs déjà connectés ne change pas. Vous devez forcer la modification du masque de présélection.

Avant de commencer

Vous avez activé l'audit, les utilisateurs se sont connectés, puis vous avez modifié la valeur flags ou naflags du fichier audit_control. Vous voulez activer l'audit des classes d'audit que vous venez de sélectionner pour les utilisateurs déjà connectés.

  1. Mettez à jour le masque de présélection des utilisateurs déjà connectés.

    Deux options s'offrent à vous : Vous pouvez terminer la session existante ou utiliser la commande auditconfig pour mettre à jour les masques de présélection de ces utilisateurs.

    • Fermez les sessions existantes de ces utilisateurs.

      Les utilisateurs peuvent se connecter et se reconnecter, ou l'administrateur peut mettre fin manuellement (kill) aux sessions actives. La nouvelle session va hériter du nouveau masque présélection. Toutefois, l'arrêt des sessions utilisateurs n'est pas très pratique.

    • Modifiez le masque de présélection de chaque utilisateur dynamiquement.

      Supposons que l'attribut flags du fichier audit_control a changé de lo en lo,ex.

      1. Déterminez l'ID d'audit de l'utilisateur et l'ID de la session d'audit.

        Tout d'abord, recherchez tous les utilisateurs normaux. Dans l'exemple suivant, l'administrateur détecte tous les processus qui n'appartiennent pas à root, daemon ou lp:

        # /usr/bin/pgrep -v -u root,daemon,lp | more 
        ..
        3941
        3948
        3949
        10640 ...

        Ensuite, utilisez l'un des processus de l'utilisateur pour rechercher l'ID d'audit de l'utilisateur :

        # auditconfig -getpinfo 3941
        audit id = jdoe(1002)
        process preselection mask = lo(0x1000,0x1000)
        terminal id (maj,min,host) = 9426,65559,mach1(192.168.123.234)
        audit session id = 713

        Notez que le masque de présélection utilisateur inclut la classe lo et n'inclut pas la classe ex récemment ajoutées.

      L'ID d'audit de l'utilisateur est 1002. L'ID de session de l'audit utilisateur est 713.

  2. Modifiez le masque de présélection de l'utilisateur.

    Utilisez l'une des méthodes suivantes :

    • Utilisez l'ID de la session de l'audit utilisateur pour modifier le masque de présélection de l'utilisateur.
      # /usr/sbin/auditconfig -setsmask lo,ex 713
    • Utilisez l'ID d'audit utilisateur pour modifier le masque de présélection de l'utilisateur.
      # /usr/sbin/auditconfig -setumask lo,ex 1002
  3. Vérifiez que le masque de présélection a changé.
    # auditconfig -getpinfo 3941
    audit id = jdoe(1002)
    process preselection mask = ex,lo(0x40001000,0x40001000) 
    terminal id (maj,min,host) = 9426,65559,mach1(192.168.123.234)
    audit session id = 713

Suppression de certains événements de la liste d'audit

Pour des raisons de maintenance, il arrive parfois qu'un site veuille empêcher les événements d'audit d'être soumis à un audit.

  1. Changez la classe de l'événement pour la classe no.

    Par exemple, les événements 26 et 27 appartiennent à la classe pm.

    ## audit_event file
    ...
    25:AUE_VFORK:vfork(2):ps
    26:AUE_SETGROUPS:setgroups(2):pm
    27:AUE_SETPGRP:setpgrp(2):pm
    28:AUE_SWAPON:swapon(2):no
    ...

    Modifiez ces événements pour la classe no.

    ## audit_event file
    ...
    25:AUE_VFORK:vfork(2):ps
    26:AUE_SETGROUPS:setgroups(2):no
    27:AUE_SETPGRP:setpgrp(2):no
    28:AUE_SWAPON:swapon(2):no
    ...

    Si la classe pm est actuellement en cours d'audit, les sessions existantes sont toujours les événements d'audit 26 et 27. Pour arrêter ces événements en cours d'audit, vous devez mettre à jour les masques de présélection des utilisateurs.


    Attention

    Attention - Ne commentez jamais les événements dans le fichier audit_event. Ce fichier est utilisé par la commande praudit binaire pour lire les fichiers d'audit binaires. Les fichiers d'audit archivés peuvent contenir des événements répertoriés dans le fichier.


  2. Pour mettre à jour les masques de présélection d'utilisateurs, suivez les instructions contenues dans la section Modification d'un masque de présélection utilisateur.

Limitation de la taille des fichiers d'audit binaires

Les fichiers d'audit binaires augmentent sans limite. Pour faciliter la tâche de l'archivage et de la recherche, vous pouvez être amené à limiter la taille. Vous pouvez également créer de plus petits fichiers binaires à partir du fichier d'origine.

  1. À partir de la version Solaris 10 10/08, utilisez l'attribut p_fsize pour limiter la taille de chaque fichier d'audit binaire.

    L'attribut p_fsize sur le plug-in audit_binfile.so vous permet de limiter la taille d'un fichier d'audit. La valeur par défaut est zéro (0), ce qui permet au fichier de croître sans limite. La valeur est spécifiée en octets, de 512 000 à 2 147 483 647. Lorsque la taille spécifiée est atteinte, le fichier d'audit en cours est fermé et un nouveau fichier est ouvert.

    Dans l'exemple suivant, vous pouvez limiter la taille du fichier d'audit à 1 Mo :

    plugin:name=audit_binfile.so; p_dir:/var/audit; p_fsize=1024000
  2. Utilisez la commande auditreduce pour sélectionner des enregistrements et écrire les enregistrements dans un fichier pour une analyse plus approfondie.

    Les options auditreduce -minuscules recherchent des enregistrements spécifiques.

    Les options auditreduce -majuscules écrivent vos sélections vers un fichier. Pour plus d'informations, reportez-vous à la page de manuel auditreduce(1M).

Audit des connexions à partir d'autres systèmes d'exploitation

Oracle Solaris peut auditer les connexions, quelle que soit la source.

Audit des transferts de fichiers FTP et SFTP

Le service FTP crée des journaux pour les transferts de fichiers. Le service SFTP, qui s'exécute sous le protocole SSH, peut être contrôlé par l'audit Oracle Solaris. Les informations de connexion pour ces deux services peuvent être contrôlées par l'audit Oracle Solaris.

  1. Pour consigner des commandes et transferts de fichiers du service FTP, reportez-vous à la page de manuel ftpaccess(4).

    Pour connaître les options de journalisation disponibles, reportez-vous à la section concernant les fonctions de journalisation. Les options log commands et log transfers peuvent notamment fournir des journaux utiles.

  2. Pour consigner des transferts de fichiers sftp, effectuez l'une et/ou l'autre des opérations suivantes :
    • Audit des écritures de fichiers.

      Les transferts de fichiers par le biais d'une connexion SSH utilisent la commande sftp. Ces transferts peuvent être enregistrés en utilisant l'indicateur d'audit +fr. Pour auditer les transferts de fichiers sftp ayant échoué, auditez l'indicateur d'audit -fr.

      La sortie suivante provient d'une session sftp réussie :

      header,138,2,open(2) - read,,ma2,2009-08-25 14:48:58.770 -07:00
      path,/home/jdoe/vpn_connect
      attribute,100644,jdoe,staff,391,437,0
      subject,jdoe,jdoe,staff,jdoe,staff,4444,120289379,8457 65558 ma1
      return,success,6
    • Utilisez l'option verbose pour la commande sftp.

      L'option -v peut être répétée jusqu'à trois reprises.

      # sftp -vvv [ other options ] hostname 
  3. Pour enregistrer l'accès aux services FTP et SFTP, auditez la classe lo.

    Comme indiqué dans la sortie suivante, la connexion et la déconnexion du démon ftpd génèrent des enregistrements d'audit.

    % bsmrecord -c lo | more
    ...
    in.ftpd
      program     /usr/sbin/in.ftpd    See ftp access
      event ID    6165                 AUE_ftpd
      class       lo                   (0x00001000)
          header
          subject
          [text]                       error message
          return
    
    in.ftpd
      program     /usr/sbin/in.ftpd    See ftp logout
      event ID    6171                 AUE_ftpd_logout
      class       lo                   (0x00001000)
          header
          subject
          return
    ...

    La connexion SSH enregistre tous les accès à la commande sftp.

    ...
    /usr/lib/ssh/sshd
      program     /usr/lib/ssh/sshd    See login - ssh
      event ID    6172                 AUE_ssh
      class       lo                   (0x00001000)
          header
          subject
          [text]                       error message
          return