1. Noël Macé
Formateur et Consultant indépendant expert Unix et FOSS
http://www.noelmace.com
Administration Système
Logs
Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Linux LPIC1 – Comptia Linux+
noelmace.com
2. Plan
• Introduction
• Historique
• Concept
• Implémentations
• Niveaux
• Facilités
• Configuration
• Analyse
• Log manuel
Linux LPIC1 – Comptia Linux+
noelmace.com
3. Introduction
• journalisation ou logging
• enregistrement séquentiel
dans un fichier
journal ou log file
• des activités du système et des applications
Linux LPIC1 – Comptia Linux+
noelmace.com
4. Historique
• créé dans les années 80 - Eric Allman
pour le Projet Sendmail
si utile qu'utilisé par d'autres applications
• rapidement un standard de fait
puis RFC 3164 puis 5424
• Utilisé par :
GNU/Linux
Unix
des composants réseau
même Windows avec Kiwi Syslog Server
Linux LPIC1 – Comptia Linux+
noelmace.com
5. Concept
• protocole client - serveur
UDP 514
pour la centralisation
• via un socket pour la transmission de messages
sous GNU/Linux : /dev/log
prblm : point unique = saturation (buffer overflow)
Linux LPIC1 – Comptia Linux+
noelmace.com
6. Implémentations
• syslogd (espace utilisateur) + klogd (espace noyau)
historique
LPIC1 3.5
Debian 4.0
• syslog-ng
fonctionnalités de filtrage avancé, metalog
utilisé par Fedora jusqu'à 10, openSuse jusqu'à 11.2 …
• rsyslog
le plus utilisé aujourd'hui (Debian, Red Hat, Ubuntu, Suse, Solaris …)
Linux LPIC1 – Comptia Linux+
noelmace.com
7. Niveaux
• définie l'importance du message
• 0 Emerg (emergency)
• 1 Alert
Système inutilisable
• peut être précédé de
Une intervention immédiate est nécessaire
• 2 Crit (critical)
Erreur de fonctionnement
•
Erreur critique pour le système
• 3 Err (error)
• 4 Warning (warn)
• 5 Notice
Avertissement
Événement normal méritant d'être signalé
• 6 Info (informational)
• 7 Debug
'=' : SEULEMENT la priorité
spécifiée
pas celles au dessus
ou '!' : inverse le sens
•
ex : !crit = debug - crit
pour information seulement
Message de mise au point
Linux LPIC1 – Comptia Linux+
noelmace.com
8. Facilités
• définie l'origine (programme ou outil) générant le message
• auth (security)
• authpriv, cron, kern, lpr, mail, news, syslog, user, uucp
• local0 à local7
• daemon : tout le reste
• mark : réservé à un usage interne
• *
Linux LPIC1 – Comptia Linux+
noelmace.com
9. Facilités
Num clé
Description
11
ftp
FTP daemon
0
kern
kernel messages
12
-
NTP subsystem
1
user
user-level messages
13
-
log audit
2
mail
mail system
14
-
log alert
3
daemon system daemons
15
cron
clock daemon
4
auth
security/authorization messages
16
local0
local use 0 (local0)
5
syslog
messages generated internally by syslogd
17
local1
local use 1 (local1)
18
local2
local use 2 (local2)
6
lpr
line printer subsystem
19
local3
local use 3 (local3)
7
news
network news subsystem
20
local4
local use 4 (local4)
8
uucp
UUCP subsystem
21
local5
local use 5 (local5)
9
clock daemon
22
local6
local use 6 (local6)
10
authpriv security/authorization messages
23
local7
local use 7 (local7)
Linux LPIC1 – Comptia Linux+
noelmace.com
10. Configuration
• /etc/syslog.conf
• format
secteur1;secteur2
secteur1;secteur2
facilité.priorité
facilité.priorité
action
action
action
action
un secteur est composé d'une facilité et d'une priorité
l'action : destinataire du message (fichier, serveur distant ), etc ...)
mail.*
mail.*
*.emerg
*.emerg
kern.*
kern.*
kern.crit
kern.crit
kern.crit
• Exemples
kern.crit
kern.info;kern.!err
kern.info;kern.!err
Linux LPIC1 – Comptia Linux+
/var/log/mail
/var/log/mail
*
*
/var/log/kernel
/var/log/kernel
@logger.pangaea.edu
@logger.pangaea.edu
/dev/console
/dev/console
/var/log/kernel-info
/var/log/kernel-info
noelmace.com
11. Actions
• fichier, serveur distant, etc ... recevant le message
fichier (/var/log/)
•
•
syslog
•
messages
secure
console : affichage à l'écran
•
serveur distant
•
ex : /dev/console
précédé de @
utilisateurs loggés (console)
•
* = all
Linux LPIC1 – Comptia Linux+
noelmace.com
12. Analyse
• /var/log/
• format courant
time hôte identifiant[pid]: info
time hôte identifiant[pid]: info
l'identifiant est généré par le programme lui même
Apr 14 23:17:00 speaker /USR/SBIN/CRON[6026]: (george) CMD
Apr 14 23:17:00 speaker /USR/SBIN/CRON[6026]: (george) CMD
(/usr/bin/fetchmail -f /home/george/.fetchmailrc > /dev/null)
(/usr/bin/fetchmail -f /home/george/.fetchmailrc > /dev/null)
Apr 14 23:17:52 speaker sshd[6031]: Accepted publickey for george
Apr 14 23:17:52 speaker sshd[6031]: Accepted publickey for george
• Exemples
from ::ffff:192.168.1.3 port 48139 ssh2
from ::ffff:192.168.1.3 port 48139 ssh2
Linux LPIC1 – Comptia Linux+
noelmace.com
13. Log manuel
• pour les scripts shell
les librairies C etc ... offrent des fonctions pour les programmes compilés
$ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket]
$ logger [-isd] [-f file] [-p pri] [-t tag] [-u socket]
[message ...]
[message ...]
• Options :
-i : Enregistrer le numéro de processus de logger avec chaque ligne.
-s : Afficher le message sur la sortie d'erreur standard en plus de l'enregistrer dans
le journal.
-f fichier : message à partir du fichier spécifié.
-p pri : Enregistrer le message avec la priorité indiquée.
•
La priorité peut être donnée
- numériquement
- ou bien avec une paire "service.niveau"
•
Par exemple, "-p local3.info" enregistre le(s) message(s) avec le niveau
information pour le service local3. La valeur par défaut est "user.notice".
Linux LPIC1 – Comptia Linux+
• -t étiquette : Marquer chaque ligne dans le journal avec l'étiquette
spécifiée.
• -u sock : Écrire dans le socket spécifié avec socket au lieu
d'utiliser les routines habituelles de syslog.
• -d : Utiliser un datagramme plutôt qu’un flux de connexion avec
ce socket.
• – : Termine la liste des arguments. Cela permet au message de
commencer avec un tiret ("-").
• message : Écrire le message dans le journal
si aucun message n'est fourni et que le drapeau -f n'est pas utilisé,
l'entrée standard sera enregistrée.
noelmace.com
14. Ce qu’on a couvert
• Ce qu'est syslog.
• Quelles sont les différentes solutions de logging sous GNU/Linux.
• Comment configurer syslogd.
• Comment réaliser un log manuellement.
Linux LPIC1 – Comptia Linux+
noelmace.com
15. Licence
Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à :
Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
Vous êtes libre de :
partager — reproduire, distribuer et communiquer cette œuvre
remixer — adapter l’œuvre
Selon les conditions suivantes :
Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre
originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins
d'en demander expressément la permission).
Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention
première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une
autorisation explicite de l'auteur est requise.
Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de
distribuer votre création que sous une licence identique ou similaire à celle-ci.
Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une
licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs
vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration
de ce support.
Linux LPIC1 – Comptia Linux+
noelmace.com