Red Hat Training

A Red Hat training course is available for RHEL 8

54.7. IdM 클라이언트에서 sudo에 대해 GSSAPI 인증 활성화

다음 절차에서는 sudo pam_sss_gss.so PAM 모듈을 통해 IdM 클라이언트에서 GSSAPI(Generic Security Service Application Program Interface) 인증 활성화를 설명합니다. 이 구성을 사용하면 IdM 사용자가 Kerberos 티켓을 사용하여 sudo 명령에 인증할 수 있습니다.

사전 요구 사항

  • IdM 호스트에 적용되는 IdM 사용자에 대한 sudo 규칙을 생성했습니다. 이 예제에서는 idm_user 계정에 idm_ sbin/reboot 명령을 실행할 수 있는 권한을 부여하는 idm _user_ reboot sudo 규칙을 생성했습니다.
  • idmclient 호스트는 RHEL 8.4 이상을 실행하고 있습니다.
  • /etc/ pam.d / 디렉토리에서 /etc/sssd/sssd.conf 파일과 PAM 파일을 수정하려면 root 권한이 필요합니다.

절차

  1. /etc/sssd/sssd.conf 구성 파일을 엽니다.
  2. 다음 항목을 [domain/<domain_name>] 섹션에 추가합니다.

    [domain/<domain_name>]
    pam_gssapi_services = sudo, sudo-i
  3. /etc/sssd/sssd.conf 파일을 저장하고 닫습니다.
  4. SSSD 서비스를 다시 시작하여 구성 변경 사항을 로드합니다.

    [root@idmclient ~]# systemctl restart sssd
  5. RHEL 8.8 이상을 실행하는 경우:

    1. [선택 사항] sssd authselect 프로필을 선택한 경우 확인합니다.

      # authselect current
      Profile ID: sssd

      출력에 sssd authselect 프로필이 선택됩니다.

    2. sssd authselect 프로필이 선택된 경우 GSSAPI 인증을 활성화합니다.

      # authselect enable-feature with-gssapi
    3. sssd authselect 프로필이 선택되어 있지 않으면 해당 프로필을 선택하고 GSSAPI 인증을 활성화합니다.

      # authselect select sssd with-gssapi
  6. RHEL 8.7 이하를 실행하는 경우:

    1. /etc/pam.d/sudo PAM 구성 파일을 엽니다.
    2. 다음 항목을 /etc/pam.d/sudo 파일에 있는 auth 섹션의 첫 번째 행으로 추가합니다.

      #%PAM-1.0
      auth sufficient pam_sss_gss.so
      auth       include      system-auth
      account    include      system-auth
      password   include      system-auth
      session    include      system-auth
    3. /etc/pam.d/sudo 파일을 저장하고 닫습니다.

검증 단계

  1. idm_user 계정으로 호스트에 로그인합니다.

    [root@idm-client ~]# ssh -l idm_user@idm.example.com localhost
    idm_user@idm.example.com's password:
  2. 티켓이 idm_user 계정으로 티켓을 부여했는지 확인합니다.

    [idmuser@idmclient ~]$ klist
    Ticket cache: KCM:1366201107
    Default principal: idm_user@IDM.EXAMPLE.COM
    
    Valid starting       Expires              Service principal
    01/08/2021 09:11:48  01/08/2021 19:11:48  krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM
    	renew until 01/15/2021 09:11:44
  3. (선택 사항) idm_user 계정에 대한 Kerberos 인증 정보가 없는 경우 현재 Kerberos 자격 증명을 삭제하고 올바른 정보를 요청합니다.

    [idm_user@idmclient ~]$ kdestroy -A
    
    [idm_user@idmclient ~]$ kinit idm_user@IDM.EXAMPLE.COM
    Password for idm_user@idm.example.com:
  4. 암호를 지정하지 않고 sudo 를 사용하여 시스템을 재부팅합니다.

    [idm_user@idmclient ~]$ sudo /usr/sbin/reboot