1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_log_forensic - Serveur Apache HTTP Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.5</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_log_forensic</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_log_forensic.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_log_forensic.html" title="Français"> fr </a> |
<a href="../ja/mod/mod_log_forensic.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../tr/mod/mod_log_forensic.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Journalisation légale des requêtes envoyées au
serveur</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>log_forensic_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_log_forensic.c</td></tr></table>
<h3>Sommaire</h3>
<p>Ce module permet la journalisation légale des requêtes client.</p>
<p>La création du fichier journal correspondant s'effectue via la
directive <code class="directive">ForensicLog</code> comme suit :</p>
<pre class="prettyprint lang-config">ForensicLog logs/forensic_log</pre>
<p>La journalisation s'effectuant avant et après le traitement de la
requête, le journal légal contient deux lignes pour chaque requête.
Le processus de journalisation légale est très strict, à savoir
:</p>
<ul>
<li>Le format est figé. Vous ne pouvez pas modifier le format du
journal à l'exécution.</li>
<li>S'il ne peut pas enregistrer ses données, le processus enfant se
termine aussitôt, et peut éventuellement enregistrer un vidage
mémoire (selon la définition de la directive <code class="directive"><a href="../mod/mpm_common.html#coredumpdirectory">CoreDumpDirectory</a></code>).</li>
</ul>
<p>Pour interpréter les données du journal
légal afin d'identifier les requêtes dont le traitement n'a
pas été mené à bien, vous pouvez vous
aider du script <code>check_forensic</code> qui se trouve dans le
répertoire support de la distribution.</p>
<div class="example"><p><code>
check-forensic forensic_log
</code></p></div>
<div class="note">Note de traduction : le terme "légal" utilisé dans le présent document ne suggère aucunement que
ce module apporte une valeur juridique aux journaux. Il est à comprendre dans le contexte
similaire à ce que l'on trouve en analyse medico-légale. En d'autres termes, la finalité de ce module
est de simplifier les opérations d'investigation autour du traitement des requêtes par le serveur.</div>
</div>
<div id="quickview"><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#formats">Format du journal Forensic</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#security">Considérations à propos de
sécurité</a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#forensiclog">ForensicLog</a></li>
</ul>
<h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_log_forensic">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_log_forensic">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><a href="../logs.html">Les fichiers journaux
d'Apache</a></li>
<li><code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code></li>
<li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="formats" id="formats">Format du journal Forensic</a></h2>
<p>Chaque requête fait l'objet d'une double journalisation. La
requête est journalisée une première fois avant son traitement
(c'est à dire après la réception des en-têtes). La deuxième entrée
du journal est écrite <em>après</em> le traitement de la requête, en
fait au moment de la journalisation habituelle.</p>
<p>Un identifiant unique est attribué à chaque requête afin de
pouvoir l'identifier. Cette identifiant légal peut faire l'objet
d'un enregistrement dans le journal standard en utilisant l'élément
de chaîne de format <code>%{forensic-id}n</code>. Si vous utilisez
<code class="module"><a href="../mod/mod_unique_id.html">mod_unique_id</a></code>, c'est l'identifiant qu'il génère qui
sera utilisé.</p>
<p>La première partie de la journalisation de la requête enregistre
l'identifiant légal, la ligne de la requête et tous les en-têtes
reçus séparés par des caractères pipe (<code>|</code>). Voici à
titre d'exemple à quoi pourrait ressembler une telle entrée (tout
étant rassemblé sur une seule ligne) :</p>
<div class="example"><p><code>
+yQtJf8CoAB4AAFNXBIEAAAAA|GET /manual/de/images/down.gif
HTTP/1.1|Host:localhost%3a8080|User-Agent:Mozilla/5.0 (X11;
U; Linux i686; en-US; rv%3a1.6) Gecko/20040216
Firefox/0.8|Accept:image/png, <var>etc...</var>
</code></p></div>
<p>Le caractère plus ('+') de début indique qu'il s'agit de la
première entrée de journal pour cette requête. La seconde entrée ne
contiendra qu'un caractère moins ('-') suivi de l'identifiant :</p>
<div class="example"><p><code>
-yQtJf8CoAB4AAFNXBIEAAAAA
</code></p></div>
<p>Le script <code>check_forensic</code> prend comme argument le nom
du fichier journal. Il recherche ces paires d'identifiants
<code>+</code>/<code>-</code> et affiche un message d'erreur si la
journalisation d'une requête n'est pas complète.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Considérations à propos de
sécurité</a></h2>
<p>Voir le document <a href="../misc/security_tips.html#serverroot">conseils en matière de
sécurité</a> pour des détails sur les raisons pour lesquelles votre
sécurité pourrait être compromise si le répertoire dans lequel les
fichiers journaux sont stockés sont inscriptibles par tout autre
utilisateur que celui qui démarre le serveur.</p>
<p>Les fichiers journaux peuvent contenir des données sensibles
comme le contenu des en-têtes <code>Authorization:</code> (qui
peuvent contenir des mots de passe) ; ils ne doivent donc être
lisibles que par l'utilisateur qui démarre le serveur.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="forensiclog" id="forensiclog">Directive</a> <a name="ForensicLog" id="ForensicLog">ForensicLog</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le nom de fichier du journal légal</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ForensicLog <var>nom-fichier</var>|<var>pipe</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_forensic</td></tr>
</table>
<p>La directive <code class="directive">ForensicLog</code> permet de
contrôler la journalisation des requêtes à des fins d'analyse
légale. Chaque entrée du journal se voit assigner un identifiant
unique qui peut être associé à la requête en utilisant la directive
<code class="directive"><a href="../mod/mod_log_config.html#customlog">CustomLog</a></code> habituelle.
<code class="module"><a href="../mod/mod_log_forensic.html">mod_log_forensic</a></code> crée un élément nommé
<code>forensic-id</code>, qui peut être ajouté au journal standard
en utilisant l'élément de format <code>%{forensic-id}n</code>.</p>
<p>L'argument, qui permet de spécifier l'emplacement vers lequel le
journal légal sera écrit, peut contenir les deux types de valeurs
suivants :</p>
<dl>
<dt><var>nom-fichier</var></dt>
<dd>Un nom de fichier relatif au répertoire défini par la
directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.</dd>
<dt><var>pipe</var></dt>
<dd>Le caractère pipe "<code>|</code>", suivi du chemin vers un
programme qui recevra les informations de la journalisation sur
son entrée standard. Le nom du programme peut être relatif au
répertoire défini par la directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.
<div class="warning"><h3>Sécurité :</h3>
<p>Si les journaux sont redirigés vers un programme, ce dernier
s'exécutera sous l'utilisateur qui a démarré
<code class="program"><a href="../programs/httpd.html">httpd</a></code>. Ce sera l'utilisateur root si le serveur
a été démarré par root ; vérifiez que le programme est
sécurisé ou passe sous le contrôle d'un utilisateur possédant des
droits restreints.</p>
</div>
<div class="note"><h3>Note</h3>
<p>Lors de la spécification d'un chemin de fichier sur les
plate-formes non-Unix, il faut prendre soin de ne pas oublier
que seuls les slashes directs doivent être utilisés, même si la
plate-forme autorise l'emploi d'anti-slashes. D'une manière
générale, c'est une bonne idée que de n'utiliser que des slashes
directs dans les fichiers de configuration.</p>
</div></dd>
</dl>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_log_forensic.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_log_forensic.html" title="Français"> fr </a> |
<a href="../ja/mod/mod_log_forensic.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../tr/mod/mod_log_forensic.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_log_forensic.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|