Сьогодні ми поговоримо про дуже корисному і важливому додатку - 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:
Ось власне і все :)