Есть ли способ собрать изменения конфигурации системы после установки?
В моей попытке заменить сервер Linux, который был установлен несколько лет назад, я понял, что никто не знает точно, что было установлено / настроено с тех пор. Единственное, что у меня есть в git
это определения сайтов nginx
Какие варианты у меня есть, чтобы сравнить работающий сервер с чистой установкой?
Я бы хотел использовать Ansible для управления версионными конфигурациями, но до этого мне нужно получить информацию об установленных сервисах и их файлах конфигурации, правилах брандмауэра, пользователях / группах, ключах ssh, настройке доменов и т. Д. Я даже не знаю, что делать думать о. Я вижу /data
папка, так что это просто, но это держит www
данные, данные эластичного поиска и nodejs
приложения, что означает, что есть node
установлены, pm2
и эластичный поиск. Я обнаружил следы установки Jenkins, но она не работает. Я вижу сервис fail2ban, поэтому его тоже нужно перенести.
Есть ли способ увидеть, что изменилось с момента первоначальной настройки? Я хотел бы заменить эту Ubuntu 14.04 на чистую 16.04, используя Plays книги Ansible, чтобы избежать такого хаоса, возможно, также докеризировать некоторые сервисы, сохраняя при этом текущую функциональность.
2 ответа
Прежде всего: я рекомендую начинать с чистого листа.
Определите службы, которые все еще используются, из журналов или из опросов пользователей, изолируйте их конфигурацию и установите их в новом окне.
Не тратьте свое время на копание истории этой коробки.
Обращаясь к вашему вопросу более подробно:
Вы можете получить некоторую информацию о том, что было изменено в вашей системе из ваших журналов, но эта информация, безусловно, неполная.
В зависимости от того, как установлен ящик, могут помочь корневые каталоги.bash_history, /var/log/apt.log и /var/log/audit/audit.log, но они могут дать только подсказки, которые не дадут вам полной информации.
dpkg -V даст вам представление о том, какие файлы конфигурации системных пакетов были изменены.
Если и старая, и новая система используют менеджеры пакетов, возьмите их результаты и сравните их. Таким образом, вы увидите, какие дополнительные пакеты находятся на старом сервере.
Однако, если установлено какое-либо программное обеспечение, которое не установлено с помощью менеджеров пакетов, необходимо выполнить сравнение содержимого на уровне файловой системы.
Там вы монтируете старую файловую систему и чистую установку файловой системы на одном сервере, а затем запускаете diff -b
Команда, чтобы показать различия в каталогах. Это будет генерировать много продукции.