- •12.1. Історія створення unix
- •12-2. Архітектура системи
- •12.3. Безпека unix
- •12.3.1. Модель безпеки системи unix
- •12.3.2. Підсистема ідентифікації й автентифікації
- •12.3.3. Підсистема розмежування доступу
- •12.3.4. Підсистема реєстрації
- •12.4. Адміністрування засобів безпеки unix 12.4.1. Особливості адміністрування
- •12.4.2. Утиліти безпеки
- •12.4.3. Характерні вразливості системи unix
12.3.4. Підсистема реєстрації
Система UNIX має розвинену підсистему реєстрації, яку називають syslog. Основу цієї системи становлять програма-демон syslogd та її конфігураційний файл /etc/syslog.conf. Також до складу системи входять бібліотечні програми openlog, syslog, cJoselog, які використовуються для обміну даними з програмою syslogd, а також програма logger. Програми, які використовують систему syslog, записують реєстраційні дані за допомогою системного виклику syslog () у спеціальний
Іфайл /dev/log. У деяких системах є також файл пристрою /dev/klog, з якого система syslog читає повідомлення ядра операційної системи. Файл /etc/syslog.conf має дуже простий формат. Це текстовий файл (як і переважна більшість конфігураційних файлів UNIX), кожний рядок якого має два поля, розділених знаком табуляції. Перше поле — це список селекторів (Selector), що вказує, яких подій стосується цей рядок. Селектор визначає тип події за двома ознаками: підсистеми (Facility), що надсилає інформацію про подію, та рівня критичності події. I підсистему (наприклад, mail — система електронної пошти, kern ~ ядро), і рівень (наприклад, info, warning, alert) задають визначеними ключовими словами, які складають дуже невеликий список. У сучасних реалізаціях syslog крім визначених підсистем можна також вказувати програму, яка генерує повідомлення про події.
Друге поле визначає дію, яку слід виконати для визначеної селектором події. Найчастіше в цьому полі зазначається ім'я файлу (журналу реєстрації), до якого слід зробити запис. Також можна задавати ідентифікатор користувача, якого слід повідомляти про подію, або мережне ім'я віддаленого комп'ютера, на який слід переслати цю інформадаю (при цьому повідомлення надсилається системі реєстрації syslog, що має функціонувати на віддаленому комп'ютері).
Файли системних журналів реєстрації можуть бути розміщені в різних місцях, 'ix місцезнаходження легко визначити з конфігураційного файлу /etc/syslog.conf. Типове місце розташування журналів реєстрації — /var^og. Перевагою syslog є її гнучкість. Система дає змогу легко встановлювати централізований сервер реєстрації подій у мережі, що значно підвищує її безпеку: навіть якщо порушник скомпрометував окрему систему і має можливість видалити з неї усі важливі записи журналів реєстрації, він не зможе видалити такі записи з віддаленого сервера.
Система syslog надає всім програмам зручний механізм реєстрації системних подій. Якщо програма вносить зміни до конфігураційного файлу, вона має змусити syslogd перечитати конфігураційний файл, щоб зміни вступили в дію. 3 цією метою процесу syslogd необхідно надіслати сигнал HUP, длячого потрібен ідентифікатор цього процесу. Такий ідентифікатор міститься у файлі /efcc/syslog.pid (длядеяких систем - у файлі /var/run/syslog.pid). Є програми, що нехтують системою syslog, встановлюючи власні правила реєстрації подій та файли реєстрації.
Окрім syslog, у деяких системах (наприклад, Solaris) є окрема система реєстрації невдалих спроб завантаження системи (файл /var/adm/loginlog), система реєстрації спроб su (файл /var/adm/sulog), а також система реєстрації подій вхо-ду-виходу користувачів (файл /var/adm/wtmp, команда last).
