5 Commandes 'Chattr' pour rendre les fichiers importants immuables (immuables) dans Linux

5 Commandes 'Chattr' pour rendre les fichiers importants immuables (immuables) dans Linux

bavard (Modifier l'attribut) est un utilitaire Linux de ligne de commande qui est utilisé pour définir / unfet certains attributs à un fichier dans le système Linux pour sécuriser la suppression accidentelle ou la modification des fichiers et dossiers importants, même si vous êtes connecté en tant qu'utilisateur.

Dans Linux Native FileSystems I.e. ext2, ext3, ext4, btrfs, etc. prend en charge tous les drapeaux, bien que tous les drapeaux ne prennent pas en charge à tous les FS non indigènes. On ne peut pas supprimer ou modifier le fichier / dossier une fois que les attributs sont définis avec la commande chattr, même si l'on a des autorisations complètes.

5 Exemples de commande Chattr

Ceci est très utile pour définir des attributs dans des fichiers système comme les fichiers PASSWD et l'ombre dans lesquels les informations de l'utilisateur sont contenues.

Syntaxe de Chattr
# chattr [opérateur] [Flags] [nom de fichier] 
Attributs et drapeaux

Voici la liste des attributs communs et les drapeaux associés peuvent être définis / non set à l'aide de la commande chattr.

  1. Si un fichier est accessible avec 'UN'Ensemble d'attributs, son enregistrement Atime n'est pas mis à jour.
  2. Si un fichier est modifié avec 'S'Ensemble d'attributs, les modifications sont des mises à jour de manière synchrone sur le disque.
  3. Un fichier est défini avec 'un'Attribut, ne peut être ouvert qu'en mode annexe pour l'écriture.
  4. Un fichier est défini avec 'je«attribut, ne peut pas être modifié (immuable). Signifie pas de changement de nom, pas de création de liens symboliques, pas d'exécution, pas d'écrivain, seul le superutilisateur peut under l'attribut.
  5. Un fichier avec le 'J'L'attribut est défini, toutes ses informations sont mises à jour dans le journal EXT3 avant d'être mis à jour dans le fichier lui-même.
  6. Un fichier est défini avec 't'Attribut, pas de fusion de queue.
  7. Un fichier avec l'attribut 'd', ne sera plus candidat à la sauvegarde lorsque le processus de vidage sera exécuté.
  8. Quand un fichier a 'u«L'attribut est supprimé, ses données sont enregistrées. Cela permet à l'utilisateur de demander sa sous-prétention.
Opérateur
  1. + : Ajoute l'attribut à l'attribut existant des fichiers.
  2. - : Supprime l'attribut à l'attribut existant des fichiers.
  3. = : Garder les attributs existants que les fichiers ont.

Ici, nous allons démontrer certains des exemples de commande ChatTr pour définir / unfet des attributs à un fichier et des dossiers.

1. Comment ajouter des attributs sur les fichiers à sécuriser à partir de la suppression

À des fins de démonstration, nous avons utilisé un dossier démo et déposer IMPORTANT_FILE.confli respectivement. Avant de configurer les attributs, assurez-vous de vérifier que les fichiers existants ont des attributs définis à l'aide de la commande 'ls -l'. Avez-vous vu les résultats, actuellement aucun attribut n'est défini.

[[Protégé par e-mail] Tecmint] # ls -l total 0 drwxr-xr-x. 2 racine racine 6 août 31 18:02 Demo -rwxrwxrwx. 1 racine racine 0 août 31 17:42 IMPORTANT_FILE.confli 

Pour définir l'attribut, nous utilisons le + signe et pour utiliser l'utilisation du - Signer avec la commande chattr. Alors, définissons un bit immuable sur les fichiers avec +je Facteurs pour empêcher quiconque de supprimer un fichier, même un utilisateur racine n'a pas la permission de le supprimer.

[[Protégé par e-mail] Tecmint] # Chattr + I Demo / [[Email Protected] Tecmint] # Chattr + I IMPORTANT_FILE.confli 

Note: Le bit immuable +je ne peut être défini que par SuperUser (je.e root) L'utilisateur ou un utilisateur avec les privilèges sudo peut régler.

Après avoir réglé un bit immuable, vérifions l'attribut avec la commande 'lsattr'.

[[e-mail protégé] Tecmint] # lsattr ---- i----------- ./ démo ---- i----------- ./ IMPORTANT_FILE.confli 

Maintenant, j'ai essayé de supprimer avec force, de renommer ou de modifier les autorisations, mais cela n'aura pas permis de dire "Opération non autorisée".

[[Protégé par e-mail] Tecmint] # RM -RF Demo / RM: Impossible de supprimer ÂDemo / Â: Opération non autorisée 
[[Protégé par e-mail] Tecmint] # MV Demo / Demo_Alter MV: Impossible de déplacer ÂDemo / Â à ÂDEMO_ALTERâ: l'opération n'est pas autorisée 
[[Protégé par e-mail] Tecmint] # CHMOD 755 IMPORTANT_FILE.conf Chmod: modification des autorisations de ÂIMPORTANT_FILE.Confâ: l'opération non autorisée 

2. Comment unsert l'attribut sur les fichiers

Dans l'exemple ci-dessus, nous avons vu comment définir l'attribut pour sécuriser et empêcher les fichiers d'une suppression accidentelle, ici dans cet exemple, nous verrons comment réinitialiser les autorisations (attribut unset) et permet de rendre un fichier modifiable ou modifiable en utilisant -je drapeau.

[[Protégé par e-mail] Tecmint] # Chattr -i Demo / IMPORTANT_FILE.confli 

Après avoir réinitialisé les autorisations, vérifiez le statut immuable des fichiers à l'aide de 'lsattr' commande.

[[Protégé par e-mail] Tecmint] # lsattr ---------------- ./ démo ---------------- ./ IMPORTANT_FILE.confli 

Vous voyez dans les résultats ci-dessus que le '-je'Flag supprimé, cela signifie que vous pouvez supprimer en toute sécurité tout le fichier et le dossier résident dans le dossier Tecmint.

[[Protégé par e-mail] tecmint] # rm -rf * [[e-mail protégé] tecmint] # ls -l total 0 

3. Comment sécuriser / etc / passwd et / etc / fichiers shadow

Définition d'attribut immuable sur les fichiers / etc / passwd ou / etc / ombre, les fait sécuriser à partir d'un retrait accidentel ou d'un tel.

[[Protégé par e-mail] Tecmint] # chattr + i / etc / passwd [[e-mail protégé] tecmint] # chattr + i / etc / shadow 

Essayez maintenant de créer un nouvel utilisateur système, vous obtiendrez un message d'erreur disant 'Impossible d'ouvrir / etc / passwd'.

[[Protégé par e-mail] Tecmint] # UserAdd Tecmint userAdd: Impossible d'ouvrir / etc / passwd 

De cette façon, vous pouvez définir des autorisations immuables sur vos fichiers importants ou vos fichiers de configuration système pour empêcher la suppression.

4. Ajouter les données sans modifier les données existantes sur un fichier

Supposons que vous ne souhaitez permettre à chacun de simplement ajouter des données sur un fichier sans modifier ou modifier des données déjà entrées, vous pouvez utiliser le 'un'Attribut comme suit.

[[Protégé par e-mail] Tecmint] # Chattr + un exemple.txt [[e-mail protégé] tecmint] # Exemple lsattr.TXT ----- A ---------- Exemple.SMS 

Après la définition du mode annexe, le fichier peut être ouvert pour écrire des données en mode annexe uniquement. Vous pouvez non-ne décoller l'attribut APPENDE comme suit.

[[Protégé par e-mail] Tecmint] # Chattr -a Exemple.SMS 

Essayez maintenant de remplacer le contenu déjà existant sur un fichier exemple.SMS, Vous obtiendrez une erreur en disant 'Opération non autorisée'.

[[e-mail protégé] Tecmint] # echo "Remplacer contenir dans le fichier."> Exemple.TXT -BASH: Exemple.txt: l'opération non autorisée 

Essayez maintenant d'ajouter un nouveau contenu sur un fichier existant exemple.SMS et le vérifier.

[[e-mail protégé] Tecmint] # echo "Remplacer contenir dans le fichier.">> Exemple.SMS 
[[Protégé par e-mail] Tecmint] # Exemple de chat.txt voici l'exemple pour tester uniquement "un 'attribut. Remplacer contenu dans le fichier. 

5. Comment sécuriser les répertoires

Pour sécuriser le répertoire entier et ses fichiers, nous utilisons '-R'(Recursivement) Commutation avec'+je'drapeau avec le chemin complet du dossier.

[[e-mail protégé] Tecmint] # Chattr -r + I MyFolder 

Après avoir réglé un attribut récursivement, essayez de supprimer le dossier et ses fichiers.

[[Protégé par e-mail] Tecmint] # RM -RF MyFolder / RM: Impossible de supprimer 'MyFolder /': Opération non autorisée 

Pour non pas la permission, nous utilisons le même commutateur «-r» (récursivement) avec un drapeau «-i» avec le chemin complet du dossier.

[[Protégé par e-mail] Tecmint] # Chattr -r -i Myfolder 

C'est ça! Pour en savoir plus sur les attributs de commande Chattr, les drapeaux et les options utilisent les pages de l'homme.