Я управляю несколькими Linux-серверами для клиентов в нескольких ролях, таких как электронная почта, кэширование, веб-обслуживание, фильтрация, межсетевой экран / маршрутизация и так далее.
Поскольку я не владею этими компьютерами и просто предоставляю удаленную поддержку, системы централизованного управления, такие как Puppet, не кажутся правильным инструментом. (Пожалуйста, поправьте меня, если вы думаете, что я ошибаюсь по поводу этого предположения)
Какие инструменты вы рекомендуете отслеживать изменения файлов конфигурации, установки пакетов и т. Д.?
Я думаю, что-то вроде etckeeper может быть рядом с тем, что мне нужно, но я хочу знать, есть ли что-то лучше.
Обновить
У нас будут резервные копии систем, и я не ожидаю, что этот тип инструмента будет альтернативой резервному копированию. Речь идет о том, чтобы отслеживать изменения конфигурации и иметь систему, чтобы знать, что изменилось, когда, кем и, надеюсь, почему.
источник
Ответы:
У меня есть etckeeper на моей личной рабочей станции, но мне еще не приходилось с этим много работать (кроме того, что он отслеживал все мои изменения). Похоже, что он делает разумную работу, чтобы убедиться, что вы, по крайней мере, знаете, что теребили.
Я бы не стал списывать Puppet как решение - если вы несете ответственность за обслуживание некоторых служб на компьютере, то система, которая гарантирует, что если кто-то покажет ваши настройки, они вернутся так, как вы этого хотите. это находка
С другой стороны, если другие регулярно вносят изменения (а они обычно не облажаются), вам, возможно, придется прибегнуть к простому отслеживанию действий других людей для последующего аварийного восстановления. Не забывайте, что все будет меняться повсюду, поэтому лучше использовать инструмент для контрольных точек с полной машиной. Возможно, я бы даже подумал о том, чтобы создать на нем инкрементное резервное копирование на весь диск (например, rdiff-backup или что-то в этом роде), чтобы убедиться, что вы отслеживаете все (возможно, удаление / home и другие области уровня пользователя из резервной копии, если вы просто хотите отслеживать административные изменения).
источник
Вы можете посмотреть на Tripwire или AIDE
Оба будут отслеживать изменения файла конфигурации на ваших машинах.
источник
Я посмотрел на 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
и все остальное, что характерно для ваших клиентов).источник
В качестве отправной точки вы, возможно, захотите взглянуть на Blueprint , который анализирует конфигурацию системы. Хотя он предназначен для создания конфигураций для Puppet или Chef, нет причин, по которым вы не могли бы использовать его только для отчетов.
источник
Простым скриптом для мониторинга файлов является filemon. Я использую его на своем домашнем ПК, и в сочетании с crontab он делает простую и легкую работу. Для более сложного решения проверки целостности (изменения файлов, новые пакеты установлены и многие другие) я использую OSSEC на нескольких серверах.
источник
Вы можете поместить / etc под dvcs, такие как git. Вы выполняете коммит каждый раз, когда вносите изменения, а затем вы можете просто использовать git diff всякий раз, когда начинаете работу, и вам будут показаны все изменения.
источник
LBackup поддерживает регистрацию удаления, модификации и добавления файлов.
источник