Spec-Zone.ru › Apache HTTP Server

Модуль Apache mod_log_forensic

Описание: Форекс-логирование запросов к серверу
Статус: Расширение
Идентификатор модуля: log_forensic_module
Файл исходного кода: mod_log_forensic.c
Совместимость: mod_unique_id больше не требуется с версии 2.1

Краткое описание

Этот модуль обеспечивает форекс-логирование клиентских запросов. Логирование выполняется до и после обработки запроса, поэтому в форекс-логе содержится две строки логов для каждого запроса. Форекс-логгер очень строгий, что означает:

  • Формат фиксирован. Вы не можете изменить формат логирования во время выполнения.
  • Если он не может записать свои данные, дочерний процесс завершается немедленно и может сгенерировать дамп памяти (в зависимости от вашей конфигурации CoreDumpDirectory).

Сценарий check_forensic, который можно найти в каталоге поддержки дистрибутива, может быть полезен при оценке вывода форекс-лога.

Формат форекс-лога

Каждый запрос регистрируется дважды. Первый раз — *до* его дальнейшей обработки (то есть после получения заголовков). Вторая запись лога записывается *после* обработки запроса в то же время, когда происходит обычное логирование.

Для идентификации каждого запроса присваивается уникальный идентификатор запроса. Этот форекс-идентификатор можно перелогировать в обычном журнале передач с использованием строки формата %{forensic-id}n. Если вы используете mod_unique_id, будет использован сгенерированный им идентификатор.

В первой строке записываются форекс-идентификатор, строка запроса и все полученные заголовки, разделенные символами «|» (|). Пример строки выглядит следующим образом (все в одной строке):

+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, etc...

Символ «плюс» в начале указывает, что это первая строка лога для данного запроса. Вторая строка содержит только символ «минус» и снова идентификатор:

-yQtJf8CoAB4AAFNXBIEAAAAA

Сценарий check_forensic принимает в качестве аргумента имя файла лога. Он ищет пары идентификаторов +/- и жалуется, если запрос не был завершен.

Безопасность

Подробную информацию о том, почему ваша безопасность может быть нарушена, если каталог, в котором хранятся файлы журналов, доступен для записи любому, кроме пользователя, запускающего сервер, см. в документе советы по безопасности.

Файлы логов могут содержать конфиденциальные данные, такие как содержимое заголовков Authorization: (которые могут содержать пароли), поэтому они не должны быть доступны для чтения никому, кроме пользователя, запускающего сервер.

Директива ForensicLog

Описание: Устанавливает имя файла форекс-лога
Синтаксис:
ForensicLog filename|pipe
Контекст: конфигурация сервера, виртуальный хост
Статус: Расширение
Модуль: mod_log_forensic

Директива ForensicLog используется для логирования запросов к серверу для проведения криминалистического анализа. Каждой записи лога присваивается уникальный идентификатор, который можно связать с запросом с помощью обычной директивы CustomLog. mod_log_forensic создаёт маркер, называемый forensic-id, который можно добавить в журнал передач с использованием строки формата %{forensic-id}n.

Аргумент, указывающий место, куда будут записываться логи, может принимать один из следующих двух типов значений:

имя_файла
Имя файла, относительное к ServerRoot.
канал
Символ канала «|», за которым следует путь к программе для получения информации о логах в стандартный вход. Имя программы можно указать относительно директивы ServerRoot.

Безопасность:

Если используется программа, она будет запущена от имени пользователя, который запустил httpd. Это будет root, если сервер был запущен root; убедитесь, что программа безопасна или переключается на пользователя с меньшими привилегиями.

Примечание

При вводе пути к файлу на платформах, отличных от Unix, следует позаботиться о том, чтобы использовались только слэши, даже если платформа может допускать использование обратных слэшей. В общем случае рекомендуется всегда использовать слэши во всех файлах конфигурации.

© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_log_forensic.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API