Контора пише - syslog - замітки bsdельніка; )

Сьогодні ми поговоримо про дуже корисному і важливому додатку - syslog.

Короткий екскурс в історію і довідка:

Syslog був розроблений в 1980 році Еріком Оллманом (Eric Allman) як частина проекту Sendmail, і використовувався спочатку тільки для Sendmail. Зарекомендував себе як стабільний і зручне рішення, Syslog був використаний і в інших додатках, ставши стандартом ведення журналів в системах UNIX та GNU / Linux. Пізніше з'явилися реалізації і під інші операційні системи.

syslog - стандарт відправки повідомлень про події в системі події (логів), що використовується в комп'ютерних мережах, що працюють по протоколу IP.

Протокол syslog простий: відправник посилає коротке текстове повідомлення, розміром менше 1024 байт одержувачу повідомлення. Одержувач при цьому носить ім'я «syslogd», «syslog daemon», або ж, «syslog server». Повідомлення можуть відправлятися як по UDP, так і по TCP. Як правило, таке повідомлення надсилається у відкритому вигляді. Проте, використовуючи спеціальні засоби (такі, як Stunnel, sslio або sslwrap), можливо шифрування повідомлень і відправка їх по SSL / TLS.

Syslog використовується для зручності адміністрування і забезпечення інформаційної безпеки. Він реалізований під безліч платформ і використовується в безлічі пристроїв. Тому, використання syslog дозволяє забезпечити збір інформації з різних місць і зберігання її в єдиному репозиторії.

Командний інтерфейс до syslog - logger.

По суті, syslog - це функція, яка використовується багатьма програмами для запису повідомлень в системний реєстратор повідомлень (syslogd). Демон syslogd читає і виводить повідомлення на системну консоль, в реєстраційні файли (log файли), на інші машини і користувачам відповідно до свого конфігураційним файлом (/etc/syslog.conf).

Це syslog.conf за замовчуванням, що поставляється з FreeBSD:

А це трохи підредагований syslog.conf:


Читання логів дуже корисно і пізнавально і кожен поважаючий себе адміністратор в обов'язковому порядку переглядає логи на предмет підозрілої активності.
Власне кажучи, з метою безпеки рекомендують налаштувати відправку логів на віддалену машину. Зручно це з кількох причин, зокрема - можна збирати логи з декількох серверів на один і потім просмотатрівать їх, а також - якщо сталося щось непрітяное, наприклад, вас зламали - по логам, збережених на віддаленому сервері можна відновити хронологію того, що сталося і відстежити злочинця;)

Налаштовуємо машини з яких будуть надсилатися логи.
Додаємо в /etc/syslog.conf:

Налаштування syslog на сервері для прийому логів з віддалених syslog машин.
Змінюємо /etc/syslog.conf:

# Загальний блок для всіх машин


Виправляємо параметри запуску syslog в /etc/rc.conf ,:
за замовчуванням syslogd_flags = "- s", для деяких syslog потрібно додати -r:

Для забезпечення безпеки потрібно перерахувати хости з яких можна приймати логи
через опцію -a, тобто .:

Але краще прикрити доступ до syslog пакетним фільтром, /etc/rc.firewall:

Ось власне і все :)