Titre un peu racolleur , je l’avoue :-). Mais oui c’est possible d’empêcher le superutilisateur root de supprimer un fichier ou un dossier. Il a beau posséder les droits et la propriété , rien n’y fera face à cette commande.
De base, un fichier possède des droits de lecture, d’écriture , d’exécution. Mais il existe des attributs supplémentaires et un peu moins connus.
Comment faire ?
En fait l’astuce se situe au niveau de l‘attribut étendu d’un fichier. L’attribut « i » comme « immuable » ou « immutable » en anglish.
Seul root peut ajouter et retirer cet attribut de cette manière:
- rendre immuable un fichier
sudo chattr +i <fichier ou repertoire>
- enlever l’attribut immuable d’ un fichier
sudo chattr –i <fichier ou repertoire>
- voir les droits étendus d’un fichier
lsattr <fichier ou repertoire>
Remarque: Un autre attribut étendu bien pratique est le « append only » qui permet de ne modifier qu’en ajoutant et sans supprimer les infos déja contenues.
chattr -a /var/log/secure
Quelle est l’utilité de faire ça?
Bah ouais quoi quand je passe en root , c’est pas pour me retrouver limité dans mes « superpouvoirs ».
Certes, mais parfois les enchaînements de lignes de commandes peuvent entraîner des erreur de manipulations. Un chemin relatif mal apprécié et bim la commande « rm » exécutée au mauvais endroit supprime le mauvais fichier.
Et bien justement, rendre un fichier ou un dossier immuable peut être une bonne précaution à prendre .
Exemples
Des fichiers de conf non appelés à évoluer dans l’immédia, des fichiers logs etc…
Leave a Reply