19.3.3. 외부 LDAP 공급자 구성(Manual Method)
ovirt-engine-extension-aaa-ldap
확장에서는 LDAP 프로토콜을 사용하여 디렉터리 서버에 액세스하며 완전히 사용자 지정할 수 있습니다. VM 포털 또는 관리 포털에 대한 SSO(Single Sign-On)를 활성화하려면 Kerberos 인증이 필요하지 않습니다.
이전 섹션의 대화형 설정 방법에 사용 사례가 적용되지 않는 경우 구성 파일을 수동으로 수정하여 LDAP 서버를 연결할 수 있습니다. 다음 절차에서는 일반 세부 정보를 사용합니다. 특정 값은 설정에 따라 다릅니다.
수동으로 외부 LDAP 공급자 구성
Red Hat Virtualization Manager에서 LDAP 확장 패키지를 설치합니다.
# yum install ovirt-engine-extension-aaa-ldap
LDAP 구성 템플릿 파일을 /etc/ovirt-engine 디렉터리에 복사합니다. 템플릿 파일은 활성 디렉터리(ad) 및 기타 디렉터리 유형(단순)에 사용할 수 있습니다. 이 예에서는 간단한 구성 템플릿을 사용합니다.
# cp -r /usr/share/ovirt-engine-extension-aaa-ldap/examples/simple/. /etc/ovirt-engine
관리 포털 및 VM 포털 로그인 페이지의 사용자에게 표시되는 프로필 이름과 일치하도록 구성 파일의 이름을 변경합니다.
# mv /etc/ovirt-engine/aaa/profile1.properties /etc/ovirt-engine/aaa/example.properties # mv /etc/ovirt-engine/extensions.d/profile1-authn.properties /etc/ovirt-engine/extensions.d/example-authn.properties # mv /etc/ovirt-engine/extensions.d/profile1-authz.properties /etc/ovirt-engine/extensions.d/example-authz.properties
LDAP 서버 유형의 주석을 제거하고 도메인 및 암호 필드를 업데이트하여 LDAP 속성 구성 파일을 편집합니다.
# vi /etc/ovirt-engine/aaa/example.properties
예 19.1. 프로필: LDAP 서버 섹션 예
# Select one # include = <openldap.properties> #include = <389ds.properties> #include = <rhds.properties> #include = <ipa.properties> #include = <iplanet.properties> #include = <rfc2307-389ds.properties> #include = <rfc2307-rhds.properties> #include = <rfc2307-openldap.properties> #include = <rfc2307-edir.properties> #include = <rfc2307-generic.properties> # Server # vars.server = ldap1.company.com # Search user and its password. # vars.user = uid=search,cn=users,cn=accounts,dc=company,dc=com vars.password = 123456 pool.default.serverset.single.server = ${global:vars.server} pool.default.auth.simple.bindDN = ${global:vars.user} pool.default.auth.simple.password = ${global:vars.password}
TLS 또는 SSL 프로토콜을 사용하여 LDAP 서버와 상호 작용하려면 LDAP 서버의 루트 CA 인증서를 가져오고 이를 사용하여 공개 키 저장소 파일을 생성합니다. 다음 줄의 주석을 제거하고 공개 키 저장소 파일의 전체 경로와 파일에 액세스할 암호를 지정합니다.
참고공개 키 저장소 파일 생성에 대한 자세한 내용은 D.2절. “관리자와 LDAP 서버 간 암호화 통신 설정” 을 참조하십시오.
예 19.2. profile: keystore 섹션의 예
# Create keystore, import certificate chain and uncomment # if using tls. pool.default.ssl.startTLS = true pool.default.ssl.truststore.file = /full/path/to/myrootca.jks pool.default.ssl.truststore.password = password
인증 구성 파일을 검토합니다. 관리 포털의 사용자에게 표시되는 프로필 이름과 VM 포털 로그인 페이지는 ovirt.engine.aaa.authn.profile.name 에 의해 정의됩니다. 구성 프로필 위치는 LDAP 구성 파일 위치와 일치해야 합니다. 모든 필드는 기본값으로 남겨 둘 수 있습니다.
# vi /etc/ovirt-engine/extensions.d/example-authn.properties
예 19.3. 인증 구성 파일 예
ovirt.engine.extension.name = example-authn ovirt.engine.extension.bindings.method = jbossmodule ovirt.engine.extension.binding.jbossmodule.module = org.ovirt.engine-extensions.aaa.ldap ovirt.engine.extension.binding.jbossmodule.class = org.ovirt.engineextensions.aaa.ldap.AuthnExtension ovirt.engine.extension.provides = org.ovirt.engine.api.extensions.aaa.Authn ovirt.engine.aaa.authn.profile.name = example ovirt.engine.aaa.authn.authz.plugin = example-authz config.profile.file.1 = ../aaa/example.properties
권한 부여 구성 파일을 검토합니다. 구성 프로필 위치는 LDAP 구성 파일 위치와 일치해야 합니다. 모든 필드는 기본값으로 남겨 둘 수 있습니다.
# vi /etc/ovirt-engine/extensions.d/example-authz.properties
예 19.4. 권한 부여 구성 파일의 예
ovirt.engine.extension.name = example-authz ovirt.engine.extension.bindings.method = jbossmodule ovirt.engine.extension.binding.jbossmodule.module = org.ovirt.engine-extensions.aaa.ldap ovirt.engine.extension.binding.jbossmodule.class = org.ovirt.engineextensions.aaa.ldap.AuthzExtension ovirt.engine.extension.provides = org.ovirt.engine.api.extensions.aaa.Authz config.profile.file.1 = ../aaa/example.properties
구성 프로파일의 소유권 및 권한이 적절한지 확인합니다.
# chown ovirt:ovirt /etc/ovirt-engine/aaa/example.properties # chmod 600 /etc/ovirt-engine/aaa/example.properties
engine 서비스를 다시 시작하십시오.
# systemctl restart ovirt-engine.service
- 생성된 예제 프로필은 이제 관리 포털 및 VM 포털 로그인 페이지에서 사용할 수 있습니다. 예를 들어 VM 포털에 로그인하기 위한 LDAP 서버의 적절한 권한을 사용자 계정에 지정하려면 19.7절. “관리 포털에서 사용자 작업” 을 참조하십시오.
자세한 내용은 /usr/share/doc/ovirt-engine-extension-aaa-ldap-버전의 LDAP 인증 및 권한 부여 README 파일을 참조하십시오.