Description
Dans la continuité de mon article précédent
Durcir Linux : modifier le partitionnement
il est une commande intéressante à utiliser : chattr
Cet outil permet de modifier les attributs de fichiers, répertoires.
Il existe une option qui est fortement pratique : l’option i
- dont le
but est de rendre figé, immuable l’état d’un fichier, ou répertoire et
d’interdire toute modification ultérieure, même par l’administrateur système,
généralement nommé root
.
Les répertoires à protéger, tout particulièrement, sont :
/bin
,/boot
,/etc
,/usr
,/root
,/sbin
,- ainsi que les fichiers liés à :
/initrd
,/lib
,/lib64
,/vmlinuz
⇒ Pour protéger/figer/rendre immuable, un petit coup de commande :
chattr -R +i /bin /boot /etc /usr /root /sbin /lib* /initrd* /vmlinuz* 2> /dev/null
chattr -R -i /etc/adjtime /etc/blkid.tab /etc/mtab /etc/network/run /etc/udev/rules.d 2> /dev/null
⇒ Pour enlever l’option i
sur lesdits répertoires et fichiers, en question,
il suffit d’écrire la commande ainsi :
chattr -R -i /boot /usr /bin /sbin /lib* /root /vmlinuz* /initrd* /etc 2> /dev/null
Mise en garde
Tout outil nécessitant une modification système, comme par exemple visudo, ou les outils de gestion de paquets, tels que ceux ci-dessous, impose la gymnastique de rendre muable avant leur usage, et d’avoir le réflexe de figer en suivant !
N’oubliez pas que si le système vous refuse l’action, c’est que vous avez probablement figer l’état de différents binaires. ;-)
apt, dpkg, synaptic
Ces commandes peuvent être insérées dans un script, pour vous faciliter
la vie, et mieux, aussi vous devriez les intégrer à votre script de gestion
apt
.
Si jamais vous avez la bonne idée d’abuser de cette commande, veuillez comprendre absolument qu’avec les outils apt, dpkg, synaptic, - et très certainement, tout outil gérant l’installation logicielle -, il vous faudra :
- utiliser l’option
-i
; - utilisez l’outil d’installation logiciel,
- et veillez à remettre l’option
+i
en suivant…
Vous êtes avertis, autrement vous seriez surpris par quelques dysfonctionnements.
Utilisation
Dans le fichier /etc/apt/apt.conf.d/00apt
, ajouter :
- en première ligne, dans l’invocation pre, un appel vers le script ci-dessous,
tel que :
DPkg::Pre-Invoke{
"/repertoire/chattr_sys 0";
(…)
}
- et, en dernière ligne, dans l’invocation post :
DPkg::Post-Invoke {
(…)
"/repertoire/chattr_sys 1";
}
Script shell
Fichier : chattr_sys
|
|
Vous pouvez retrouver la dernière version de ce script sur mon gitlab !
Documentation
Manpage
- un coup de manpage, vous renseignera encore plus profondément :
$ man chattr