Red Hat Training

A Red Hat training course is available for RHEL 8

3.8. sysadm_u에 매핑하여 관리자 제한

사용자를 sysadm_u SELinux 사용자에게 직접 매핑하여 관리자 권한으로 사용자를 제한할 수 있습니다. 사용자가 로그인하면 세션이 sysadm_u:sysadm_r:sysadm_t SELinux 컨텍스트에서 실행됩니다.

기본적으로 관리 권한이 있는 사용자를 포함하여 Red Hat Enterprise Linux의 모든 Linux 사용자는 제한되지 않은 SELinux 사용자 unconfined_u 에 매핑됩니다. SELinux 제한 사용자에게 사용자를 할당하여 시스템의 보안을 개선할 수 있습니다. 이 명령은 V-71971 보안 기술 구현 가이드를 준수하는 데 유용합니다.

사전 요구 사항

  • root 사용자는 제한되지 않은 상태로 실행됩니다. 이는 Red Hat Enterprise Linux 기본값입니다.

절차

  1. 선택 사항: sysadm_u 사용자가 SSH를 사용하여 시스템에 연결할 수 있도록 하려면 다음을 수행합니다.

    # setsebool -P ssh_sysadm_login on
  2. 새 사용자 또는 기존 사용자를 staff_u SELinux 사용자에게 매핑합니다.

    1. 새 사용자를 매핑하려면 새 사용자를 wheel 사용자 그룹에 추가하고 사용자를 staff_u SELinux 사용자에게 매핑합니다.

      # adduser -G wheel -Z staff_u <example_user>
    2. 기존 사용자를 매핑하려면 사용자를 wheel 사용자 그룹에 추가하고 사용자를 staff_u SELinux 사용자에게 매핑합니다.

      # usermod -G wheel -Z staff_u <example_user>
  3. 사용자 홈 디렉터리의 컨텍스트를 복원합니다.

    # restorecon -R -F -v /home/<example_user>

검증

  1. <example_user> sysadm_u SELinux 사용자에게 매핑되었는지 확인합니다.

    # semanage login -l | grep <example_user>
    <example_user>     sysadm_u    s0-s0:c0.c1023   *
  2. 예를 들어 SSH를 사용하여 로 <example_user> 로그인하고 사용자의 보안 컨텍스트를 표시합니다.

    [<example_user>@localhost ~]$ id -Z
    sysadm_u:sysadm_r:sysadm_t:s0-s0:c0.c1023
  3. root 사용자로 전환합니다.

    $ sudo -i
    [sudo] password for <example_user>:
  4. 보안 컨텍스트가 변경되지 않은 상태로 남아 있는지 확인합니다.

    # id -Z
    sysadm_u:sysadm_r:sysadm_t:s0-s0:c0.c1023
  5. 예를 들어 sshd 서비스를 다시 시작하는 등 관리 작업을 시도합니다.

    # systemctl restart sshd

    출력이 없으면 명령이 성공적으로 완료되었습니다.

    명령이 성공적으로 완료되지 않으면 다음 메시지가 출력됩니다.

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