Конфигурационные файлы

Общий формат конфигурационных файлов

Настройка большинства компонентов программного комплекса Dr.Web для интернет-шлюзов UNIX производится с помощью конфигурационных файлов. Конфигурационные файлы являются текстовыми файлами, что позволяет редактировать их любым текстовым редактором).

Общий формат файла конфигурации:

--- начало файла ---
 
[Имя секции 1]
Параметр1 = значение1, ..., значениеK
...
ПараметрN = значение1, ..., значениеK
 
[Имя секции X]
Параметр1 = значение1, ..., значениеK
...
 
--- конец файла ---

Файлы конфигурации формируются по следующему принципу:

Символы ";" или "#" в строках конфигурационного файла обозначают начало комментария – весь текст, идущий в строке за этими символами, пропускается модулями Dr.Web для интернет-шлюзов UNIX при чтении параметров из конфигурационного файла.

Содержимое файла разбивается на последовательность именованных секций. Возможные имена секций жестко заданы и не могут быть произвольными. Имя секции задается в квадратных скобках.

Каждая секция содержит группу параметров конфигурации, объединенных по смыслу.

В одной строке файла задается значение только одного параметра.

Основной формат задания значения параметра (пробелы, окружающие символ '=', если встречаются, игнорируются):

<Имя параметра> = <Значение>

Возможные имена параметров жестко заданы и не могут быть произвольными.

Все имена секций и параметров в файле регистронезависимы.

Порядок следования секций в файле и параметров внутри секций не имеет значения.

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

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

Внимание!

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

Пример задания параметра, имеющего несколько значений:

1) Перечисление нескольких значений через запятую:

Parameter = Value1, Value2,"Value 3"

2) Задание тех же значений параметра в разных строках конфигурационного файла:

Parameter = Value2
Parameter = Value1
Parameter = "Value 3"

Внимание!

Если какой-либо параметр не задан (отсутствует) в конфигурационном файле, это не означает, что у данного параметра нет значения. В таких случаях значение параметра считается заданным по умолчанию. Лишь некоторые параметры являются необязательными или не имеют значений по умолчанию, о чем, как правило, упоминается отдельно.

Правила описания параметров, принятые в данном документе

В данном руководстве каждый параметр описывается следующим образом:

ИмяПараметра = {Тип параметра | Возможные значения}

Описание параметра.

{Может ли иметь несколько значений}.

{Особые замечания}

{Важные замечания}

Значение по умолчанию:

ИмяПараметра = {значение | отсутствует}

Описание параметров и секций конфигурационных файлов дано в порядке их следования в файле конфигурации, создаваемом при установке программного комплекса Dr.Web для интернет-шлюзов UNIX.

Поле Тип параметра может принимать следующие значения:

числовое значение (numerical value) значение параметра является целым неотрицательным числом.

время (time) значение параметра задается в единицах измерения времени. Значение состоит из целого числа, после которого может идти буква, определяющая вид единиц измерения времени (s – секунды, m – минуты, h – часы, регистр букв не учитывается). Если в значении параметра буквы нет, то считается, что время задано в секундах.

  Примеры: 30s, 15m

размер (size) значение параметра задается в единицах измерения объема памяти (дисковой или оперативной). Значение состоит из целого числа, после которого может идти буква, определяющая вид единиц измерения объема памяти (b – байты, k – килобайты, m – мегабайты, g – гигабайты, регистр букв не учитывается). Если в значении параметра буквы нет, то считается, что размер задан в байтах.

  Примеры: 20b, 15k

права (permissons) значение параметра задаётся трехзначным числом, обозначающим права доступа к файлам в формате, принятом в UNIX-системах.
Каждое право является комбинацией (суммой) трех базовых прав:

oПраво чтения (r) обозначается числом 4;

oПраво записи (w) обозначается числом 2;

oПраво исполнения (x) обозначается числом 1.

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

  Примеры: 755, 644

логический (Yes/No) Логический тип, значения которого представляются строками "Yes" и "No".

путь к файлу/каталогу (path to file/directory) строка, задающая расположение файла или каталога в файловой системе. Помните, что в ОС семейства Linux/UNIX имена файлов и каталогов регистрозависимы. Если указано, что значением параметра может быть маска, то в качестве значений параметра можно использовать файловые маски, содержащие следующие специальные символы:

o? – замещает любой один символ;

o* – замещает любую (в том числе пустую) последовательность символов.

Пример:  "?.e*" – маска, под которую подпадают файлы, имя которых состоит из любого одного символа, а расширение любой длины, и начинается с буквы 'e' (x.exe, g.e, f.enable и т.п.).

действие (action) строка, содержащая наименование действий, совершаемых над объектами, вызвавшими какую-либо реакцию компонентов программного комплекса Dr.Web для интернет-шлюзов UNIX. В некоторых случаях для параметра можно задать одно основное действие и до трех дополнительных. Тип параметра в этом случае называется список действий (actions list). Основное действие в этом случае всегда должно быть первым в списке. Для разных параметров набор допустимых действий может различаться, и в этом случае он указывается отдельно для каждого параметра. Общий перечень действий, которые могут использоваться, см. ниже.

адрес (address) строка, содержащая адрес сокета компонента Dr.Web для интернет-шлюзов UNIX или внешнего модуля или программы.
Имеет формат ТИП:АДРЕС. Допустимы следующие типы:

oinet используются TCP-сокеты, АДРЕС имеет формат ПОРТ@ИМЯ_УЗЛА. ИМЯ_УЗЛА может быть как прямым IP-адресом, так и доменным именем узла.

Пример:

Address = inet:3003@localhost

olocal используются локальные UNIX-сокеты, в этом случае адрес является путем к файлу сокета.

Пример:

Address = local:%var_dir/.daemon

opid реальный адрес процесса должен быть прочитан из его PID файла. Такой тип адреса доступен лишь в некоторых случаях и при возможности его использования в описании параметра это указывается явно.

текст (text value), строка (string) значение параметра задается в виде текстовой строки, текст в строке может быть заключен в кавычки (если в строке есть пробелы, то кавычки обязательны).

уровень подробности (log level) строка, указывающая уровень подробности вывода информации в некоторый журнал или в службу syslog.

возможные значения (value) параметр имеет тип, не описанный в предыдущих пунктах данного списка. В этом случае перечисляется список разрешенных для него значений.

Поведение модулей при некорректно заданных файлах конфигурации

Если значение какого-либо параметра задано некорректно, Dr.Web для интернет-шлюзов UNIX выводит сообщение об ошибке и завершает свою работу.

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

Внимание!

Некоторые параметры могут использовать в качестве значений регулярные выражения (для каждого параметра отмечается в его описании). По умолчанию используется синтаксис регулярных выражений Perl. С основами регулярных выражений вы можете ознакомиться, например, в Wikipedia (статья "Регулярные выражения").