Product SiteDocumentation Site

6.3. Confinando Usuarios Linux Existentes: semanage login

Si un usuario Linux se mapea al usuario unconfined_u (el comportamiento predeterminado), y desea cambiar le usuario SELinux al que se mapea, use el comando semanage login. El siguiente ejemplo crea un usuario de Linux nuevo llamado usuarionuevo, luego lo mapea al usuario SELinux user_u:
  1. Como usuario root de Linux, ejecute el comando /usr/sbin/useradd usuarionuevo para crear un nuevo usuario (usuarionuevo). Dado que este usuario usa el mapeo por defecto, no aparece en la salida de /usr/sbin/semanage login -l:
    # /usr/sbin/semanage login -l
    
    Login Name                SELinux User              MLS/MCS Range
    
    __default__               unconfined_u              s0-s0:c0.c1023
    root                      unconfined_u              s0-s0:c0.c1023
    system_u                  system_u                  s0-s0:c0.c1023
    
  2. Para mapear un usuario usuarionuevo de Linux al usuario user_u de SELinux, corra el siguiente comando como usuario root de Linux:
    /usr/sbin/semanage login -a -s user_u usuarionuevo
    La opción -a agrega un registro nuevo y la opción -s especifica el usuario SELinux al que mapea el usuario Linux. El último argumento usuarionuevo, es el usuario Linux al que quiere que se mapee el usuario SELinux especificado.
  3. Para ver el mapeo entre el usuario usarionuevo de Linux y user_u, corra el comando semanage login -l como usuario root de Linux:
    # /usr/sbin/semanage login -l
    
    Login Name                SELinux User              MLS/MCS Range
    
    __default__               unconfined_u              s0-s0:c0.c1023
    usuarionuevo                   user_u                    s0
    root                      unconfined_u              s0-s0:c0.c1023
    system_u                  system_u                  s0-s0:c0.c1023
    
  4. As the Linux root user, run the passwd newuser command to assign a password to the Linux newuser user:
    # passwd usuarionuevo
    Cambiando la contraseña del usuario usuarionuevo.
    Nueva contraseña de UNIX: Ingrese una contraseña
    Reingrese la nueva contraseña de UNIX: Ingrese la misma contraseña de nuevo 
    passwd: todos los tokens de autenticación se actualizaron exitosamente.
    
  5. Salga de su sesión actual e ingrese como el usuario de Linux usuarionuevo. Corra el comando id -Z para ver el contexto SELinux de usuarionuevo:
    [usuarionuevo@localhost ~]$ id -Z
    user_u:user_r:user_t:s0
    
  6. Salga de la sesión de Linux del usuarionuevo y vuelva a ingresar en su cuenta. Si no quiere el usuarionuevo de Linux, corra el comando userdel -r usuarionuevo como usuario root de Linux, junto con su directorio de inicio. También, el mapeo del usuario Linux usuarionuevo y user_u se elimina:
    # /usr/sbin/userdel -r usuarionuevo
    # /usr/sbin/semanage login -l
    
    Login Name                SELinux User              MLS/MCS Range
    
    __default__               unconfined_u              s0-s0:c0.c1023
    root                      unconfined_u              s0-s0:c0.c1023
    system_u                  system_u                  s0-s0:c0.c1023