SSO(Single Sign-On)를 설정하려면 몇 가지 구성 단계를 수행해야 합니다.
Horizon Single Sign-On 모듈에서는 Linux의 PAM(착탈형 인증 모듈)과 통신하며, Linux를 AD(Active Directory)에 통합하는 데 사용하는 방법에 종속되지 않습니다. Horizon SSO는 Linux를 AD와 통합하는 OpenLDAP 및 Winbind 솔루션에서 작동하는 것으로 알려져 있습니다.
기본적으로 SSO에서는 AD의 sAMAccountName 특성이 로그인 ID라고 가정합니다. OpenLDAP 또는 Winbind 솔루션을 사용하는 경우 SSO에 올바른 로그인 ID가 사용되도록 하려면 다음과 같은 구성 단계를 수행해야 합니다.
- OpenLDAP의 경우 sAMAccountName을 uid로 설정합니다.
- Winbind의 경우 구성 파일 /etc/samba/smb.conf에 다음 문을 추가합니다.
winbind use default domain = true
- OpenLDAP의 경우는 대문자로 된 짧은 도메인 이름을 사용해야 합니다.
- Winbind는 긴 도메인 이름과 짧은 도메인 이름을 모두 지원합니다.
AD는 로그인 이름에서 특수 문자를 지원하지만 Linux는 지원하지 않습니다. 그러므로 SSO를 설정할 때 로그인 이름에 특수 문자를 사용하지 마십시오.
AD에서 사용자의 UserPrincipalName(UPN) 특성과 sAMAccount 특성이 일치하지 않고 사용자가 UPN으로 로그인한 경우에는 SSO가 실패합니다. 예를 들어 AD mycompany.com에 juser 사용자가 있지만 해당 사용자의 UPN이 [email protected] 대신 [email protected]으로 설정되어 있으면 SSO는 실패합니다. 해결 방법은 사용자가 sAMAccount에 저장된 이름을 사용하여 로그인하는 것입니다. 예: juser.
- Winbind의 경우는 기본적으로 사용자 이름의 대소문자를 구분하지 않습니다.
- OpenLDAP의 경우는 Ubuntu에서 NSCD를 사용하여 사용자를 인증하며 기본적으로 대소문자를 구분하지 않습니다. RHEL 및 CentOS에서는 SSSD를 사용하여 사용자를 인증하며 기본적으로 대소문자를 구분합니다. 설정을 변경하려면 /etc/sssd/sssd.conf 파일을 편집하여
[domain/default]
섹션에 다음 줄을 추가합니다.case_sensitive = false
Linux 데스크톱에 여러 데스크톱 환경이 설치되어 있는 경우 데스크톱 환경을 참조하여 SSO와 함께 사용할 데스크톱 환경을 선택합니다.