Я хотел бы узнать, могу ли я запретить пользователю root удалять файл. Это возможно?
решение1
Нет, это невозможно. Вы можете установить атрибут immutable с помощью chattr +i
, что по крайней мере сделает раздражающим и неочевидным то, что нужно сделать, чтобы разрешить запись в файл, но они могут просто снять его снова. Кроме того, ваша файловая система должна поддерживать это и иметь включенную функциональность.
SELinux также может накладывать некоторые ограничения, но, опять же, их можно отключить.
Лучшим решением будет должным образом контролировать пользователей и программы, ограничивая их доступ и не позволяя им работать с правами root без крайней необходимости.
решение2
Как уже говорили другие, в целом, идея root заключается в том, что пользователю разрешено заставлять машину делать все, что она может делать. Поэтому нет простого флага, который может помешать rootнамеренноудаление файла ( chattr +i
может предотвратитьслучайныйудаление).
Но, несмотря на это, есть несколько решений:
- Поместите файл на файловый сервер и настройте файловый сервер так, чтобы он не позволял удалять. Это работает, потому что локальный root не является root на файловом сервере.
- Положите файл наЧЕРВЬноситель. Это работает, потому что оборудование не допускает перезапись, поэтому данные защищены. (Перезапись — это не то, что может сделать машина.) Дешевые варианты — CD-R и DVD-R. Убедитесь, что ваш привод действительно не может перезаписывать (уничтожать) уже записанные разделы. Также есть карты WORM SD.
решение3
Нет.
Любой пользователь с привилегиями «sudo» или пользователь root может видеть и удалять все.
Однако в идеальной системе вам не придется об этом беспокоиться, поскольку только один пользователь имеет суперпривилегии, и он будет использовать их только при необходимости и всегда оперативно.
решение4
Это возможно при совершенно особых обстоятельствах:
Вы можете отключить USB-накопитель, на котором происходит изменение, или отключить кабель Ethernet между компьютером и NAS. Но есть вероятность, что файл будет поврежден или останется недоступным, или и то, и другое.
Помимо аппаратных мер, вы можете восстановить файл из предыдущей резервной копии.