Oracle® Solaris 11.2의 사용자 및 프로세스 보안

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

지정된 관리 권한 사용

root 역할에서 초기 사용자는 모든 관리 권한을 갖습니다. root로서 이 사용자는 역할, 권한(right) 프로파일, 특정 권한(privilege)과 권한 부여 등의 관리 권한(right)을 신뢰할 수 있는 사용자에게 지정할 수 있습니다. 이 절에서는 이러한 사용자가 지정된 권한을 사용할 수 있는 방법을 설명합니다.


주 -  Oracle Solaris에서는 관리 파일용 특수 편집기를 제공합니다. 관리 파일을 편집하는 경우 pfedit 명령을 사용합니다. Example 5–1에서는 비root 사용자가 지정된 시스템 파일을 편집할 수 있게 하는 방법을 보여줍니다.

관리 작업을 수행하려면 터미널 창을 열고 다음 옵션에서 선택합니다.

  • sudo를 사용 중인 경우 sudo 명령을 입력합니다.

    sudo 명령을 잘 아는 관리자의 경우 sudoers 파일에서 지정된 관리 명령의 이름으로 명령을 실행합니다. 자세한 내용은 sudo (1M) 및 sudoers (4) 매뉴얼 페이지를 참조하십시오.

  • 작업에 수퍼 유저 권한이 필요한 경우 root로 전환합니다.

    % su -
    Password: xxxxxxxx
    #

    주 -  이 명령은 root가 사용자인지 또는 역할인지에 관계없이 작동합니다. 파운드 기호(#) 프롬프트는 지금 root임을 나타냅니다.
  • 작업이 역할에 지정된 경우 해당 작업을 수행할 수 있는 역할을 맡습니다.

    다음 예에서는 감사 구성 역할을 맡습니다. 이 역할에는 Audit Configuration 권한 프로파일이 포함됩니다. 관리자로부터 역할 암호를 받았습니다.

    % su - audadmin
    Password: xxxxxxxx
    #

    팁  -  역할 암호를 받지 못한 경우 관리자가 사용자 암호를 요구하도록 역할을 구성한 것입니다. 역할을 맡으려면 사용자 암호를 입력합니다. 이 옵션에 대한 자세한 내용은 Example 3–16을 참조하십시오.

    이 명령을 입력한 셸이 이제 프로파일 셸입니다. 이 셸에서 auditconfig 명령을 실행할 수 있습니다. 프로파일 셸에 대한 자세한 내용은 프로파일 셸 및 권한 확인을 참조하십시오.


    팁  -  역할의 권한을 보려면 권한 프로파일 목록을 참조하십시오.
  • 사용자로 작업이 직접 지정된 경우 다음 방법 중 하나로 프로파일 셸을 만듭니다.

    • pfbash 명령을 사용하여 관리 권한을 평가하는 셸을 만듭니다.

      다음 예에서는 Audit Configuration 권한 프로파일이 직접 지정되었습니다. 다음 명령 세트를 사용하면 pfbash 프로파일 셸에서 감사 사전 선택 값과 감사 정책을 볼 수 있습니다.

      % pfbash
      # auditconfig -getflags
      active user default audit flags = ua,ap,lo(0x45000,0x45000)
      configured user default audit flags = ua,ap,lo(0x45000,0x45000)
      # auditconfig -getpolicy
      configured audit policies = cnt
      active audit policies = cnt
    • pfexec 명령을 사용하여 관리 명령 1개를 실행합니다.

      다음 예에서는 Audit Configuration 권한 프로파일이 인증된 권한 프로파일로 직접 지정되었습니다. 권한 있는 명령 이름과 pfexec 명령을 함께 사용하여 이 프로파일에서 해당 명령을 실행할 수 있습니다. 예를 들어, 사용자의 사전 선택된 감사 플래그를 볼 수 있습니다.

      % pfexec auditconfig -getflags
      Enter password: Type your user password
      active user default audit flags = ua,ap,lo(0x45000,0x45000)
      configured user default audit flags = ua,ap,lo(0x45000,0x45000)

      일반적으로 권한(right)에 포함된 다른 권한 있는 명령을 실행하려면 권한 있는 명령을 입력하기 전에 pfexec를 다시 입력해야 합니다. 자세한 내용은 pfexec(1) 매뉴얼 페이지를 참조하십시오. 암호 캐싱으로 구성된 경우 Example 5–2와 같이 암호를 제공하지 않고 구성 가능한 간격 내에 후속 명령을 실행할 수 있습니다.

예 5-1  시스템 파일 편집

UID가 0root가 아닌 경우 기본적으로 시스템 파일을 편집할 수 없습니다. 하지만 solaris.admin.edit/path-to-system-file 권한 부여가 지정된 경우 system-file을 편집할 수 있습니다. 예를 들어, solaris.admin.edit/etc/security/audit_warn 권한 부여가 지정된 경우 pfedit 명령을 사용하여 audit_warn 파일을 편집할 수 있습니다.

# pfedit /etc/security/audit_warn

자세한 내용은 pfedit (4) 매뉴얼 페이지를 참조하십시오. 이 명령은 모든 관리자가 사용합니다.

예 5-2  역할 사용의 편의성을 위해 인증 캐싱

이 예에서는 관리자가 감사 구성을 관리하는 역할을 구성하지만 사용자 인증을 캐시하여 사용 편의성을 제공합니다. 먼저, 관리자가 역할을 만들고 지정합니다.

# roleadd -K roleauth=user -P "Audit Configuration" audadmin
# usermod -R +audadmin jdoe

jdoe가 역할로 전환할 때 –c 옵션을 사용하는 경우 auditconfig 출력 표시에 앞서 암호를 요구합니다.

% su - audadmin -c auditconfig option
Password: xxxxxxxx 
auditconfig output

인증이 캐시되지 않는 경우 jdoe가 명령을 다시 실행하면 암호 프롬프트가 나타납니다.

관리자는 pam.d 디렉토리에 인증 캐싱을 사용으로 설정하는 su 스택을 포함할 파일을 만듭니다. 인증이 캐시되는 경우 처음에는 암호가 필수이지만, 그 후에는 특정 시간이 경과할 때까지 필수가 아닙니다.

# pfedit /etc/pam.d/su
## Cache authentication for switched user
#
auth required           pam_unix_cred.so.1
auth sufficient         pam_tty_tickets.so.1
auth requisite          pam_authtok_get.so.1
auth required           pam_dhkeys.so.1
auth required           pam_unix_auth.so.1

파일을 만든 후 관리자가 항목에 오타, 누락, 반복이 있는지 검사합니다.

관리자는 전체 선행 su 스택을 제공해야 합니다. pam_tty_tickets.so.1 모듈은 캐시를 구현합니다. PAM에 대한 자세한 내용은 pam_tty_tickets(5)pam.conf(4) 매뉴얼 페이지와 Oracle Solaris 11.2의 Kerberos 및 기타 인증 서비스 관리 의 1 장, 플러그 가능한 인증 모듈 사용을 참조하십시오.

관리자가 su PAM 파일을 추가하고 시스템을 재부트한 후에는 일련의 명령을 실행할 때 audadmin 역할을 포함하는 모든 역할에 대해 암호를 묻는 프롬프트가 한 번만 표시됩니다.

% su - audadmin -c auditconfig option
Password: xxxxxxxx 
auditconfig output
% su - audadmin -c auditconfig option 
auditconfig output
...
예 5-3  root 역할 맡기

다음 예에서 초기 사용자가 root 역할을 맡고 역할의 셸에 권한을 나열합니다.

% roles
root
% su - root
Password: xxxxxxxx
# Prompt changes to root prompt
# ppriv $$
1200:   pfksh
flags = <none>
        E: all
        I: basic
        P: all
        L: all

권한에 대한 자세한 내용은 프로세스 권한 관리ppriv(1) 매뉴얼 페이지를 참조하십시오.

예 5-4  ARMOR 역할 맡기

이 예에서 사용자는 관리자가 지정한 ARMOR 역할을 맡습니다.

사용자는 터미널 창에서 지정된 역할을 확인합니다.

% roles
fsadm
sysop

그런 다음 fsadm 역할을 맡고 사용자 암호를 제공합니다.

% su - fsadm
Password: xxxxxxxx
#

su - rolename 명령은 터미널 셸을 프로파일 셸로 변경합니다. 이 터미널 창에서 사용자가 이제 fsadm 역할입니다.

이 역할에서 실행할 수 있는 명령을 확인하기 위해 사용자는 권한 프로파일 목록의 지침을 따릅니다.