Если у вас нет чрезвычайно необычных политик ведения журналов, кто получил доступ к тому, что файл не зарегистрирован (это было бы огромное количество информации). Вы можете узнать, кто был зарегистрирован в какое время в системных журналах; Эта last
команда отображает историю входа и другие журналы, такие как /var/log/auth.log
рассказывает, как пользователи проходили аутентификацию и откуда они вошли (какой терминал или какой хост удаленно).
Дата, когда файл был прочитан в последний раз, называется временем доступа, или для краткости atime . Все файловые системы Unix могут хранить его, но многие системы не записывают его, потому что он имеет (как правило, небольшое) снижение производительности. ls -ltu /path/to/file
или stat /path/to/file
показывает время доступа к файлу.
Если пользователь получил доступ к файлу и не пытался скрыть свои треки, его история оболочки (например ~/.bash_history
) может иметь подсказки.
Чтобы узнать, что или у кого есть файл, открытый сейчас, используйте lsof /path/to/file
.
Чтобы записать, что произойдет с файлом в будущем, есть несколько способов:
Используйте inotifywait . inotifywait -e access /path/to
напечатает строку, /path/to/ ACCESS file
когда кто-то читает file
. Этот интерфейс не скажет вам, кто получил доступ к файлу; Вы можете позвонить, lsof /path/to/file
как только появится эта линия, но есть условие гонки (доступ может быть прекращен к тому времени, когда lsof начнет работу).
LoggedFS - это наращиваемая файловая система, которая обеспечивает представление дерева файловой системы и может выполнять более сложные записи всех обращений через это представление. Чтобы настроить его, см. Синтаксис файла конфигурации LoggedFS .
Вы можете использовать подсистему аудита Linux для регистрации большого количества вещей, включая доступ к файловой системе. Убедитесь, что auditd
демон запущен, затем настройте то, с чем вы хотите войти auditctl
. Каждая регистрируемая операция записывается в /var/log/audit/audit.log
(в типичных распределениях). Чтобы начать просмотр определенного файла:
auditctl -w /path/to/file
Если вы помещаете наблюдение в каталог, рекурсивно также просматриваются файлы в нем и его подкаталогах.