Назад | Перейти на главную страницу

Какой инструмент вы рекомендуете для отслеживания изменений на сервере Linux / Unix

Я управляю несколькими серверами Linux для клиентов в нескольких ролях, таких как электронная почта, кеширование, веб-обслуживание, фильтрация, брандмауэр / маршрутизация и так далее.

Поскольку я не владею этими компьютерами и просто обеспечиваю удаленную поддержку, системы централизованного управления, такие как Puppet, не кажутся подходящими инструментами. (Пожалуйста, поправьте меня, если вы думаете, что я ошибаюсь в этом предположении)

Какие инструменты вы рекомендуете для отслеживания изменений файлов конфигурации, установки пакетов и т. Д.?

Я думаю что-то вроде etckeeper может быть рядом с тем, что мне нужно, но я хочу знать, есть ли что-нибудь получше.


Обновить

У нас будут резервные копии систем, и я бы не ожидал, что этот тип инструмента станет альтернативой резервному копированию. Речь идет об отслеживании изменений конфигурации и наличии системы, чтобы знать, что изменилось, когда, кем и, надеюсь, почему.

У меня есть etckeeper на моей персональной рабочей станции, но мне пока не приходилось особо с ним делать (кроме как отслеживать все мои изменения). Похоже, он делает разумную работу по тому, чтобы вы, по крайней мере, знали, с чем возились.

Я бы не стал списывать со счетов Puppet как решение - пока вы несете ответственность за обслуживание некоторых сервисов на машине, тогда система, которая гарантирует, что если кто-то покачивает вашу конфигурацию, она вернется так, как вы этого хотите. находка.

С другой стороны, если другие вносят изменения регулярно (а они обычно не портят это), вам, возможно, придется прибегнуть к простому отслеживанию того, что сделали другие люди, для последующего аварийного восстановления. Не забывайте, что все будет меняться повсюду, поэтому инструмент контрольной точки, работающий на всей машине, может быть лучше. Я бы, возможно, даже подумал о том, чтобы сделать на нем инкрементное резервное копирование всего диска (например, rdiff-backup или что-то в этом роде), чтобы быть уверенным, что вы отслеживаете все (возможно, drop / home и другие области пользовательского уровня из резервной копии, если вы просто хотите для отслеживания административных изменений).

Вы можете посмотреть на Tripwire или Помощник

Оба будут отслеживать изменения файла конфигурации на ваших машинах.

Я смотрел etckeeper, но не использовал. Однако я использовал Changetrack. Я использую его на всех своих домашних машинах в течение многих лет, и на моей предыдущей работе он был частью нашей стандартной установки сервера. Мы использовали его там последние пять лет и установили примерно на 200 ящиках.

Настройка тривиальна (я создал для нее RPM на последней работе), и настройка действительно проста. Обычно я настраиваю его для отслеживания всего / etc /.

Для отслеживания изменений пакетов (установки, обновления и т. Д.) В системах на основе RPM, если все изменения выполняются с yum или yumex, каждое изменение пакета регистрируется /var/log/yum.log.

Другие люди уже ответили на отслеживание изменений в /etc. Не забывайте, что вы также хотите отслеживать изменения конфигурации bind которые частично находятся в /var (по крайней мере, во многих дистрибутивах Linux) и что веб-страницы находятся под /var/www во многих дистрибутивах Linux. Снаружи будут каталоги /etc с важной информацией о конфигурации.

В зависимости от того, как все управляется, вы также можете отслеживать /usr/local/etc и другие деревья каталогов (/opt, некоторые деревья под /var, и все, что относится к вашим клиентам).

В качестве отправной точки вы можете посмотреть на Чертеж, который анализирует конфигурацию системы. Хотя он предназначен для создания конфигураций для Puppet или Chef, нет причин, по которым вы не можете использовать его только для отчетов.

Простой скрипт мониторинга файлов Filemon . Я использую его на своем домашнем ПК, и в сочетании с crontab он выполняет простую и легкую работу. Для более сложного решения проверки целостности (изменение файлов, установка новых пакетов и многое другое) я использую OSSEC на кучу серверов.

Вы можете поместить / etc под dvcs, например git. Вы будете фиксировать каждый раз, когда вносите изменения, а затем вы можете просто git diff всякий раз, когда начинаете работу, и вам будут показаны все изменения.

LBackup имеет поддержку для регистрации удаления, изменения и добавления файлов.