найдите - очень полезная команда для поиска каталогов и файлов, поскольку она имеет множество опций для фильтрации поиска по дате, размеру, типу и т. д. Очень мощный инструмент, который можно использовать для множества целей, если он сочетается с конвейерами или с xargs, как мы показали в других руководствах. Например, вы можете удалить все локализованные файлы за один раз.
Он также используется для аудиты выполняется в целях безопасности или системными администраторами. Например, чтобы найти файлы или каталоги с определенными активными разрешениями, что может быть опасно для безопасности. В этом руководстве я специально расскажу о некоторых параметрах, которые, возможно, вы не знали, и которые могут помочь вам найти определенные файлы с очень конкретными разрешениями.
Вы уже знаете, что с -перма вариант вы можете искать файлы / каталоги, у которых есть ряд определенных разрешений. Но, кроме того, вы можете использовать некоторые дополнительные параметры для дальнейшего уточнения или расширения поиска.
Например, представьте, что вы хотите найти файлы или каталоги текущего пути, которые имеют всего разрешений 777 (rwxrwxrwx), что может представлять угрозу безопасности:
<br data-mce-bogus="1"> find . -perm 777<br data-mce-bogus="1">
Это типично, но представьте, что вы хотите найти тех, у кого нет этих разрешений, для этого вы можете использовать -нет:
find . -not -perm 777
Если вы хотите немного расширить поиск и не находить файлы или каталоги с такими конкретными разрешениями, вы можете использовать -. При этом вы укажете, что файлы с "по меньшей мере" эти разрешения или выше (в данном случае не менее 644):
find . -perm -644
Вы также можете искать файлы / каталоги, в которых установлены биты SUID, SGID и липкий бит, которые, как вы знаете, также могут представлять проблемы с безопасностью. Но, конечно, чтобы он мог искать кого угодно, независимо от остальных разрешений (будь то 777, 644 или что-то еще), вы должны использовать / для обхода стандартных разрешений. Для этого можно использовать соответственно:
find . -perm /4000 find . -perm /2000 find . -perm /1000
В этом случае не имеет значения, 4777, 4644 или что-то еще. Он обнаружит всех, у кого этот бит активен.
Наконец, вы также можете использовать эту другую команду, хотя ты должен быть осторожен или вы могли неправильно настроить некоторые файлы, у которых должны быть определенные разрешения. Но если вы знаете, что делаете, вы можете изменить все права доступа к файлам, находящимся с помощью find, на те, которые вам нужны, с помощью одной команды:
find -perm -744 -exec chmod -R 644 {} \;
В этом случае замените все найденные 744 на 644 ...
Будьте первым, чтобы комментировать