Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration d'Oracle Solaris : services de sécurité Oracle Solaris 11 Information Library (Français) |
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. Service d'analyse antivirus (tâches)
5. Contrôle de l'accès aux périphériques (tâches)
6. Utilisation de l'outil de génération de rapports d'audit de base (tâches)
7. Contrôle de l'accès aux fichiers (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. Attributs de sécurité dans Oracle Solaris (référence)
Partie IV Services cryptographiques
11. Structure cryptographique (présentation)
12. Structure cryptographique (tâches)
13. Structure de gestion des clés
Partie V Services d'authentification et communication sécurisée
14. Authentification des services réseau (tâches)
17. Utilisation de Secure Shell (tâches)
19. Introduction au service Kerberos
20. Planification du service Kerberos
21. Configuration du service Kerberos (tâches)
22. Messages d'erreur et dépannage de Kerberos
23. Administration des principaux et des stratégies Kerberos (tâches)
24. Utilisation des applications Kerberos (tâches)
25. Service Kerberos (référence)
Partie VII Audit dans Oracle Solaris
28. Gestion de l'audit (tâches)
Gestion de l'audit (liste des tâches)
Configuration du service d'audit (tâches)
Configuration du service d'audit (liste des tâches)
Procédure d'affichage des paramètres par défaut du service d'audit
Procédure de présélection des classes d'audit
Procédure de configuration des caractéristiques d'audit d'un utilisateur
Procédure de modification de la stratégie d'audit
Procédure de modification des contrôles de file d'attente d'audit
Procédure de configuration de l'alias de messagerie audit_warn
Procédure d'ajout d'une classe d'audit
Procédure de modification de l'appartenance à une classe d'un événement d'audit
Configuration des journaux d'audit (tâches)
Configuration des journaux d'audit (liste des tâches)
Procédure de création de systèmes de fichiers ZFS pour les fichiers d'audit
Procédure d'affectation de l'espace d'audit pour la piste d'audit
Procédure d'envoi des fichiers d'audit à un référentiel distant
Procédure de configuration des journaux d'audit syslog
Configuration du service d'audit dans les zones (tâches)
Procédure de configuration identique de toutes les zones pour l'audit
Procédure de configuration de l'audit par zone
Activation et désactivation du service d'audit (tâches)
Procédure d'actualisation du service d'audit
Procédure de désactivation du service d'audit
Procédure d'activation du service d'audit
Gestion des enregistrements d'audit sur les systèmes locaux (tâches)
Gestion des enregistrements d'audit sur les systèmes locaux (liste des tâches)
Procédure d'affichage des définitions d'enregistrement d'audit
Procédure de fusion des fichiers d'audit de la piste d'audit
Procédure de sélection des événements d'audit de la piste d'audit
Procédure d'affichage du contenu des fichiers d'audit binaires
Dépannage du service d'audit (tâches)
Dépannage du service d'audit (liste des tâches)
Procédure de vérification de l'exécution de l'audit
Procédure d'atténuation du volume des enregistrements d'audit produits
Procédure d'audit de toutes les commandes par les utilisateurs
Procédure de mise à jour du masque de présélection des utilisateurs connectés
Procédure de suppression de l'audit d'événements spécifiques
Procédure de limitation de la taille des fichiers d'audit binaires
Procédure de compression des fichiers d'audit sur un système de fichiers dédié
Procédure d'audit des connexions à partir d'autres systèmes d'exploitation
Le plug-in par défaut audit_binfile crée une piste d'audit. En gérant la piste d'audit, vous pouvez surveiller les actions des utilisateurs de votre réseau. L'audit peut générer de grandes quantités de données. Les tâches suivantes vous indiquent comment travailler avec toutes ces données.
La liste des tâches suivante présente les procédures de sélection, d'analyse et de gestion des enregistrements d'audit.
|
La commande auditrecord affiche les définitions d'enregistrement d'audit. Les définitions fournissent le nombre d'événements d'audit, la classe d'audit, le masque de sélection et le format d'enregistrement d'un événement d'audit.
L'option -a répertorie toutes les définitions d'événements d'audit. L'option -h place la liste au format HTML.
% auditrecord -ah > audit.events.html
Astuce - Lorsque vous affichez le fichier HTML dans un navigateur, utilisez l'outil de recherche du navigateur pour rechercher des définitions d'enregistrements d'audit spécifiques.
Pour plus d'informations, reportez-vous à la page de manuel auditrecord(1M).
Exemple 28-24 Affichage des formats d'enregistrement d'audit d'un programme
Dans cet exemple, le format de tous les enregistrements d'audit sont générés par le programme login est affiché. Les programmes de connexion incluent rlogin, telnet, newgrp et la fonction Secure Shell d'Oracle Solaris.
% auditrecord -p login ... login: logout program various See login(1) event ID 6153 AUE_logout class lo (0x0000000000001000) ... newgrp program newgrp See newgrp login event ID 6212 AUE_newgrp_login class lo (0x0000000000001000) ... rlogin program /usr/sbin/login See login(1) - rlogin event ID 6155 AUE_rlogin class lo (0x0000000000001000) ... /usr/lib/ssh/sshd program /usr/lib/ssh/sshd See login - ssh event ID 6172 AUE_ssh class lo (0x0000000000001000) ... telnet login program /usr/sbin/login See login(1) - telnet event ID 6154 AUE_telnet class lo (0x0000000000001000) …
Exemple 28-25 Affichage des formats d'enregistrement d'audit d'une classe d'audit
Dans cet exemple, le format de tous les enregistrements d'audit dans la classe pf qui a été créée dans l'Exemple 28-10 s'affiche.
% auditrecord -c pf pfexec system call pfexec See execve(2) with pfexec enabled event ID 116 AUE_PFEXEC class pf (0x0100000000000000) header path pathname of the executable path pathname of working directory [privileges] privileges if the limit or inheritable set are changed [privileges] privileges if the limit or inheritable set are changed [process] process if ruid, euid, rgid or egid is changed exec_arguments [exec_environment] output if arge policy is set subject [use_of_privilege] return
Le jeton use_of_privilege est enregistré lorsque le privilège est utilisé. Les jetons privileges sont enregistrés si la limite ou l'ensemble héritable sont modifiés. Le jeton processus est enregistré si un ID est modifié. Aucune option de stratégie n'est requise pour que ces jetons soient inclus dans l'enregistrement.
En fusionnant tous les fichiers d'audit de tous les répertoires d'audit, vous pouvez analyser le contenu de la piste d'audit entière. La commande auditreduce fusionne tous les enregistrements à partir de ses fichiers d'entrée dans un seul fichier de sortie. Les fichiers d'entrée peuvent ensuite être supprimés. Si aucun chemin n'est spécifié, la commande auditreduce utilise le système de fichiers /var/audit.
Remarque - Dans la mesure où les horodatages dans la piste d'audit sont définis en temps universel (UTC), la date et l'heure doivent être converties au fuseau horaire actuel pour être significatives. Faites-y attention chaque fois que vous manipulez ces fichiers avec des commandes de fichiers standard plutôt qu'avec la commande auditreduce.
Avant de commencer
Le profil de droits Audit Review (vérification d'audit) doit vous avoir été attribué.
Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.
Ce système de fichiers doit figurer dans un zpool différent des systèmes de fichiers que vous avez créés à la section Procédure de création de systèmes de fichiers ZFS pour les fichiers d'audit pour stocker les fichiers d'origine.
Remplacez les répertoires par le répertoire de stockage des fichiers d'audit fusionnés. A partir de ce répertoire, fusionnez les enregistrements d'audit dans un fichier nommé avec un suffixe. Tous les répertoires dans la piste d'audit sur le système local sont fusionnés.
# cd audit-storage-directory # auditreduce -Uppercase-option -O suffix
Les options majuscules de la commande auditreduce permettent de manipuler les fichiers dans la piste d'audit. Les options majuscules sont les suivantes :
Sélectionne tous les fichiers de la piste d'audit.
Sélectionne les fichiers complets uniquement.
Sélectionne les fichiers avec un suffixe donné. Le suffixe peut être un nom de machine ou un suffixe que vous avez spécifié pour un fichier résumé.
Crée un fichier d'audit avec des horodatages de 14 caractères pour l'heure de début et l'heure de fin, avec le suffixe suffix dans le répertoire en cours.
Indique que les fichiers d'audit doivent être lus dans pathname, un autre répertoire racine d'audit.
Indique que les fichiers d'audit doivent être lus à partir du serveur spécifié.
Pour obtenir la liste complète des options, reportez-vous à la page de manuel auditreduce(1M).
Pour déplacer le fichier vers un autre système, utilisez la commande sftp. Pour obtenir des instructions, reportez-vous à la page de manuel sftp(1).
Exemple 28-26 Copie des fichiers d'audit pour un fichier résumé
Dans l'exemple ci-dessous, un administrateur à qui est affecté le profil de droits System Administrator (administrateur système) copie tous les fichiers de la piste d'audit dans un fichier fusionné sur un système de fichiers différent. Le système de fichiers /var/audit/storage réside sur un disque distinct du système de fichiers /var/audit, le système de fichiers racine d'audit.
$ cd /var/audit/storage $ auditreduce -A -O All $ ls /var/audit/storage/*All 20100827183214.20100827215318.All
Dans l'exemple suivant, seuls les fichiers complets sont copiés de la piste d'audit vers un fichier fusionné. Le chemin d'accès complet est spécifié comme valeur de l'option -0. Le dernier composant du chemin, Complete, est utilisé comme suffixe.
$ auditreduce -C -O /var/audit/storage/Complete $ ls /var/audit/storage/*Complete 20100827183214.20100827214217.Complete
Dans l'exemple suivant, seuls les fichiers complets sont copiés du système sys1.1 dans un fichier fusionné.
$ cd /var/audit/storage $ auditreduce -M sys1.1 -O example1summ $ ls /var/audit/storage/*summ 20100827183214.20100827214217.example1summ
Exemple 28-27 Déplacement de fichiers d'audit dans un fichier résumé
L'option -D de la commande auditreduce supprime un fichier d'audit lorsque vous la copiez dans un autre emplacement. Dans l'exemple suivant, les fichiers d'audit complets pour le système sys1.1 sont copiés dans le système de fichiers audit_summary pour examen à une date ultérieure.
$ cd /var/audit/audit_summary $ auditreduce -C -O daily_sys1.1 -D sys1.1 $ ls *sys1.1 20100827183214.20100827214217.daily_sys1.1
Les fichiers d'audit du système sys1.1, qui étaient les entrées du fichier *daily_sys1.1, sont supprimés lorsque cette commande se termine.
Vous pouvez filtrer les enregistrements d'audit pour les examiner. Pour obtenir la liste complète des options de filtrage, reportez-vous à la page de manuel auditreduce(1M).
Avant de commencer
Le profil de droits Audit Review (vérification d'audit) doit vous avoir été attribué.
Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.
auditreduce -lowercase-option argument [optional-file]
Argument spécifique qui nécessite une option minuscule. Par exemple, l'option -c exige un argument d'une classe d'audit, tel que ua.
Sélectionne tous les événements à une date donnée. Le format de date pour argument est aaaammjj. D'autres options de date, -b et -a, sélectionnent les événements avant et après une date particulière.
Sélectionne tous les événements attribuables à un utilisateur particulier. L'argument est un nom d'utilisateur. Une autre option utilisateur, - e, sélectionne tous les événements attribuables à un ID d'utilisateur effectif.
Sélectionne tous les événements d'une classe d'audit présélectionnée. L'argument est un nom de classe d'audit.
Sélectionne toutes les instances d'un événement d'audit. L'argument est un événement d'audit.
Nom d'un fichier d'audit.
Pour obtenir la liste complète des options, reportez-vous à la page de manuel auditreduce(1M).
Exemple 28-28 Association et réduction des fichiers d'audit
La commande auditreduce peut éliminer les enregistrements moins intéressants, car elle combine les fichiers d'entrée. Par exemple, vous pouvez utiliser la commande auditreduce pour conserver uniquement les enregistrements de connexion et déconnexion dans les fichiers d'audit qui ont plus d'un mois. Si vous avez besoin de récupérer la piste d'audit complète, vous pouvez le faire à partir d'un média de sauvegarde.
# cd /var/audit/audit_summary # auditreduce -O lo.summary -b 20100827 -c lo; compress *lo.summary
Exemple 28-29 Copie des enregistrements d'audit d'un utilisateur dans un fichier résumé
Dans cet exemple, les enregistrements de la piste d'audit qui contiennent le nom d'un utilisateur particulier sont fusionnés. L'option -e trouve l'utilisateur effectif. L'option -u trouve l'utilisateur de connexion.
$ cd /var/audit/audit_summary $ auditreduce -e tamiko -O tamiko
Vous pouvez rechercher des événements spécifiques dans ce fichier. L'exemple suivant permet de vérifier le moment où l'utilisateur s'est connecté et déconnecté le 7 septembre 2010, votre heure. Seuls les fichiers avec le nom d'utilisateur en tant que suffixe de fichier sont vérifiés. La forme abrégée de la date est aaaammjj.
# auditreduce -M tamiko -O tamikolo -d 20100907 -u tamiko -c lo
Exemple 28-30 Copie des enregistrements sélectionnés dans un seul fichier
Dans cet exemple, les enregistrements de connexion et déconnexion pour un jour particulier sont sélectionnés dans la piste d'audit. Les enregistrements sont fusionnés dans un fichier cible. Le fichier cible est écrit dans un système de fichiers autre que le système de fichiers qui contient le répertoire racine d'audit.
# auditreduce -c lo -d 20100827 -O /var/audit/audit_summary/logins # ls /var/audit/audit_summary/*logins /var/audit/audit_summary/20100827183936.20100827232326.logins
La commande praudit vous permet de consulter le contenu de fichiers d'audit binaires. Vous pouvez envoyez la sortie de la commande auditreduce ou vous pouvez lire un fichier d'audit particulier. L'option -x est utile pour un traitement supplémentaire.
Avant de commencer
Le profil de droits Audit Review (vérification d'audit) doit vous avoir été attribué.
Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.
Les exemples suivants représentent la sortie praudit depuis le même événement d'audit. La stratégie d'audit a été définie de façon à inclure les jetons sequence et trailer.
La commande praudit -s affiche les enregistrements d'audit dans un format court, un jeton par ligne. Utilisez l'option -l pour placer chaque enregistrement sur une seule ligne.
$ auditreduce -c lo | praudit -s header,69,2,AUE_screenlock,,mach1,2010-10-14 08:02:56.348 -07:00 subject,jdoe,root,staff,jdoe,staff,856,50036632,82 0 mach1 return,success,0 sequence,1298
La commande praudit -r affiche les enregistrements d'audit au format brut, un jeton par ligne. Utilisez l'option -l pour placer chaque enregistrement sur une seule ligne.
$ auditreduce -c lo | praudit -r 21,69,2,6222,0x0000,10.132.136.45,1287070091,698391050 36,26700,0,10,26700,10,856,50036632,82 0 10.132.136.45 39,0,0 47,1298
La commande praudit -x affiche les enregistrements d'audit au format XML, un jeton par ligne. Utilisez l'option -l pour placer la sortie XML pour un seul enregistrement sur une seule ligne. La liste suivante divise deux lignes de sortie pour tenir sur cette page d'impression :
$ auditreduce -c lo | praudit -x <record version="2" event="screenlock - unlock" host="mach1" iso8601="2010-10-14 08:28:11.698 -07:00"> <subject audit-uid="jdoe" uid="root" gid="staff" ruid="jdoe rgid="staff" pid="856" sid="50036632" tid="82 0 mach1"/> <return errval="success" retval="0"/> <sequence seq-num="1298"/> </record>
Exemple 28-31 Impression de la piste d'audit complète
A l'aide d'un tube sur la commande d'impression, la sortie de la piste d'audit complète est dirigée vers l'imprimante. Pour des raisons de sécurité, l'imprimante a un accès limité.
# auditreduce | praudit | lp -d example.protected.printer
Exemple 28-32 Affichage d'un fichier d'audit spécifique
Dans cet exemple, un fichier de connexion résumé est examiné dans une fenêtre de terminal.
# cd /var/audit/audit_summary/logins # praudit 20100827183936.20100827232326.logins | more
Exemple 28-33 Création d'enregistrements d'audit au format XML
Dans cet exemple, les enregistrements d'audit sont convertis au format XML.
# praudit -x 20100827183214.20100827215318.logins > 20100827.logins.xml
Le fichier XML peut être affiché dans un navigateur. Le contenu du fichier peut être exécuté par un script pour extraire les informations pertinentes.
Exemple 28-34 Traitement de la sortie praudit à l'aide d'un script
Si vous le souhaitez, vous pouvez traiter la sortie de la commande praudit en tant que lignes de texte. Cela peut être utile pour sélectionner des enregistrements que la commande auditreduce ne peut pas sélectionner. Un simple script shell suffit pour traiter la sortie de la commande praudit. L'exemple de script suivant place un enregistrement d'audit sur une seule ligne, recherche une chaîne de caractères spécifiée par l'utilisateur, puis renvoie le fichier d'audit dans sa forme d'origine.
#!/bin/sh # ## This script takes an argument of a user-specified string. # The sed command prefixes the header tokens with Control-A # The first tr command puts the audit tokens for one record # onto one line while preserving the line breaks as Control-A # praudit | sed -e '1,2d' -e '$s/^file.*$//' -e 's/^header/^aheader/' \\ | tr '\\012\\001' '\\002\\012' \\ | grep "$1" \\ Finds the user-specified string | tr '\\002' '\\012' Restores the original newline breaks
Notez que les caractères ^a dans le script signifie Ctrl+A, et non les deux caractères ^ et a. Le préfixe distingue le jeton header de la chaîne header qui pourrait s'afficher sous forme de texte.
Erreurs fréquentes
Un message semblable à celui-ci indique que vous ne disposez pas de tous les privilèges nécessaires pour utiliser la commande praudit :
praudit: Can't assign 20090408164827.20090408171614.sys1.1 to stdin.
Exécutez la commande praudit dans un shell de profil. Le profil de droits Audit Review (vérification d'audit) doit vous avoir été attribué.
Lorsque des interruptions du système anormales surviennent, le service d'audit s'arrête alors que son fichier d'audit est toujours ouvert. Ou, un système de fichiers devient inaccessible et force le système à passer à un nouveau système de fichiers. Dans de tels cas, un fichier d'audit conserve la chaîne not_terminated comme horodatage de fin, même si le fichier n'est plus utilisé pour les enregistrements d'audit. Utilisez la commande auditreduce -O pour donner au fichier le bon horodatage.
Avant de commencer
Le profil de droits Audit Review (vérification d'audit) doit vous avoir été attribué.
Pour plus d'informations, reportez-vous à la section Procédure d'obtention des droits d'administration.
# ls -R1t audit-directory*/* | grep not_terminated
Répertorie les fichiers dans des sous-répertoires.
Répertorie les fichiers du plus récent au plus ancien.
Affiche la liste des fichiers dans une seule colonne.
Spécifiez le nom de l'ancien fichier de la commande auditreduce -O.
# auditreduce -O system-name old-not-terminated-file
# rm system-name old-not-terminated-file
Exemple 28-35 Nettoyage de fichiers d'audit not_terminated fermés
Dans l'exemple suivant, les fichiers not_terminated sont trouvés, renommés, puis les originaux sont supprimés.
ls -R1t */* | grep not_terminated …/egret.1/20100908162220.not_terminated.egret …/egret.1/20100827215359.not_terminated.egret # cd */egret.1 # auditreduce -O egret 20100908162220.not_terminated.egret # ls -1t 20100908162220.not_terminated.egret Current audit file 20100827230920.20100830000909.egret Cleaned up audit file 20100827215359.not_terminated.egret Input (old) audit file # rm 20100827215359.not_terminated.egret # ls -1t 20100908162220.not_terminated.egret Current audit file 20100827230920.20100830000909.egret Cleaned up audit file
L'horodatage de début sur le nouveau fichier reflète l'heure du premier événement d'audit dans le fichier not_terminated. L'horodatage de fin reflète l'heure du dernier événement d'audit dans le fichier.
Si votre politique de sécurité exige que toutes les données d'audit soient enregistrées, empêchez la perte d'enregistrement d'audit.
Avant de commencer
Vous devez être dans le rôle root.
Utilisez l'attribut p_minfree.
L'alias de messagerie audit_warn envoie un avertissement lorsque l'espace disque remplit la taille libre minimale. Voir Exemple 28-17.
Archivez les fichiers d'audit en sauvegardant les fichiers sur un média hors ligne. Vous pouvez également déplacer les fichiers vers un système de fichiers d'archive.
Si vous collectez des journaux d'audit au format texte avec l'utilitaire syslog, archivez les journaux texte. Pour plus d'informations, reportez-vous à la page de manuel logadm(1M).
Archivez les informations nécessaires pour interpréter les enregistrements d'audit ainsi que de la piste d'audit. Au minimum, vous enregistrez les fichiers passwd, group et hosts. Vous pouvez également archiver les fichiers audit_event et audit_class.
Sur un système de fichiers ZFS dédié aux fichiers d'audit, la compression réduit la taille des fichiers de manière significative. Pour obtenir un exemple, reportez-vous à la section Procédure de compression des fichiers d'audit sur un système de fichiers dédié.
Reportez-vous également à la section Interactions entre les propriétés de compression, de suppression des doublons et de chiffrement ZFS du manuel Administration d’Oracle Solaris : Systèmes de fichiers ZFS.
Vous pouvez extraire des fichiers résumés de la piste d'audit à l'aide d'options de la commande auditreduce. Les fichiers résumés contiennent uniquement les enregistrements de types spécifiés d'événements d'audit. Pour extraire les fichiers résumés, reportez-vous à l'Exemple 28-28 et l'Exemple 28-30.