Man:Man5/syslog-ng.conf.5
Матеріал з docs.linux.org.ua — збірника документації з Unix/Linux українською мовою.
Журналізатор подій в Юнікс (v 1.6.7 переклад: бета версія)
Зміст |
ІМ'Я
/etc/syslog-ng/syslog-ng.conf - файл налаштувань журналізатора syslog-ng.
ОПИС
Файл налаштувань журналізатора syslog-ng.
Маршрутизація повідомлень в syslog-ng здійснюється в три етапи: визначення джерел повідомлень, фільтрація повідомлень, визначення місця запису (пересилання) повідомлень.
ДЖЕРЕЛА
Джерела повідомлень визначаються з допомогою директиви source:
source <sourcename> { sourcedriver params; sourcedriver params; ... };
sourcename - ім'я, яке Ви даєте групі джерел, і потім будете використовувати для посилання на цю групу. sourcedriver - метод, яким ви одержуєте повідомлення (конкретне джерело). Існують наступні методи (джерела) повідомлень:
file <filename> - зчитує повідомлення з даного файлу.
unix-dgram <filename> - зчитує повідомлення з вказаного AF_UNIX, SOCK_DGRAM сокету (BSD-i стиль).
unix-stream <filename> - зчитує повідомлення з вказаного AF_UNIX, SOCK_STREAM сокету (Linux style).
udp <ip>,<port> - зчитує повідомлення з мережі використовуючи протокол UDP, що приходять на адрес <ip> і в порт <port>. Якщо не бажаєте прив'язуватись до конкретного інтерфейсу вкажіть 0.0.0.0.
tcp <ip>,<port> - по аналогії з udp тільки для отримання даних цього разу використовується протокол TCP.
sun-streams <filename> - локальне джерело Solaris систем.
ПРИЗНАЧЕННЯ
Призначення може бути створене використовуючи директиву destination:
destination <destname> { destdriver params; destdriver params; ... ; };
destname - ім'я, яке Ви даєте місцю призначення повідомлень, і потім будете використовувати для посилання на це місце.
destdriver - місце, куди пересилаєте (записуєте) повідомлення. Існують наступні місця призначень повідомлень:
file <filename> - записує повідомлення у вказаний файл.
unix-dgram <filename> - записує повідомлення у вказаний AF_UNIX, SOCK_DGRAM сокет (BSD-i style).
unix-stream <filename> - записує повідомлення у вказаний AF_UNIX, SOCK_STREAM сокет (Linux style).
udp <ip>,<port> - пересилає повідомлення по мережі використовуючи UDP протокол.
tcp <ip>,<port> - пересилає повідомлення по мережі використовуючи TCP протокол.
usertty <username> - посилає повідомлення на термінал вказаного користувача.
ФІЛЬТРИ
Фільтри можна створювати використовуючи директиву filer:
filter <filtername> { expression; };
filtername - ім'я, яке Ви даєте фільтру, і потім будете використовувати для посилання на цей фільтр.
expression - простий логічний вираз, в якому можна використовувати "and", "or" та "not" для з'єднання будуючих функцій. Перелік можливих функцій:
facility( перелік через кому імен facility )
level( перелік через кому імен пріоритетів чи границі областей розділені ".." )
program( регулярний вираз що відповідає імені програми )
host( регулярний вираз що відповідає імені компа )
match( регулярний вираз що відповідає імені програми )
ЗАПИС ПОВІДОМЛЕННЯ
Зв'язок між sources, filter та destinations здійснюється з допомогою директиви log, яка і робить саме запис (пересилання) повідомлення:
log { source S1; source S2; ... filter F1; filter F2; ... destination D1; destination D2; ... };
Де Sx імена джерел, Fx імена фільтрів, Dx імена призначень. Всі фільтри виконуються послідовно!
ОПЦІЇ
Можна вказати декілька глобальних опцій для syslog-ng у директиві options:
options { opt1; opt2; ... };
Де опціями можуть бути будь-що з наступного:
- chain_hostnames(yes|no)
- включає повні доменні імена.
- long_hostnames(yes|no)
- застаріле посилання на chain_hostnames().
- keep_hostname(yes|no)
- Вказує чи довіряти імені комп'ютера коли воно включене в повідомлення. Якщо keep_hostname встановлене в yes і це є ім'я комп'ютера в повідомлені, його залишають, в іншому випадку воно завжди переписується на основі інформації звідки прийшло повідомлення.
- use_dns(yes|no)
- Включає чи виключає підтримку DNS. syslog-ng блокується при DNS запитах, отже включення DNS може привести до атаки недоступності сервісу DoS. Для запобігання DoS, захищайте Вашу мережу з syslog-ng за допомогою правил мережевого екрану та переконайтесь що імена всіх комп'ютерів, котрі доступаються до syslog-ng розв'язуються.
- use_fqdn(yes|no)
- вказує використовувати повні доменні імена замість коротких.
- check_hostname(yes|no)
- дозволяє чині в залежності від присутності дозволених символів у імені комп'ютера.
- bad_hostname(regex)
- регулярний вираз котрий вказує ім'я комп'ютера котре не повинно використовуватись.
- dns_cache(yes|no)
- вказує використовувати чи ні кеш DNS.
- dns_cache_expire(n)
- Кількість секунд скільки потрібно зберігати успішний розв'язок DNS.
- dns_cache_expire_failed(n)
- Кількість секунд скільки потрібно зберігати не успішний розв'язок DNS.
- dns_cache_size(n)
- Число комп'ютерів у DNS кеші.
- create_dirs(yes|no)
- дозволяє чи забороняє створювати директорії призначень файлів.
- dir_owner(uid)
- вказує власника директорії.
- dir_group(gid)
- вказує групу власників директорії.
- dir_perm(perm)
- вказує права допуску до директорії (вісімкові).
- owner(uid)
- вказує власника файлу.
- group(gid)
- вказує групу власників файлу.
- perm(perm)
- вказує права допуску до файлу (вісімкові).
- gc_busy_threshold(n)
- Встановлює поріг для зберігання сміття, коли syslog-ng є зайнятий. Фаза GC починається коли число розміщених об'єктів досягає вказаного. По замовчуванню: 3000.
- gc_idle_threshold(n)
- Встановлює поріг для зберігання сміття, коли syslog-ng є вільний. Фаза GC починається коли число розміщених об'єктів досягає вказаного. По замовчуванню: 100.
- log_fifo_size(n)
- Число рядків що поміщається у вихідній черзі. Кожне місце призначення має свою персональну вихідну чергу.
- log_msg_size(n)
- максимальний розмір повідомлення в байтах. (Деякі реалізації мають цей параметр фіксованим у 1024 символ.)
- mark(n)
- Число секунд між двома MARK рядками. (Ще не реалізоване.)
- stats(n)
- Число секунд між двома повідомленнями статистики.
- sync(n)
- Число рядків, що зберігаються в черзі перед записом у файл ( можна перестановити локально )
- time_reap(n)
- Час очікування перед закриттям вільного файлу призначень.
- time_reopen(n)
- Число секунд очікування перед поновленням розірваного зв'язку.
- use_time_recvd(yes|no)
- Ця змінна використовується тільки для загального розширення, де часове значення спеціального макросу залежить від цієї опції, однак так, як існують окремі макроси для звернення до часової мітки отриманих повідомлень (R_ macros) та часова мітка записаного повідомлення (S_), використання цієї опції не рекомендоване.
ФАЙЛИ
/etc/syslog-ng/syslog-ng.conf
АВТОРСЬКІ ПРАВА
syslog-ng та цей файл є Copyright (c) 1999-2004 BalaBit IT Ltd, частина була розповсюджена Джозефом Педром Олів'єром (Jose Pedro Oliveira).

