6.5. Modification du niveau d'habilitation d'un utilisateur dans la plage de sécurité définie dans MLS
En tant qu'utilisateur du système de sécurité multiniveaux (MLS), vous pouvez modifier votre niveau d'habilitation actuel à l'intérieur de la fourchette qui vous a été attribuée par l'administrateur. Vous ne pouvez jamais dépasser la limite supérieure de votre fourchette ni réduire votre niveau en dessous de la limite inférieure de votre fourchette. Cela vous permet, par exemple, de modifier des fichiers moins sensibles sans augmenter leur niveau de sensibilité jusqu'à votre niveau d'habilitation le plus élevé.
Par exemple, en tant qu'utilisateur affecté à la plage s1-s3
:
-
Vous pouvez passer aux niveaux
s1
,s2
, ets3
. -
Vous pouvez passer aux plages
s1-s2
, ets2-s3
. -
Vous ne pouvez pas passer aux plages
s0-s3
ous1-s4
.
Le passage à un niveau différent ouvre un nouveau shell avec un niveau d'autorisation différent. Cela signifie que vous ne pouvez pas revenir à votre niveau d'habilitation initial de la même manière que si vous le diminuiez. Cependant, vous pouvez toujours revenir au shell précédent en entrant exit
.
Conditions préalables
-
La politique SELinux est définie sur
mls
. -
Le mode SELinux est défini sur
enforcing
. - Vous pouvez vous connecter en tant qu'utilisateur assigné à une série de niveaux d'habilitation MLS.
Procédure
Se connecter en tant qu'utilisateur à partir d'un terminal sécurisé.
NoteLes terminaux sécurisés sont définis dans le fichier
/etc/selinux/mls/contexts/securetty_types
. Par défaut, la console est un terminal sécurisé, mais pas SSH.Vérifier le contexte de sécurité de l'utilisateur actuel :
$ id -Z user_u:user_r:user_t:s0-s2
Dans cet exemple, l'utilisateur est affecté à l'utilisateur SELinux
user_u
, au rôleuser_r
, au typeuser_t
et à la plage de sécurité MLSs0-s2
.Vérifier le contexte de sécurité de l'utilisateur actuel :
$ id -Z user_u:user_r:user_t:s1-s2
Passer à une autre plage d'habilitation de sécurité dans la plage d'habilitation de l'utilisateur :
$ newrole -l s1
Vous pouvez passer à n'importe quelle plage dont le maximum est inférieur ou égal à la plage qui vous a été attribuée. La saisie d'une plage à niveau unique modifie la limite inférieure de la plage attribuée. Par exemple, la saisie de
newrole -l s1
en tant qu'utilisateur ayant une plages0-s2
équivaut à la saisie denewrole -l s1-s2
.
Vérification
Affiche le contexte de sécurité de l'utilisateur actuel :
$ id -Z user_u:user_r:user_t:s1-s2
Retourner à l'interpréteur de commandes précédent avec la portée originale en mettant fin à l'interpréteur de commandes actuel :
$ exit
Ressources supplémentaires
- Section 6.4, « Établissement de l'autorisation de l'utilisateur dans le système MLS »
-
newrole(1)
page de manuel -
securetty_types(5)
page de manuel