Red Hat Training

A Red Hat training course is available for RHEL 8

3.5.2. Confinar a los usuarios administradores

Puede utilizar uno de los dos métodos siguientes para confinar a los usuarios administradores.

3.5.2.1. Confirmar un administrador mediante la asignación a sysadm_u

Puedes confinar a un usuario con privilegios administrativos asignando el usuario directamente al usuario sysadm_u SELinux. Cuando el usuario se conecta, la sesión se ejecuta en el contexto sysadm_u:sysadm_r:sysadm_t SELinux.

Requisitos previos

  • El usuario root se ejecuta sin restricciones. Este es el valor por defecto de Red Hat Enterprise Linux.

Procedimiento

  1. Opcional: Para permitir que los usuarios de sysadm_u se conecten al sistema mediante SSH:

    # setsebool -P ssh_sysadm_login on
  2. Cree un nuevo usuario, añada el usuario al grupo de usuarios wheel y asigne el usuario al usuario de SELinux sysadm_u:

    # adduser -G wheel -Z sysadm_u example.user
  3. Opcional: Asigne un usuario existente al usuario sysadm_u SELinux y añada el usuario al grupo de usuarios wheel:

    # usermod -G wheel -Z sysadm_u example.user

Pasos de verificación

  1. Comprueba que example.user esté asignada al usuario de SELinux sysadm_u:

    # semanage login -l | grep example.user
    example.user     sysadm_u    s0-s0:c0.c1023   *
  2. Inicie la sesión como example.userpor ejemplo, utilizando SSH, y mostrar el contexto de seguridad del usuario:

    [example.user@localhost ~]$ id -Z
    sysadm_u:sysadm_r:sysadm_t:s0-s0:c0.c1023
  3. Cambia al usuario root:

    $ sudo -i
    [sudo] password for example.user:
  4. Compruebe que el contexto de seguridad no se ha modificado:

    # id -Z
    sysadm_u:sysadm_r:sysadm_t:s0-s0:c0.c1023
  5. Intente una tarea administrativa, por ejemplo, reiniciar el servicio sshd:

    # systemctl restart sshd

    Si no hay salida, el comando ha terminado con éxito.

    Si el comando no termina con éxito, imprime el siguiente mensaje:

    Failed to restart sshd.service: Access denied
    See system logs and 'systemctl status sshd.service' for details.