검색

20.8. IdM 클라이언트에서 sudo에 대한 GSSAPI 인증 활성화 및 적용

download PDF

pam_sss_gss.so PAM 모듈을 통해 sudosudo -i 명령에 대해 IdM 클라이언트에서 GSSAPI(Generic Security Service Application Program Interface) 인증을 활성화합니다. 또한 스마트 카드로 로그인한 사용자만 Kerberos 티켓을 사용하여 해당 명령에 대해 인증합니다.

참고

이 절차를 템플릿으로 사용하여 다른 PAM 인식 서비스에 대해 SSSD를 사용하여 GSSAPI 인증을 구성하고, Kerberos 티켓에 연결된 특정 인증 지표가 있는 사용자만 액세스를 제한할 수 있습니다.

사전 요구 사항

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

절차

  1. /etc/sssd/sssd.conf 설정 파일을 엽니다.
  2. [domain/ <domain_name&gt; ] 섹션에 다음 항목을 추가합니다.

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

    [root@idmclient ~]# systemctl restart sssd
  5. RHEL 9.2 이상에서 다음을 수행합니다.

    1. sssd authselect 프로필을 선택했는지 확인합니다.

      # authselect current
      Profile ID: sssd
    2. 선택 사항: sssd authselect 프로필을 선택합니다.

      # authselect select sssd
    3. GSSAPI 인증을 활성화합니다.

      # authselect enable-feature with-gssapi
    4. 스마트 카드로 사용자만 인증하도록 시스템을 구성합니다.

      # authselect with-smartcard-required
  6. RHEL 9.1 또는 이전 버전:

    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 파일을 저장하고 종료합니다.
    4. /etc/pam.d/sudo-i PAM 구성 파일을 엽니다.
    5. 다음 항목을 /etc/pam.d/sudo-i 파일에 있는 auth 섹션의 첫 번째 행으로 추가합니다.

      #%PAM-1.0
      auth sufficient pam_sss_gss.so
      auth       include      sudo
      account    include      sudo
      password   include      sudo
      session    optional     pam_keyinit.so force revoke
      session    include      sudo
    6. /etc/pam.d/sudo-i 파일을 저장하고 닫습니다.

검증

  1. idm_user 계정으로 호스트에 로그인하고 스마트 카드로 인증합니다.

    [root@idmclient ~]# ssh -l idm_user@idm.example.com localhost
    PIN for smart_card
  2. 스마트 카드 사용자로 티켓팅 티켓이 있는지 확인합니다.

    [idm_user@idmclient ~]$ klist
    Ticket cache: KEYRING:persistent:1358900015:krb_cache_TObtNMd
    Default principal: idm_user@IDM.EXAMPLE.COM
    
    Valid starting       Expires              Service principal
    02/15/2021 16:29:48  02/16/2021 02:29:48  krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM
    	renew until 02/22/2021 16:29:44
  3. idm_user 계정이 수행할 수 있는 sudo 규칙을 표시합니다.

    [idm_user@idmclient ~]$ sudo -l
    Matching Defaults entries for idmuser on idmclient:
        !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin,
        env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS",
        env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
        env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES",
        env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE",
        env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY KRB5CCNAME",
        secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
    
    User idm_user may run the following commands on idmclient:
        (root) /usr/sbin/reboot
  4. 암호를 지정하지 않고 sudo 를 사용하여 시스템을 재부팅합니다.

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

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.