Date: Wed, 16 Apr 2014 17:18:23 +0000 (UTC) From: Taras Korenko <taras@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r44580 - head/ru_RU.KOI8-R/books/handbook/audit Message-ID: <201404161718.s3GHINHj030370@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: taras Date: Wed Apr 16 17:18:22 2014 New Revision: 44580 URL: http://svnweb.freebsd.org/changeset/doc/44580 Log: MFen: + books/handbook/audit/chapter.xml r43688 --> r44395 Modified: head/ru_RU.KOI8-R/books/handbook/audit/chapter.xml Modified: head/ru_RU.KOI8-R/books/handbook/audit/chapter.xml ============================================================================== --- head/ru_RU.KOI8-R/books/handbook/audit/chapter.xml Wed Apr 16 17:12:25 2014 (r44579) +++ head/ru_RU.KOI8-R/books/handbook/audit/chapter.xml Wed Apr 16 17:18:22 2014 (r44580) @@ -5,7 +5,7 @@ $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/audit/chapter.xml,v 1.10 2007/06/26 08:38:00 den Exp $ $FreeBSD$ - Original revision: r43688 + Original revision: r44395 --> <!-- Need more documentation on praudit, auditreduce, etc. Plus more info on the triggers from the kernel (log rotation, out of space, etc). @@ -14,38 +14,22 @@ some coverage of integrating MAC with Ev on how some companies or organizations handle auditing and auditing requirements. --> <chapter xmlns="http://docbook.org/ns/docbook" - xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" - xml:id="audit"> + xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" + xml:id="audit"> <info><title>Аудит событий безопасности</title> <authorgroup> <author> - <personname> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - </personname> - <contrib>Автор </contrib> + <personname> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + </personname> + <contrib>Автор </contrib> </author> <author> - <personname> - <firstname>Robert</firstname> - <surname>Watson</surname> - </personname> - </author> - </authorgroup> - <authorgroup> - <author> - <personname> - <firstname>Денис</firstname> - <surname>Баров</surname> - </personname> - <contrib>Перевод на русский язык: </contrib> - </author> - <author> - <personname> - <firstname>Владимир</firstname> - <surname>Романов</surname> - </personname> - <contrib>Обновление перевода: </contrib> + <personname> + <firstname>Robert</firstname> + <surname>Watson</surname> + </personname> </author> </authorgroup> </info> @@ -57,20 +41,23 @@ requirements. --> <primary>Аудит событий безопасности</primary> <see>MAC</see> </indexterm> - <para>Операционная система &os; включает в себя поддержку аудита - событий безопасности. Аудит событий дает надежный и точный способ - для протоколирования различных событий, связанных с безопасностью, + <para>Операционная система &os; включает в себя поддержку аудита + событий безопасности. Аудит позволяет выполнять надежное, + детальное и гибко настраиваемое протоколирование + различных событий, связанных с безопасностью, включая входы в систему, изменения конфигурации, доступ к файлам и сети. Эти записи могут быть незаменимы для мониторинга функционирующей системы, обнаружения вторжений и для анализа событий, приведших к краху системы. - В &os; реализован опубликованный &sun; <acronym>BSM</acronym> - API и формат файла, который совместим с реализациями - аудита в &sun; &solaris; и &apple; &macos; X.</para> + В &os; реализован опубликованный &sun; интерфейс прикладного + программирования (Application Programming Interface, + <acronym>API</acronym>), называемый Basic Security Module + (<acronym>BSM</acronym>), и формат файла, который совместим с + реализациями аудита в &solaris; и &macos; X.</para> - <para>В этой главе описывается, в основном, процесс установки и + <para>В этой главе описывается процесс установки и конфигурирования системы аудита. В том числе, приводится - разъяснение политик аудита, а так же даются примеры конфигурационных + разъяснение политик аудита, а также даются примеры конфигурационных файлов.</para> <para>После прочтения этой главы вы будете знать:</para> @@ -80,13 +67,14 @@ requirements. --> </listitem> <listitem> +<!-- XXX broken indent --> <para>Как настроить аудит во &os; для мониторинга пользователей и процессов.</para> </listitem> <listitem> - <para>Как просматривать журнал аудита, использовать ограничения по - размеру и специальные инструменты для его просмотра.</para> + <para>Как просматривать журнал аудита при помощи + инструментов просмотра и фильтрации (reduction).</para> </listitem> </itemizedlist> @@ -110,438 +98,494 @@ requirements. --> </itemizedlist> <warning> - <para>Реализация аудита имеет известные ограничения, например, - не все события в настоящий момент протоколируемы. - Например, некоторые механизмы входа в систему (Основанные на X11 - оконные менеджеры, многое программное обеспечение от сторонних - производителей) не сконфигурированы для протоколирования событий - входа в систему через подсистему аудита.</para> - <para>Использование системы аудита может привести к генерированию - огромных журнальных файлов: их размер на сильно загруженных серверах - в некоторых конфигурациях может достигать нескольких гигабайт в неделю. - Администраторы должны принимать во внимание требования + <para>Реализация аудита имеет известные ограничения. + Не все события в настоящий момент протоколируемые. + Также, некоторые механизмы входа в систему, такие как + оконные менеджеры <application>X11</application> или + демоны от сторонних производителей, не настраивают аудит + пользовательских сессий должным образом.</para> + + <para>Использование системы аудита может привести к + генерированию изобилующих подробностями журнальных файлов. + Их размер на загруженных серверах в некоторых конфигурациях + может превышать несколько гигабайт в неделю. + Администраторы должны принимать во внимание требования к дисковому пространству для нагруженных конфигураций системы - аудита. Например, рекомендуется выделить отдельный раздел для - файловой системы аудита - <filename>/var/audit</filename>, - чтобы переполнение раздела аудита не влияло на работоспособность - всей остальной системы.</para> + аудита. Например, желательно выделить отдельный раздел для + файловой системы аудита <filename>/var/audit</filename>, + чтобы заполнение раздела аудита не влияло на + другие файловые системы.</para> </warning> - </sect1> <sect1 xml:id="audit-inline-glossary"> - <title>Ключевые понятия в Данной Главе.</title> + <title>Ключевые понятия</title> - <para>Перед чтением этой главы необходимо определить несколько - ключевых понятий. В русской версии документа приводятся - близкий по смыслу перевод и в скобках указывается оригинальный - английский термин.</para> + <para>Следующие термины относятся к аудиту событий + безопасности:</para> <itemizedlist> <listitem> - <para><emphasis>событие</emphasis> (event): Событие, которое - может быть занесено в журнал. Примеры важных для безопасности - системы событий включает: создание файла, инициализацию сетевого + <para><emphasis>событие</emphasis> (event): событие, которое + может быть занесено в журнал. Примерами событий, + относящихся к безопасности системы, являются: создание + файла, инициализацию сетевого соединения, вход пользователя в систему. События разделяются на <quote>приписываемые</quote> (attributable) - те, которые могут быть отнесены к конкретному пользователю - - и <quote>не-приписываемые</quote> (non-attributable), если - их нельзя отнести к конкретному пользователю. Пример - не-приписываемого события - любое событие, произошедшее до - аутентификации пользователя, такое, например, такое, как - неудачный вход пользователя в систему.</para> + и <quote>неприписываемые</quote> (non-attributable). + Пример + неприписываемого события — любое событие, произошедшее до + аутентификации пользователя, например, неверно + набранный пароль.</para> </listitem> <listitem> - <para><emphasis>Класс</emphasis> (class): Классы событий это - именованные наборы однотипных событий, которые используются - в выражениях выбора. Частоиспользуемые классы событий + <para><emphasis>класс</emphasis> (class): именованные наборы + однотипных событий, которые используются + в выражениях выбора. Часто используемые классы событий включают <quote>создание файла</quote> (fc), <quote>выполнение файла</quote> (ex) и <quote>события входа в систему и выхода из нее</quote> (lo).</para> </listitem> <listitem> - <para><emphasis>Запись</emphasis> (record): <quote>Запись</quote> - - это единичная запись в журнале, описывающая то или иное - событие. Запись обычно содержит информацию о типе события, + <para><emphasis>запись</emphasis> (record): единичная запись + в журнале, описывающая то или иное + событие. Записи содержат информацию о типе события, информацию о субъекте события (пользователе), который - выполнил некоторое действия, дату и время события, - информацию об объектах и аргументах события, если они есть, - а также информацию об успешности выполнения операции, - породившей событие.</para> + выполнил некоторое действие, дату и время события, + информацию об объектах и аргументах события, + а также информацию об успешности или неуспешности выполнения + операции.</para> </listitem> <listitem> - <para><emphasis>Журнал</emphasis> (trail): - журнал аудита, или лог-файл - - содержит серию записей о системных событиях. - Как правило, журнал содержит записи в строгом + <para><emphasis>журнал</emphasis> (trail): файл, + содержащий последовательность записей аудита, описывающих + события безопасности (security events). + Журнал содержит записи в ориентировочно хронологическом порядке по времени завершения события. Только авторизованные процессы могут добавлять записи в журнал.</para> </listitem> <listitem> - <para><emphasis>выражение выбора</emphasis> (selection expression): - Строка, содержащая список префиксов и имен классов, используемая - для выбора группы событий.</para> + <para><emphasis>выражение выбора</emphasis> (selection + expression): строка, содержащая список префиксов и имен + классов, используемая для выбора группы событий.</para> </listitem> <listitem> <para><emphasis>предварительный выбор</emphasis> (preselection): - Процесс, с помощью которого система определяет, какие события имеют - важность для администратора. Это необходимо для того, - чтобы избежать протоколирования событий, не имеющих никакой значимости. - Предварительный выбор использует ряд выражений выбора - для того, чтобы определить, какие именно классы событий для - какого пользователя необходимо вносить в журнал, а так же - глобальные настройки, которые будут применяться как для + процесс, с помощью которого система определяет, какие события имеют + важность для администратора. + Предварительный выбор использует ряд выражений выбора, + задающих какие именно классы событий и для + какого пользователя необходимо вносить в журнал, а также — + глобальные настройки, которые будут применяться как для авторизованных, так и для неавторизованных процессов.</para> </listitem> <listitem> - <para><emphasis>Фильтрация</emphasis> (reduction): - Процесс, в результате которого записи из существующего журнала - выделяются для хранения, распечатки или анализа. Также, это + <para><emphasis>фильтрация</emphasis> (reduction): + процесс, в результате которого записи из существующего журнала + выделяются для хранения, распечатки или анализа. Также, это процесс, в результате которого нежелательные записи удаляются - из журнала аудита. Используя фильтрацию, администраторы могут + из журнала аудита. Используя фильтрацию, администраторы могут реализовывать различные политики хранения данных аудита. Например, детализированный журнал может храниться месяц, но - после этого он должен быть сокращен чтобы хранить только - информацию о входе в систему и выходе из нее для целей архивации.</para> + после этого он может быть сокращен чтобы хранить только + информацию о входе в систему и выходе из нее.</para> </listitem> </itemizedlist> </sect1> - <sect1 xml:id="audit-install"> - <title>Установка системы аудита</title> - - <para>Пользовательская часть подсистемы аудита устанавливается как часть - базовой системы &os;. Поддержка аудита событий со стороны ядра - также компилируется по умолчанию, но поддержка данной возможности - требует создания своего ядра, с добавлением следующей строки - в конфигурационный файл ядра:</para> - - <programlisting>options AUDIT</programlisting> - - <para>Процесс сборки и установки ядра подробно описан в главе - <xref linkend="kernelconfig"/>.</para> - - <para>Как только ядро с поддержкой аудита было собрано и установлено, - а система была перезагружена, необходимо разрешить запуск демона аудита, - добавив следующую строку в &man.rc.conf.5;:</para> - - <programlisting>auditd_enable="YES"</programlisting> - - <para>Затем нужно запустить поддержку аудита либо путем - перезагрузки, либо вручную, запустив демон аудита:</para> - - <programlisting>service auditd start</programlisting> - </sect1> - <sect1 xml:id="audit-config"> <title>Настройка системы аудита</title> - <para>Все конфигурационные файлы системы аудита находятся в каталоге - <filename>/etc/security</filename>. Перед запуском - демона аудита там должны находиться следующие файлы:</para> + <para>Пользовательская часть системы аудита входит в базовую + систему &os;, системная часть включена в ядро + <filename>GENERIC</filename>, старт демона &man.auditd.8; + активируется включением следующей записи в + <filename>/etc/rc.conf</filename>:</para> - <itemizedlist> - <listitem> - <para><filename>audit_class</filename> - Содержит определения - классов аудита.</para> - </listitem> - - <listitem> - <para><filename>audit_control</filename> - Параметры системы - аудита: классы по умолчанию, минимальное дисковое - пространство, которое должно оставаться на разделе журнала - аудита, максимальный размер журнала аудита и другие.</para> - </listitem> + <programlisting>auditd_enable="YES"</programlisting> - <listitem> - <para><filename>audit_event</filename> - Текстовые имена и - описания событий аудита, а также список, определяющий - соответствие классов и событий, которые находятся в данных - классах.</para> - </listitem> + <para>Затем нужно запустить демон аудита:</para> - <listitem> - <para><filename>audit_user</filename> - Требования аудита, которые - отличаются для отдельных пользователей. Они соединяются с - глобальными настройками по умолчанию при входе пользователя - в систему.</para> - </listitem> + <screen>&prompt.root; <userinput>service auditd start</userinput></screen> - <listitem> - <para><filename>audit_warn</filename> - Скрипт командного - интерпретатора, используемый &man.auditd.8;, - чтобы сгенерировать предупреждающие сообщения об исключительных - ситуациях, например, когда заканчивается свободное дисковое - пространство для записей журналов аудита, либо когда произошла - ротация файла журнала аудита.</para> - </listitem> - </itemizedlist> + <para>Пользователям, предпочитающим строить специализированное + ядро, необходимо включить следующую запись в файл конфигурации + ядра:</para> - <warning> - <para>Файлы конфигурации аудита должны редактироваться и - изменяться с осторожностью, так как ошибки в конфигурации - могут привести к неправильному логу событий</para> - </warning> + <programlisting>options AUDIT</programlisting> <sect2> <title>Выражения выбора событий</title> <para>Выражения выбора используются в нескольких местах - конфигурации аудита для определения того, какие события должны - подвергаться аудиту. Выражения содержат список классов событий, - с которыми интересующее нас событие будет сравниваться. Каждое - выражение имеет префикс, показывающий, нужно ли принять - или игнорировать найденное событие, и, возможно, показывающий, - интересуют ли нас успешные или неуспешные операции. Выражения - выбора рассматриваются слева направа, и два выражения - объединяются простым добавлением второго выражения к концу - первого.</para> - - <para>Следующий список содержит классы по умолчанию, - присутствующие в файле <filename>audit_class</filename>:</para> - - <itemizedlist> - <listitem> - <para><literal>all</literal> - <emphasis>all</emphasis> - - Соответствует всем классам событий.</para> - </listitem> - - <listitem> - <para><literal>ad</literal> - <emphasis>administrative</emphasis> - - Аудит административных действий, произошедших в - системе.</para> - </listitem> - - <listitem> - <para><literal>ap</literal> - <emphasis>application</emphasis> - - Аудит события, вызванного каким-либо приложением.</para> - </listitem> - - <listitem> - <para><literal>cl</literal> - <emphasis>file close</emphasis> - - Аудит вызовов системной функции <function>close</function>.</para> - </listitem> - - <listitem> - <para><literal>ex</literal> - <emphasis>exec</emphasis> - - Аудит запуска приложения. Аудит аргументов командной строки и - переменных окружения контролируется через &man.audit.control.5; - используя параметры <literal>argv</literal> и <literal>envv</literal> - в опции <literal>policy</literal>.</para> - </listitem> - - <listitem> - <para><literal>fa</literal> - <emphasis>file attribute access</emphasis> - - Аудит доступа к атрибутам объектов, - например &man.stat.1;, &man.pathconf.2;, а - также подобных этим событий.</para> - </listitem> - - <listitem> - <para><literal>fc</literal> - <emphasis>file create</emphasis> - - Аудит событий, в результате которых создаются - файлы.</para> - </listitem> - - <listitem> - <para><literal>fd</literal> - <emphasis>file delete</emphasis> - - Аудит событий, в результате которых удаляются - файлы.</para> - </listitem> - - <listitem> - <para><literal>fm</literal> - <emphasis>file attribute modify</emphasis> - - Аудит событий, в результате которых изменяются - атрибуты файлов, например, &man.chown.8;, - &man.chflags.1;, &man.flock.2;.</para> - </listitem> - - <listitem> - <para><literal>fr</literal> - <emphasis>file read</emphasis> - - Аудит событий, в результате которых происходит - чтение данных, открываются файлы на чтение и т.п.</para> - </listitem> + конфигурации для отбора событий, подлежащих аудиту. + Выражения содержат перечень классов событий, с которым + сравнивается происшедшее событие. Выражения + выбора рассматриваются слева направо, и два выражения + объединяются добавлением первого выражения ко + второму.</para> + + <para><xref linkend="event-selection"/> перечисляет имеющиеся + по умолчанию записи:</para> + + <table xml:id="event-selection" frame="none" pgwide="1"> + <title>Классы событий системы аудита</title> + + <tgroup cols="3"> + <thead> + <row> + <entry>Имя класса</entry> + <entry>Расшифровка</entry> + <entry>Действие</entry> + </row> + </thead> + + <tbody> + <row> + <entry>all</entry> + <entry>all</entry> + <entry>Соответствует всем классам событий.</entry> + </row> + + <row> + <entry>aa</entry> + <entry>authentication and authorization</entry> + <entry></entry> + </row> + + <row> + <entry>ad</entry> + <entry>administrative</entry> + <entry>Аудит административных действий, произошедших в + системе.</entry> + </row> + + <row> + <entry>ap</entry> + <entry>application</entry> + <entry>События, определяемые каким-либо + приложением.</entry> + </row> + + <row> + <entry>cl</entry> + <entry>file close</entry> + <entry>Аудит вызовов системной функции + <function>close</function>.</entry> + </row> + + <row> + <entry>ex</entry> + <entry>exec</entry> + <entry>Аудит запуска приложения. Аудит аргументов + командной строки и переменных окружения контролируется + через &man.audit.control.5; используя параметры + <literal>argv</literal> и <literal>envv</literal> + в опции <literal>policy</literal>.</entry> + </row> + + <row> + <entry>fa</entry> + <entry>file attribute access</entry> + <entry>Аудит доступа к атрибутам объектов, например + таких как &man.stat.1;, &man.pathconf.2;.</entry> + </row> + + <row> + <entry>fc</entry> + <entry>file create</entry> + <entry>Аудит событий, в результате которых создаются + файлы.</entry> + </row> + + <row> + <entry>fd</entry> + <entry>file delete</entry> + <entry>Аудит событий, в результате которых удаляются + файлы.</entry> + </row> + + <row> + <entry>fm</entry> + <entry>file attribute modify</entry> + <entry>Аудит событий, в результате которых изменяются + атрибуты файлов, например, &man.chown.8;, + &man.chflags.1;, &man.flock.2;.</entry> + </row> + + <row> + <entry>fr</entry> + <entry>file read</entry> + <entry>Аудит событий, в результате которых происходит + чтение данных или открываются файлы на чтение.</entry> + </row> + + <row> + <entry>fw</entry> + <entry>file write</entry> + <entry>Аудит событий, в результате которых происходит + запись данных, запись или изменение файлов.</entry> + </row> + + <row> + <entry>io</entry> + <entry>ioctl</entry> + <entry>Аудит вызовов системной функции + &man.ioctl.2;.</entry> + </row> + + <row> + <entry>ip</entry> + <entry>ipc</entry> + <entry>Аудит различных видов взаимодействия процессов, + включая создание неименованных каналов (POSIX pipe) и + взаимодействие процессов в стиле System V + <acronym>IPC</acronym>.</entry> + </row> + + <row> + <entry>lo</entry> + <entry>login_logout</entry> + <entry>Аудит событий &man.login.1; и + &man.logout.1;.</entry> + </row> + + <row> + <entry>na</entry> + <entry>non attributable</entry> + <entry>Аудит неприписываемых событий.</entry> + </row> + + <row> + <entry>no</entry> + <entry>invalid class</entry> + <entry>Не соответствует никаким событиям аудита.</entry> + </row> + + <row> + <entry>nt</entry> + <entry>network</entry> + <entry>Аудит событий, связанных с сетевыми + подключениями, например &man.connect.2; и + &man.accept.2;.</entry> + </row> + + <row> + <entry>ot</entry> + <entry>other</entry> + <entry>Аудит различных событий.</entry> + </row> + + <row> + <entry>pc</entry> + <entry>process</entry> + <entry>Аудит действий процессов, таких как &man.exec.3; + и &man.exit.3;.</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>Эти классы событий могут быть настроены изменением + конфигурационных файлов <filename>audit_class</filename> и + <filename>audit_event</filename>.</para> + + <para>Каждый класс аудита можно скомбинировать с префиксом, + показывающим, + какие операции будут учитываться — удачные или неудачные, + а также то, включает ли данная запись аудит для данного + класса и типа, либо отключает его. <xref + linkend="event-prefixes"/> обобщает доступные + префиксы:</para> + + <table xml:id="event-prefixes" frame="none" pgwide="1"> + <title>Префиксы классов аудита событий</title> + + <tgroup cols="2"> + <thead> + <row> + <entry>Префикс</entry> + <entry>Действие</entry> + </row> + </thead> + + <tbody> + <row> + <entry>+</entry> + <entry>Аудит успешных событий в данном классе.</entry> + </row> + + <row> + <entry>-</entry> + <entry>Аудит ошибочных событий в данном классе.</entry> + </row> + + <row> + <entry>^</entry> + <entry>Отключение аудита как успешных, так и ошибочных + событий в данном классе.</entry> + </row> + + <row> + <entry>^+</entry> + <entry>Отключение аудита успешных событий в данном + классе.</entry> + </row> + + <row> + <entry>^-</entry> + <entry>Отключение аудита ошибочных событий в данном + классе.</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>Если префикс не указан, то аудиту подлежат как успешные, + так и неуспешные события.</para> + + <para>Следующий пример выбирает успешные и неуспешные события входа в + систему и выхода из нее, и только успешные события выполнения + приложения:</para> - <listitem> - <para><literal>fw</literal> - <emphasis>file write</emphasis> - - - Аудит событий, в результате которых происходит - запись данных, запись или изменение файлов и так далее.</para> - </listitem> - - <listitem> - <para><literal>io</literal> - <emphasis>ioctl</emphasis> - - Аудит вызовов системной функции &man.ioctl.2;.</para> - </listitem> - - <listitem> - <para><literal>ip</literal> - <emphasis>ipc</emphasis> - - Аудит различных видов взаимодействия процессов, - включая создание не-именованных каналов (POSIX pipe) и - взаимодействие процессов в стиле System V - <acronym>IPC</acronym>.</para> - </listitem> - - <listitem> - <para><literal>lo</literal> - <emphasis>login_logout</emphasis> - - Аудит событий &man.login.1; и &man.logout.1;, - происходящих в системе.</para> - </listitem> - - <listitem> - <para><literal>na</literal> - <emphasis>non attributable</emphasis> - - Аудит не-приписываемых событий.</para> - </listitem> - - <listitem> - <para><literal>no</literal> - <emphasis>invalid class</emphasis> - - Не соответствует никаким событиям аудита.</para> - </listitem> - - <listitem> - <para><literal>nt</literal> - <emphasis>network</emphasis> - - Аудит событий, связанных с сетевыми подключениями, - например &man.connect.2; и &man.accept.2;.</para> - </listitem> - - <listitem> - <para><literal>ot</literal> - <emphasis>other</emphasis> - - Аудит различных событий.</para> - </listitem> + <programlisting>lo,+ex</programlisting> + </sect2> - <listitem> - <para><literal>pc</literal> - <emphasis>process</emphasis> - - Аудит действий процессов, таких как &man.exec.3; и - &man.exit.3;.</para> - </listitem> - </itemizedlist> + <sect2> + <title>Конфигурационные файлы</title> - <para>Эти классы событий могут быть настроены изменением конфигурационных - файлов <filename>audit_class</filename> и - <filename>audit_event</filename>.</para> - - <para>Каждый класс аудита комбинируется с префиксом, показывающим, - какие операции будут учитываться - удачные или неудачные, - а также то, включает ли данная запись аудит для данного - класса и типа, либо отключает его.</para> + <para>В каталоге <filename>/etc/security</filename> находятся + следующие конфигурационные файлы системы аудита:</para> <itemizedlist> <listitem> - <para><literal>[пустой префикс]</literal> - Аудит проводится как для - успешного, так и для ошибочного события.</para> - </listitem> - - <listitem> - <para><literal>+</literal> - Аудит только успешных - событий в данном классе.</para> + <para><filename>audit_class</filename>: содержит определения + классов аудита.</para> </listitem> <listitem> - <para><literal>-</literal> - Аудит только ошибочных - событий в данном классе.</para> + <para><filename>audit_control</filename>: контроллирует + некоторые аспекты системы аудита, такие как классы по + умолчанию, минимальное дисковое + пространство, которое должно оставаться на разделе журнала + аудита, максимальный размер журнала аудита.</para> </listitem> <listitem> - <para><literal>^</literal> - Отключение аудита как успешных, так и - ошибочных событий в данном классе.</para> +<!-- XXX deviates from the source --> + <para><filename>audit_event</filename>: связывает + идентификаторы событий (eventnum) с их текстовыми + именами, описаниями и классами событий.</para> </listitem> <listitem> - <para><literal>^+</literal> - Отключение аудита успешных - событий в данном классе.</para> + <para><filename>audit_user</filename>: уточняет настройки + аудита для конкретных пользователей; они комбинируются + с глобальными настройками при входе пользователя + в систему.</para> </listitem> <listitem> - <para><literal>^-</literal> - Отключение аудита ошибочных - событий в данном классе.</para> + <para><filename>audit_warn</filename>: настраиваемый скрипт + командного интерпретатора, который вызывается &man.auditd.8; + для генерации предупреждений в исключительных ситуациях, + таких как исчерпание дискового пространства записями аудита + или при ротации журнала аудита.</para> </listitem> - </itemizedlist> - <para>Следующий пример выбирает успешные и не-успешные события входа в - систему и выхода из нее, и только успешные события исполнения - файла:</para> - - <programlisting>lo,+ex</programlisting> - </sect2> - - <sect2> - <title>Конфигурационные файлы</title> + <warning> + <para>Файлы конфигурации аудита должны редактироваться и + изменяться с осторожностью, так как ошибки в конфигурации + могут привести к сохранению бесполезных записей.</para> + </warning> - <para>В большинстве случаев администратору придётся вносить + <para>В большинстве случаев администратору придется вносить изменения только в два конфигурационных файла системы аудита: <filename>audit_control</filename> и <filename>audit_user</filename>. Первый из них содержит общие настройки системы аудита, второй может использоваться - для более тонкой настройки аудита пользователем.</para> + для уточнения настроек аудита для конкретных + пользователей.</para> <sect3 xml:id="audit-auditcontrol"> <title>Файл <filename>audit_control</filename></title> - <para>Некоторые настройки по умолчанию для подсистемы - аудита содержатся в файле <filename>audit_control</filename>:</para> + <para>Ниже приведен перечень настроек по умолчанию, + содержащихся в <filename>audit_control</filename>:</para> <programlisting>dir:/var/audit -flags:lo -minfree:20 -naflags:lo -policy:cnt -filesz:0</programlisting> +dist:off +flags:lo,aa +minfree:5 +naflags:lo,aa +policy:cnt,argv +filesz:2M +expire-after:10M</programlisting> <para>Запись <option>dir</option> используется для установки одного или более каталогов, в - которых будет сохраняться журнал системы аудита. Если + которых будет сохраняться журнал системы аудита. Если указан более чем один каталог, то указанные каталоги - будут использоваться по очереди, по мере заполнения. Как - правило, система аудита конфигурируется таким образом, что - журнал аудита хранится на отдельном разделе, чтобы - предотвратить пересечение подсистемы аудита и остальных - подсистем в случае, если свободное месте на разделе - системы аудита будет исчерпано.</para> + будут использоваться по очереди, по мере заполнения. Как + правило, система аудита настраивается на хранение + журнала аудита на отдельном разделе, чтобы + предотвратить взаимное влияние подсистемы аудита и остальных + подсистем в случае исчерпания свободного места на + разделе.</para> + + <para>Если опция <option>dist</option> имеет значение + <literal>on</literal> или <literal>yes</literal>, то для + всех журналов аудита будут создаваться жесткие ссылки, + сохраняемые в <filename>/var/audit/dist</filename>.</para> <para>Запись <option>flags</option> используется для установки глобальной маски предварительного выбора - для приписываемых событий. В примере выше, будут подвергаться - аудиту как успешные, так и неудачные попытки входа в - систему и выхода из нее для всех пользователей</para> + для приписываемых событий. В примере выше аудиту будут + подвергаться как успешные, так и неудачные попытки входа в + систему и выхода из нее, а также — аутентификация + и авторизация для всех пользователей.</para> <para>Запись <option>minfree</option> определяет минимальное - значение свободного дискового пространства на разделе, в - который сохраняются файлы журналов аудита. Когда данная - граница будет превышена, будет сгенерировано предупреждение. - Вышеприведенный пример устанавливает минимальное свободное - пространство в двадцать процентов.</para> + количество свободного дискового пространства на разделе, в + который сохраняются файлы журналов аудита.</para> +<!-- XXX deviates from the source --> <para>Запись <option>naflags</option> определяет классы - аудита для не-приписываемых событий, например, процессов + аудита для неприписываемых событий, например, процессов входа в систему и системных демонов.</para> - <para>Запись <option>policy</option> определяет список - флагов политики, определяющей различные аспекты поведения - аудита. Элементы списка отделяются друг от друга запятыми. - По умолчанию, флаг <literal>cnt</literal> указывает, что - система должна продолжать работать, несмотря на ошибки - аудита (данный флаг очень сильно рекомендуется использовать). - Другой частоиспользуемый флаг - <literal>argv</literal>, - который заставляет подвергать аудиту аргументы командной - строки при вызове системного вызова &man.execve.2;, как - часть выполнения команды.</para> - - <para>Запись <option>filesz</option> определяет - максимальный размер в байтах, до которого может расти - журнал событий аудита, прежде чем он будет автоматически - закончен и подвергнут ротации. По умолчанию, значение 0 - запрещает автоматическую ротацию логов. Если требуемый - размер файла ненулевой, но ниже минимального значения в - 512К, то он будет проигнорирован, и будет сгенерировано - предупреждающее сообщение в логах.</para> + <para>Запись <option>policy</option> определяет разделяемый + запятыми список + флагов политики, определяющей различные аспекты поведения + аудита. + Флаг <literal>cnt</literal> указывает, что + система должна продолжать работать, несмотря на ошибки + аудита (данный флаг настоятельно рекомендуется). + Второй флаг, <literal>argv</literal>, + заставляет подвергать аудиту аргументы командной + строки при вызове системного вызова &man.execve.2;.</para> + + <para>Запись <option>filesz</option> определяет максимальный + размер журнала событий аудита, по достижении которого + журнал будет автоматически + закончен и подвергнут ротации. Значение <literal>0</literal> + запрещает автоматическую ротацию логов. Если указанный + размер ниже минимального значения + 512К, то он будет проигнорирован, и будет сгенерировано + предупреждающее сообщение в логах.</para> + + <para>Поле <option>expire-after</option> определяет момент + времени, при достижении которого журнальные файлы считаются + неактуальными и удаляются.</para> </sect3> <sect3 xml:id="audit-audituser"> @@ -550,65 +594,68 @@ filesz:0</programlisting> <para>Администратор может определить дополнительные требования к аудиту для конкретных пользователей в файле <filename>audit_user</filename>. - Каждая строка конфигурирует аудит для пользователя - с использованием двух полей: первое поле - <literal>alwaysaudit</literal>, которое определяет + Каждая строка позволяет уточнить настройки аудита + для пользователя при помощи двух полей: + <literal>alwaysaudit</literal> — определяющее набор событий, которые должны всегда подвергаться - аудиту для данного пользователя, а второе - поле - <literal>neveraudit</literal>, которое определяет + аудиту для данного пользователя, и + <literal>neveraudit</literal> — перечисляющее набор событий, которые никогда не должны подвергаться аудиту для пользователя.</para> - <para>Нижеследующий пример <filename>audit_user</filename> - проводит аудит всех событий входа в систему и выхода из - системы для пользователя <systemitem class="username">root</systemitem>, - а также проводит аудит всех событий, связанных с созданием - файлов и успешным выполнением команд для пользователя - <systemitem class="username">www</systemitem>. При использовании с - вышеприведенным примером файла <filename>audit_control</filename>, - запись <literal>lo</literal> для <systemitem class="username">root</systemitem> - является лишней, кроме того, события входа в систему и выхода + <para>Нижеследующий пример настраивает аудит всех событий + входа в систему, выхода из системы, а также аудит всех + успешных выполнений команд для пользователя + <systemitem class="username">root</systemitem>, + а также — аудит всех событий, связанных с созданием + файлов и успешным выполнением команд пользователем + <systemitem class="username">www</systemitem>. С + настройками по умолчанию в <filename>audit_control</filename> + запись <literal>lo</literal> для + <systemitem class="username">root</systemitem> + является избыточной, кроме того, события входа в систему и выхода из системы будут подвергаться аудиту и для пользователя <systemitem class="username">www</systemitem>.</para> <programlisting>root:lo,+ex:no www:fc,+ex:no</programlisting> - </sect3> </sect2> </sect1> <sect1 xml:id="audit-administration"> - <title>Администрирование подсистемы аудита</title> + <title>Работа с журналами аудита</title> +<!-- XXX broken indent 00 starts --> + <para>Так как журнал аудита хранится в бинарном формате + <acronym>BSM</acronym>, то для его изменения или перевода в + текстовый формат предоставляются встроенные утилиты. Утилита + <command>praudit</command> преобразует журнал аудита в текстовый + формат. Утилита <command>auditreduce</command> применяется для + фильтрации журнальных записей с целью анализа, архивирования + или распечатки. Последняя утилита поддерживает разнообразие + параметров, позволяющих выбирать записи по типу события, по + классу события, по пользователю, по дате или времени события, + по пути к файлу или по объекту, над которым производилось + действие.</para> - <sect2> - <title>Просмотр журнала аудита</title> - *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404161718.s3GHINHj030370>