5장. LDAP를 사용하도록 SSSD 구성 및 TLS 인증 필요
RHEL(Red Hat Enterprise Linux) 시스템을 OpenLDAP 클라이언트로 구성하려면 다음 절차를 완료합니다.
다음 클라이언트 구성을 사용합니다.
- RHEL 시스템은 OpenLDAP 사용자 계정 데이터베이스에 저장된 사용자를 인증합니다.
- RHEL 시스템은 SSSD(System Security Services Daemon) 서비스를 사용하여 사용자 데이터를 검색합니다.
- RHEL 시스템은 TLS 암호화 연결을 통해 OpenLDAP 서버와 통신합니다.
또는 이 절차를 사용하여 RHEL 시스템을 Red Hat Directory Server의 클라이언트로 구성할 수 있습니다.
사전 요구 사항
- OpenLDAP 서버가 사용자 정보로 설치 및 구성됩니다.
- LDAP 클라이언트로 구성 중인 호스트에 대한 루트 권한이 있습니다.
-
LDAP 클라이언트로 구성하는 호스트에서
/etc/sssd/sssd.conf
파일이 생성되어ldap
를autofs_provider 및
로 지정하도록 구성되었습니다.id_provider
-
core-dirsrv.ca.pem
이라는 로컬 파일에 저장된 OpenLDAP 서버 인증서를 발급한 인증 기관에서 루트 CA 서명 인증서 체인의 PEM 형식의 사본이 있습니다.
절차
필수 패키지를 설치합니다.
# dnf -y install openldap-clients sssd sssd-ldap oddjob-mkhomedir
인증 공급자를
sssd
로 전환 :# authselect select sssd with-mkhomedir
OpenLDAP 서버의 SSL/TLS 인증서를 발급한 인증 기관에서 루트 CA 서명 인증서 체인이 포함된
core-dirsrv.ca.pem
파일을/etc/openldap/certs
폴더에 복사합니다.# cp core-dirsrv.ca.pem /etc/openldap/certs
LDAP 서버의 URL 및 접미사를
/etc/openldap/ldap.conf
파일에 추가합니다.URI ldap://ldap-server.example.com/ BASE dc=example,dc=com
/etc/openldap/ldap.conf
파일에서 TLS_CACERT 매개 변수를/etc/openldap/certs/core-dirsrv.ca.pem에 가리키는 행을 추가합니다.
# When no CA certificates are specified the Shared System Certificates # are in use. In order to have these available along with the ones specified # by TLS_CACERTDIR one has to include them explicitly: TLS_CACERT /etc/openldap/certs/core-dirsrv.ca.pem
/etc/sssd/sssd.conf
파일에서ldap_uri
및ldap_search_base
매개변수에 환경 값을 추가하고ldap_id_use_start_tls
를True
로 설정합니다.[domain/default] id_provider = ldap autofs_provider = ldap auth_provider = ldap chpass_provider = ldap ldap_uri = ldap://ldap-server.example.com/ ldap_search_base = dc=example,dc=com ldap_id_use_start_tls = True cache_credentials = True ldap_tls_cacertdir = /etc/openldap/certs ldap_tls_reqcert = allow [sssd] services = nss, pam, autofs domains = default [nss] homedir_substring = /home …
/etc/sssd/sssd.conf
에서[domain]
섹션의ldap_tls_cacert
및ldap_tls_reqcert
값을 수정하여 TLS 인증 요구 사항을 지정합니다.… cache_credentials = True ldap_tls_cacert = /etc/openldap/certs/core-dirsrv.ca.pem ldap_tls_reqcert = hard …
/etc/sssd/sssd.conf 파일에 대한 권한을 변경합니다.
# chmod 600 /etc/sssd/sssd.conf
SSSD 서비스와
oddjobd
데몬을 다시 시작하고 활성화합니다.# systemctl restart sssd oddjobd # systemctl enable sssd oddjobd
선택 사항: LDAP 서버에서 더 이상 사용되지 않는 TLS 1.0 또는 TLS 1.1 프로토콜을 사용하는 경우 클라이언트 시스템의 시스템 전체 암호화 정책을 LEGACY 수준으로 전환하여 RHEL이 이러한 프로토콜을 사용하여 통신할 수 있도록 합니다.
# update-crypto-policies --set LEGACY
자세한 내용은 RHEL 8의 Strong crypto defaults 및 Red Hat Customer Portal의 약한 암호화 알고리즘 지식 베이스 문서 및
update-crypto-policies(8)
도움말 페이지를 참조하십시오.
검증
id
명령을 사용하고 LDAP 사용자를 지정하여 LDAP 서버에서 사용자 데이터를 검색할 수 있는지 확인합니다.# id ldap_user uid=17388(ldap_user) gid=45367(sysadmins) groups=45367(sysadmins),25395(engineers),10(wheel),1202200000(admins)
시스템 관리자는 이제 id
명령을 사용하여 LDAP의 사용자를 쿼리할 수 있습니다. 명령은 올바른 사용자 ID와 그룹 멤버십을 반환합니다.