У меня есть известная хорошая структура каталогов, и я хотел бы сравнить владельца / группу и разрешения с другим сервером и отметить любые файлы / папки, которые необходимо изменить. Поскольку у меня не будет доступа к обоим серверам одновременно, я хотел бы написать сценарий сравнения, чтобы он проходил через каталог и выводил любые неточности в файл.
Был сценарий, который кто-то написал в другом вопросе: find / -type d -printf "chmod% m% p \ n"> reset_perms.sh, который принудительно снизил разрешения. Я бы хотел сравнить и вывести изменения, а не принуждать их.
Вы можете помочь?
Был сценарий кто то писал в другом вопросе: find / -type d -printf "chmod% m% p \ n"> reset_perms.sh, который принудительно снизил разрешения. Я бы хотел сравнить и вывести изменения, а не принуждать их.
Вместо того, чтобы печатать команды для запуска изменений разрешений, просто настройте printf так, чтобы он выдавал uid, gid, mode и fullpath и отправлял вывод в файл. Затем, как упоминалось в womble, используйте diff для сравнения двух файлов.
$find / -printf "%U, %G, %m, %p\n" > permissions.txt
0, 0, 755, /bin
0, 0, 755, /bin/chgrp
0, 0, 755, /bin/tar
0, 0, 755, /bin/dir
0, 0, 777, /bin/sh
0, 0, 777, /bin/pidof
0, 0, 777, /bin/bzless
0, 0, 755, /bin/zgrep
...
Бегать ls -lR
на обоих деревьях, а затем используйте diff для сравнения.
Помощник Advanced Intrusion Detection Environment (AIDE) - это средство проверки целостности файлов для операционных систем UNIX. Его цель - предоставить отчеты о целостности данных в поддерживаемых файловых системах. Запустив AIDE несколько раз на целевом хосте, вы можете определить, какие файлы меняются. Запустив AIDE несколько раз на разных хостах, вы можете определить, какие файлы и разрешения отличаются.
Возможный перебор. Доступны и другие средства проверки целостности файлов.