Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

3.2. SELinux 사용자 기능

SELinux 정책은 각 Linux 사용자를 SELinux 사용자에게 매핑합니다. 이를 통해 Linux 사용자는 SELinux 사용자의 제한을 상속할 수 있습니다.

정책의 부울을 조정하여 특정 요구에 따라 SELinux 정책에서 제한된 사용자에 대한 권한을 사용자 지정할 수 있습니다. semanage boolean -l 명령을 사용하여 이러한 부울의 현재 상태를 확인할 수 있습니다.

표 3.1. SELinux 사용자의 역할

사용자기본 역할추가 역할

unconfined_u

unconfined_r

system_r

guest_u

guest_r

 

xguest_u

xguest_r

 

user_u

user_r

 

staff_u

staff_r

sysadm_r

unconfined_r

system_r

sysadm_u

sysadm_r

 

root

staff_r

sysadm_r

unconfined_r

system_r

system_u

system_r

 

system_u 는 시스템 프로세스 및 개체의 특수 사용자 ID이며 system_r 은 관련 역할입니다. 관리자는 이 system _u 사용자와 system_ r 역할을 Linux 사용자에게 연결해서는 안 됩니다. 또한 unconfined_uroot 는 제한되지 않은 사용자입니다. 이러한 이유로 이러한 SELinux 사용자와 연결된 역할은 다음 표 유형 및 SELinux 역할에 대한 액세스에 포함되지 않습니다.

각 SELinux 역할은 SELinux 유형에 해당하며 특정 액세스 권한을 제공합니다.

표 3.2. SELinux 역할 유형 및 액세스

Role유형X 윈도우 시스템을 사용하여 로그인합니다susudo홈 디렉토리 및 /tmp 에서 실행 (기본값)네트워킹

unconfined_r

unconfined_t

제공됨

제공됨

제공됨

제공됨

guest_r

guest_t

아니요

아니요

제공됨

아니요

xguest_r

xguest_t

제공됨

아니요

제공됨

웹 브라우저만 해당 (Firefox, GNOME Web)

user_r

user_t

제공됨

아니요

제공됨

제공됨

staff_r

staff_t

제공됨

sudo

제공됨

제공됨

auditadm_r

auditadm_t

 

제공됨

제공됨

제공됨

secadm_r

secadm_t

 

제공됨

제공됨

제공됨

sysadm_r

sysadm_t

xdm_sysadm_login 부울이 있는경우에만

제공됨

제공됨

제공됨

  • user_t,guest_txguest_t 도메인의 Linux 사용자는 SELinux 정책에서 허용하는 경우에만 setuid(setuid) 애플리케이션만 실행할 수 있습니다(예: passwd). 이러한 사용자는 susudo setuid 애플리케이션을 실행할 수 없으므로 이러한 애플리케이션을 사용하여 루트가 될 수 없습니다.
  • sysadm_t,staff_t,user_txguest_t 도메인의 Linux 사용자는 X Window 시스템 및 터미널을 사용하여 로그인할 수 있습니다.
  • 기본적으로 staff_t,user_t,guest_txguest_t 도메인의 Linux 사용자는 홈 디렉토리 및 /tmp 에서 애플리케이션을 실행할 수 있습니다.

    사용자의 권한을 상속하는 애플리케이션을 실행하지 못하도록 하려면 사용자가 쓰기 액세스 권한이 있는 디렉터리에서 guest_exec_content 및 xguest_exec _content 부울을 off 로 설정합니다. 이를 통해 결함이 있는 애플리케이션 또는 악성 애플리케이션이 사용자의 파일을 수정하지 못하도록 방지할 수 있습니다.

  • xguest_t 도메인에 있는 유일한 네트워크 액세스 Linux 사용자는 Firefox에서 웹 페이지에 연결하는 것입니다.
  • sysadm_u 사용자는 SSH를 사용하여 직접 로그인할 수 없습니다. sysadm_u 에 대한 SSH 로그인을 활성화하려면 ssh_sysadm_login 부울을 on 으로 설정합니다.

    # setsebool -P ssh_sysadm_login on

이미 언급한 SELinux 사용자와 함께 semanage user 명령을 사용하여 해당 사용자에게 매핑할 수 있는 특별한 역할이 있습니다. 이러한 역할은 SELinux에서 사용자가 수행할 수 있는 작업을 결정합니다.

  • webadm_r 은 Apache HTTP 서버와 관련된 SELinux 유형만 관리할 수 있습니다.
  • dbadm_r 은 MariaDB 데이터베이스 및 PostgreSQL 데이터베이스 관리 시스템과 관련된 SELinux 유형만 관리할 수 있습니다.
  • logadm_rsyslogauditlog 프로세스와 관련된 SELinux 유형만 관리할 수 있습니다.
  • secadm_r 은 SELinux만 관리할 수 있습니다.
  • auditadm_r 은 감사 하위 시스템과 관련된 프로세스만 관리할 수 있습니다.

사용 가능한 모든 역할을 나열하려면 theseinfo -r 명령을 입력합니다.

seinfo -r
Roles: 14
   auditadm_r
   dbadm_r
   guest_r
   logadm_r
   nx_server_r
   object_r
   secadm_r
   staff_r
   sysadm_r
   system_r
   unconfined_r
   user_r
   webadm_r
   xguest_r

이러한 info 명령은 기본적으로 설치되지 않는 setools-console 패키지에서 제공합니다.

추가 리소스

  • seinfo(1), semanage-login(8)xguest_selinux(8) 도움말 페이지