LINUX.ORG.RU
ФорумAdmin

Как вы обновляете /etc и мониторите /var/log?

 , ,


0

1

/etc

Системные файлы настроек у меня лежат отдельно в ~/Desktop/rootfs, т.е. в директории rootfs они хранятся с соблюдением всей иеархии путей, нужными правами, владельцами. Причем, там не только /etc, а еще /srv и /usr/local (в будущем возможно что-то еще появится). Когда мне надо изменить настройки, я лезу в rootfs, изменяю настройки там, а затем «синкаю» с / (корнем):

# cp -a /home/spoofing/Desktop/rootfs/* /
Необходимо это на случай, чтобы всегда знать какие конфиги я использую в системе, чтоб если придет время переустанавливать систему, или менять дистрибутив на другой, или просто перенести настройки куда-то, да и просто бекап в конце концов.
Сделано это по аналогии с сайтом, когда вы сперва пишите его на локалхосте, а только затем уже заливаете на сервер.

Вопрос: все ли делаю правильно, как делаете вы?

/var/log

Мне диковато, что не применяется практика (или я такого не встречал еще) реал-тайм мониторинга логов. Т.е. какой от них может быть толк, если кто-то уже взломал и проник в систему, и может делать что угодно? Для предотвращения этого я хочу иметь возможность даже не спустя час по крону получать отчет по логам, а именно что реал-тайм.

С этой целью планирую сделать как-то так:

# tail -f /var/log/daemon-name.log | скрипт
и свой скрипт будет грепать логи на предмет подозрительных, не стандартных сообщений сервиса (кто-то пытается применить xss/sql-инъекцию на сайте и т.д.).

Вопрос: может есть другие уже готовые средства для мониторинга? И как такое проделать с systemd?

journalctl --no-pager | tail
быстро завершает работу. И как выводить journalctl коньками на рабочий стол (или что вместо коньков для этого лучше)? Блин, да зачем эти логи нужны, чтобы если их прочитать - надо станцевать. :/

Пока у меня недостаточно скиллов, чтобы настроить безопасную систему, но я к этому иду. А постоянно читать логи - никогда не будет лишним.

systemd

Пока systemd еще не изучено мной до конца, я решил создать отдельный раздел с /usr/local, где уже буду делать хочу сам, а не подстраиваться под систему. Пускай, дистрибутив линукса живет своей жизнью, я в ~ и /usr/local буду жить своей, не зависимо от какого-то дистрибутива вообще.
Поэтому я в /usr/local устанавливаю в chroot'ах все демоны, что смотрят во внешку, там же лежит собственная «система инициализации» (просто скрипты для stop/start daemon-name).

Соц. опрос: а вы что-нибудь подобное сделали у себя? Чтобы не зависить от новых ломающих обновлений и вообще любого дистрибутива в целом.

★★★★★

journalctl

sudo journalctl -f

Повесил на 8-й рабочий стол вывод всех нужных логов.

С конфигами не заморачивался, обычная помойка в /etc/, которая бэкапится автоматически. В /usr/local ничего не ставлю, при разработке собираю софт в ~/builds/, а при использовнаии — опакечивая штатными средствами дистрибутива.

geekless ★★
()

Лучше в снежки поиграть сходи.

Потом, со свежей головой узнаешь про dcvs/pull/push настроек. @host в syslog , и все будет гуд

APM
()

мониторинг логов - это, наверное, ossec?

fbiagent ★★★
()

поставь заббикс и мониторь себе все что надо.

MikeDM ★★★★★
()

как делаете вы?

Мы используем etckeeper.

мониторинг логов
tail -f

Громкий смех в зале.

anonymous
()
Ответ на: комментарий от HolyBoy

Читать в man'е разницу между ключами -f и -F.

Боюсь, что тот господин имел ввиду совсем не это.

anonymous
()
Ответ на: комментарий от anonymous

Это понятно. Но мало ли, вдруг человек владеет техникой скорочтения, а вот ключи — это уже техническая ошибка.

HolyBoy
()

etckeeper попробуй и systemd-nspawn, велосипедостроитель :)

Lennart
()
Ответ на: комментарий от Spoofing

Если ты будешь читать логи в реалтайме - когда ты будешь работать? Поставь уже хотя бы logwatch.

leave ★★★★★
()
Ответ на: комментарий от fbiagent

У меня и так tail транслирует логи локалхоста на одном из воркспейсов.

geekless ★★
()

Git для /etc + какой-нибудь gitg еще можно (для удобного просмотра изменений и файлов в git'е)

Сам не проверял, но для переноса достаточно скопировать /etc/.git на новую машинку и выполнить git checkout -f

По второму вопросу нечего сказать.

Black_Roland ★★★★
()
Последнее исправление: Black_Roland (всего исправлений: 1)
Ответ на: комментарий от geekless

Ну ТС зачем-то хочет на локалхосте логи nginx читать в реалтайме. Один раз в полгода почитать мессаджес - не в счет.

leave ★★★★★
()
Ответ на: комментарий от leave

Только хочу знать, как это сделать лучше. Нет, сам я не собирался читать каждую строку из лога. Но будет написан скрипт, который отображает только подозрительные сообщения, и информировать меня о них каким-либо образом. Вопрос лишь в том, как направить вывод логов на какую-то программу (скрипт).
Хм... может писать логи в fifo, и оттуда уже читать чем угодно (cat, read).

Spoofing ★★★★★
() автор топика

«Мониторить логи» - это неправильный подход. Нужно мониторить сами сервисы. Как и советовали выше, ставь zabbix.

dbzer0
()

Если локалхост, то логи можно мониторить logcheck'ом. Если серверов много, то OSSEC

moot ★★★★
()
Ответ на: комментарий от Spoofing

Ты сейчас пытаешься переизобрести то, что уже работает. Фильтрация и отправка особо критичных сообщений выделенным пользователям, или на почту, или куда-то ещё уже давно реализована.

http://www.softpanorama.org/Logs/Syslog/syslog_configuration_examples.shtml

alpha ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.