Sun Java System Directory Server Enterprise Edition 6.3 관리 설명서

GSSAPI를 통한 SASL 인증(Solaris OS에만 해당)

SASL에서 GSSAPI(Generic Security Service API)를 통해 Kerberos V5와 같은 타사 보안 시스템을 사용함으로써 클라이언트를 인증할 수 있습니다. GSSAPI 라이브러리는 Solaris OS SPARC® 플랫폼에서만 사용할 수 있습니다. Sun Enterprise Authentication MechanismTM 1.0.1 서버에 Kerberos V5 구현을 설치하는 것이 좋습니다.

서버는 GSSAPI를 사용하여 사용자 아이디를 확인합니다. 그런 다음 SASL 메커니즘에서 GSSAPI 매핑 규칙을 적용하여 이 연결이 유지되는 동안 모든 작업의 바인드 DN으로 지정될 DN을 얻습니다.

ProcedureKerberos 시스템을 구성하는 방법

제조업체의 지침에 따라 Kerberos 소프트웨어를 구성합니다. Sun Enterprise Authentication Mechanism 1.0.1 서버를 사용하는 경우 이 절차를 사용합니다.

DSCC를 사용하여 이 작업을 수행할 수 없습니다. 이 절차에 설명된 것처럼 명령줄을 사용하십시오.

  1. /etc/krb5에 있는 파일을 구성합니다.

  2. 사용자와 서비스를 저장할 Kerberos 데이터베이스를 만듭니다.

  3. 데이터베이스에서 LDAP 서비스에 대한 사용자(Principal)를 만듭니다.


    $ ldap/server-FQDN@realm
    

    여기서 server-FQDN은 디렉토리 서버의 정규화된 도메인 이름입니다.

  4. Kerberos 데몬 프로세스를 시작합니다.


    주 –

    DNS는 호스트 시스템에 구성해야 합니다.


    자세한 단계별 지침은 소프트웨어 설명서 및 SASL에서 GSSAPI를 사용하는 Kerberos 인증 구성의 예를 참조하십시오.

ProcedureGSSAPI 메커니즘을 구성하는 방법

다음 절차에서는 Solaris OS에서 디렉토리 서버가 GSSAPI를 사용하도록 구성하는 방법에 대해 설명합니다.

DSCC를 사용하여 이 작업을 수행할 수 없습니다. 이 절차에 설명된 것처럼 명령줄을 사용하십시오.

  1. GSSAPI 아이디 매핑에 설명된 것처럼 GSSAPI에 대한 기본 아이디 매핑 및 사용자 정의 매핑을 만듭니다.

  2. 서비스 키를 저장할 키 탭을 만듭니다.

    LDAP 서비스 키는 키 탭에 저장됩니다.

    1. 디렉토리 서버 사용자가 키 탭에 대한 읽기만 가능한지 확인합니다.

    2. 파일 이름을 기본 /etc/krb5/krb5.keytab과 다르게 변경합니다.

    3. 스크립트에서 환경 변수 KRB5_KTNAME을 설정하여 기본 키 탭 대신 새 키 탭을 사용하도록 합니다.

  3. SASL 구성 항목 또는 GSSAPI 아이디 매핑 항목 중 하나를 수정했다면 디렉토리 서버를 다시 시작합니다.

    DNS는 호스트 시스템에 구성해야 합니다.

GSSAPI 아이디 매핑

SASL 메커니즘에 아이디를 매핑하면 디렉토리의 사용자 항목이 SASL 아이디의 자격 증명과 일치하는지 확인합니다. 매핑 중에 SASL 아이디에 해당하는 DN을 찾을 수 없으면 인증은 실패합니다.

SASL 아이디는 각 메커니즘의 고유 형식으로 사용자를 나타내는 사용자(Principal)라고 불리는 문자열입니다. GSSAPI를 사용하는 Kerberos에서 사용자(Principal)는 형식이 uid [/instance][@realm]인 아이디로 나타납니다. 여기서 uid에는 instance 식별자가 선택적으로 포함될 수 있으며 이 식별자 뒤에 일반적으로 도메인 이름인 realm이 선택적으로 붙습니다. 예를 들어 다음 문자열은 모두 유효한 사용자입니다.


bjensen
bjensen/Sales
bjensen@EXAMPLE.COM
bjensen/Sales@EXAMPLE.COM

처음에는 디렉토리에 GSSAPI 매핑이 정의되어 있지 않습니다. 클라이언트에서 자신이 사용하는 사용자(Principal)를 정의하는 방법에 따라 기본 매핑 및 필요한 사용자 정의 매핑을 모두 정의해야 합니다.

ProcedureGSSAPI에 대한 아이디 매핑을 정의하는 방법

DSCC를 사용하여 이 작업을 수행할 수 없습니다. 이 절차에 설명된 것처럼 명령줄을 사용하십시오.

  1. cn=GSSAPI,cn=identity mapping, cn=config에 새 매핑 항목을 만듭니다.

    아이디 매핑 항목의 속성 정의에 대한 내용은 Sun Java System Directory Server Enterprise Edition 6.3 Reference를 참조하십시오. GSSAPI 매핑에 대한 예는 instance-path/ldif/identityMapping_Examples.ldif에 있습니다.

    이 파일의 기본 GSSAPI 매핑에서는 사용자(Principal)에 사용자 아이디만 포함되어 있다고 가정합니다. 이 매핑에서는 디렉토리의 고정 분기에 있는 사용자를 결정합니다.


    dn: cn=default,cn=GSSAPI,cn=identity mapping,cn=config
    objectclass: dsIdentityMapping
    objectclass: nsContainer
    objectclass: top
    cn: default
    dsMappedDN: uid=\${Principal},ou=people,dc=example,dc=com

    이 파일의 다른 예에서는 알려진 영역이 지정된 사용자(Principal)에 포함할 사용자 아이디를 결정하는 방법을 보여줍니다.


    dn: cn=same_realm,cn=GSSAPI,cn=identity mapping,cn=config
    objectclass: dsIdentityMapping
    objectclass: dsPatternMatching
    objectclass: nsContainer
    objectclass: top
    cn: same_realm
    dsMatching-pattern: \${Principal}
    dsMatching-regexp: (.*)@EXAMPLE.COM
    dsMappedDN: uid=\$1,ou=people,dc=EXAMPLE,dc=COM
  2. 새 매핑을 적용하려면 디렉토리 서버를 다시 시작합니다.