Comment le superutilisateur peut-il créer un fichier / répertoire inscriptible pour lui-même?


8

Les utilisateurs normaux peuvent chmodfichiers pour les rendre inaccessibles comme

evgeniy@ubuntu:~$ touch test
evgeniy@ubuntu:~$ chmod 444 test
evgeniy@ubuntu:~$ echo 'test' > test
bash: test: Permission denied

Peut-on simuler quelque chose comme ça pour l'utilisateur root?


J'espère que non, ou je suis sûr de le faire.
Mark Allen

Allez-y et vérifiez la réponse de @ danlefree;)
dolzenko

Réponses:


13

chattr +i *empêchera même le compte root d'apporter des modifications aux fichiers du répertoire (jusqu'à ce qu'il chattr -i *soit exécuté).

Selon les commentaires de Slartibartfast, quelques choses que vous devez savoir sur chattr et l'attribut immuable:

  1. Le bit immuable empêchera un fichier d'être supprimé, renommé, lié ou écrit dans; utiliser lsattrpour afficher les attributs de la même manière lsaffiche la propriété et les autorisations
  2. Vous pouvez empêcher le bit immuable d'être non défini (même par root) en changeant le CAP_LINUX_IMMUTABLEdrapeau - pour ce faire, vous voudrez installer libcap , mais c'est juste un avertissement juste que les capacités sont mal documentées (au mieux)

Il convient de mentionner dans le but d'aider les gens à trouver cette réponse que chattr + i rend le fichier immuable.
Slartibartfast

5

SELinux peut être utilisé pour marquer un fichier comme non inscriptible par root dans le domaine actuel et le rôle utilisateur.


Donner un exemple serait formidable
Jonathan
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.