Oracle® Solaris 11.2의 Kerberos 및 기타 인증 서비스 관리

인쇄 보기 종료

업데이트 날짜: 2014년 8월
 
 

Kerberos 영역에서 사용자의 자동 마이그레이션을 구성하는 방법

Kerberos 주체가 없는 사용자는 PAM을 사용하여 기존 Kerberos 영역으로 자동 마이그레이션될 수 있습니다. Kerberos 영역에서의 재인증 및 UNIX 자격 증명 인증을 처리할 수 있도록 마이그레이션 서버 및 마스터 서버에서 시스템별 PAM 구성 파일을 사용자 정의합니다.

PAM에 대한 자세한 내용은 Chapter 1, 플러그 가능한 인증 모듈 사용pam.conf(4) 매뉴얼 페이지를 참조하십시오.

    이 절차에서는 자동 마이그레이션을 사용하도록 로그인 서비스 이름을 구성합니다. 이 예에서는 다음 구성 매개변수를 사용합니다.

  • 영역 이름 = EXAMPLE.COM

  • 마스터 KDC = kdc1.example.com

  • 마이그레이션 서비스를 호스트하는 시스템 = server1.example.com

  • 마이그레이션 서비스 주체 = host/server1.example.com

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

  1. server1에 대한 호스트 서비스 주체가 있는지 확인합니다.

    server1keytab 파일에 있는 호스트 서비스 주체는 마스터 KDC에 대해 서버를 인증하는 데 사용됩니다.

    server1 # klist -k
    Keytab name: FILE:/etc/krb5/krb5.keytab
    KVNO Principal
    ---- ------------------------------------------------
    3 host/server1.example.com@EXAMPLE.COM
    ...

    명령의 옵션에 대한 자세한 내용은 klist(1) 매뉴얼 페이지를 참조하십시오.

  2. server1이 나열되지 않으면 EXAMPLE.COM 영역의 Kerberos 클라이언트로 구성합니다.

    단계는 Kerberos 클라이언트 구성의 예를 참조하십시오.

  3. server1에 대한 PAM 정책을 수정합니다.

    자세한 내용은 사용자별 PAM 정책 지정을 참조하십시오.

    1. server1에서 사용 중인 Kerberos 정책을 확인합니다.
      % grep PAM_POLICY /etc/security/policy.conf
      # PAM_POLICY specifies the system-wide PAM policy (see pam_user_policy(5))
      ...
      PAM_POLICY=krb5_first
    2. 해당 PAM 정책 파일을 복사한 다음 복사한 새 정책 파일을 수정하여 각 인증 스택에 pam_krb5_migrate.so.1 모듈을 추가합니다.
      server1 # cd /etc/security/pam_policy/; cp krb5_first krb5_firstmigrate
      server1 # pfedit /etc/security/pam_policy/krb5_firstmigrate.
      # login service (explicit because of pam_dial_auth)
      #
      login	auth requisite	   pam_authtok_get.so.1
      ...
      login	auth required		pam_unix_auth.so.1
      login    auth optional		pam_krb5_migrate.so.1
      #
      # rlogin service (explicit because of pam_rhost_auth)
      #
      rlogin	auth sufficient	 pam_rhosts_auth.so.1
      ...
      rlogin	auth required	   pam_unix_auth.so.1
      rlogin   auth optional        pam_krb5_migrate.so.1
      #
      # Kerberized rlogin service
      #
      krlogin	auth required		pam_unix_cred.so.1
      krlogin	auth required		pam_krb5.so.1
      krlogin	auth optional		pam_krb5_migrate.so.1
      #
      # rsh service (explicit because of pam_rhost_auth)
      #
      rsh	auth sufficient		pam_rhosts_auth.so.1
      rsh	auth required		  pam_unix_cred.so.1
      rsh	auth optional		  pam_krb5_migrate.so.1
      #
      # Kerberized rsh service
      #
      krsh	auth required		pam_unix_cred.so.1
      krsh	auth required		pam_krb5.so.1
      krsh	auth optional		pam_krb5_migrate.so.1
      #
      # Kerberized telnet service
      #
      ktelnet	auth required		pam_unix_cred.so.1
      ktelnet	auth required		pam_krb5.so.1
      ktelnet	auth optional		pam_krb5_migrate.so.1
      #
      # PPP service (explicit because of pam_dial_auth)
      #
      ppp	auth requisite	   pam_authtok_get.so.1
      ...
      ppp	auth required		pam_unix_auth.so.1
      ppp	auth optional		pam_krb5_migrate.so.1
      #
      # GDM Autologin (explicit because of pam_allow).  These need to be
      # here as there is no mechanism for packages to amend pam.conf as
      # they are installed.
      #
      gdm-autologin auth  required    pam_unix_cred.so.1
      gdm-autologin auth  sufficient  pam_allow.so.1
      gdm-autologin auth optional    pam_krb5_migrate.so.1
      #
      # Default definitions for Authentication management
      # Used when service name is not explicitly mentioned for authentication
      #
      OTHER	auth requisite	   pam_authtok_get.so.1
      ...
      OTHER	auth required		pam_unix_auth.so.1
      OTHER	auth optional		pam_krb5_migrate.so.1
      #
      # passwd command (explicit because of a different authentication module)
      #
      passwd	auth required		pam_passwd_auth.so.1
      #
      # cron service (explicit because of non-usage of pam_roles.so.1)
      #
      cron	account required	pam_unix_account.so.1
      #
      # cups service (explicit because of non-usage of pam_roles.so.1)
      #
      cups	account	required	pam_unix_account.so.1
      #
      # GDM Autologin (explicit because of pam_allow) This needs to be here
      # as there is no mechanism for packages to amend pam.conf as they are
      # installed.
      #modified
      gdm-autologin account  sufficient  pam_allow.so.1
      #
      .
      .
      .
    3. (옵션) 강제로 암호를 즉시 변경합니다.

      새로 만든 Kerberos 계정의 경우 pam_krb5_migrate 항목에 –expire_pw 옵션을 추가하여 암호 만료 시간을 현재 시간으로 설정합니다. 자세한 내용은 pam_krb5_migrate(5) 매뉴얼 페이지를 참조하십시오.

      service-name auth optional     pam_krb5_migrate.so.1 expire_pw
    4. 이 구성 파일에서, Kerberos 암호가 만료된 경우 액세스를 차단하도록 OTHER 계정 스택을 수정합니다.
      # Definition for Account management
      # Used when service name is not explicitly mentioned for account management
      # Re-ordered pam_krb5 causes password expiration in Kerberos to block access
      #
      OTHER	account	requisite   pam_roles.so.1
      OTHER	account	required	pam_krb5.so.1
      OTHER	account	required	pam_unix_account.so.1
      OTHER	account	required	pam_tsol_account.so.1
      # OTHER	account	required	pam_krb5.so.1
      #
      .
      .
      .
    5. 수정된 구성 파일을 사용하도록 policy.conf 파일의 PAM_POLICY 항목을 변경합니다.
      server1 # pfedit /etc/security/policy.conf
      ...
      # PAM_POLICY=krb5_first
      PAM_POLICY=krb5_firstmigrate

      자세한 내용은 policy.conf 파일을 읽어 보십시오.

  4. 마스터 KDC에서 kadm5.acl 액세스 제어 파일을 업데이트합니다.

    다음 항목은 root 사용자를 제외한 모든 사용자에 대한 host/server1.example.com 서비스 주체에 마이그레이션 및 조회 권한을 부여합니다. U 권한을 사용하여 마이그레이션하지 않아야 할 사용자를 나열합니다. 이러한 항목은 전체 또는 ui 허가 항목 앞에 와야 합니다. 자세한 내용은 kadm5.acl(4) 매뉴얼 페이지를 참조하십시오.

    kdc1 # pfedit /etc/krb5/kadm5.acl
    host/server1.example.com@EXAMPLE.COM U root
    host/server1.example.com@EXAMPLE.COM ui *
    */admin@EXAMPLE.COM *
  5. 마스터 KDC에서 kadmind 데몬이 k5migrate PAM 서비스를 사용할 수 있도록 설정합니다.

    k5migrate 서비스 파일이 /etc/pam.d 디렉토리에 없는 경우 서비스 파일을 디렉토리에 추가합니다. 자세한 내용은 pam.d(4) 매뉴얼 페이지를 참조하십시오.

    이렇게 수정하면 마이그레이션이 필요한 계정에 대해 UNIX 사용자 암호 검증이 사용으로 설정됩니다.

    kdc1 # pfedit /etc/pam.d/k5migrate
    ...
    # Permits validation of migrated UNIX accounts
    auth    required        pam_unix_auth.so.1
    account required        pam_unix_account.so.1

    주 -  k5migrate는 PAM 서비스의 이름입니다. 이 파일은 이름이 k5migrate여야 합니다.
  6. 생산 환경에서 구성을 사용하기 전에 테스트합니다.
    • 일반 사용자로 수정한 각 PAM 서비스를 테스트합니다.
    • root로 수정한 각 PAM 서비스를 테스트합니다.
    • 암호 변경을 강제로 적용한 다음 수정된 PAM 서비스를 테스트합니다.