Single Sign-On(SSO) 및 스마트 카드 리디렉션을 설정하려면 몇 가지 구성 단계를 수행해야 합니다.

Single Sign-On

Horizon View Single Sign-On 모듈에서는 Linux의 PAM(Pluggable Authentication Modules)에 연결하며, Linux를 AD(Active Directory)에 통합하는 데 사용하는 방법에 종속되지 않습니다. Horizon View SSO는 Linux를 AD와 통합하는 OpenLDAP 및 Winbind 솔루션과 작동하는 것으로 알려져 있습니다.

기본적으로 SSO에서는 AD의 sAMAccountName 특성이 로그인 ID라고 가정합니다. OpenLDAP 또는 Winbind 솔루션을 사용하는 경우 SSO에 올바른 로그인 ID가 사용되도록 하려면 다음과 같은 구성 단계를 수행해야 합니다.

  • OpenLDAP의 경우 sAMAccountNameuid로 설정합니다.

  • Winbind의 경우 구성 파일 /etc/samba/smb.conf에 다음 문을 추가합니다.

    winbind use default domain = true

사용자가 로그인할 도메인 이름을 지정해야 하는 경우에는 Linux 데스크톱에서 SSOUserFormat 옵션을 설정해야 합니다. 자세한 내용은 Linux 데스크톱의 구성 파일에서 옵션 설정의 내용을 참조하십시오. SSO는 항상 대문자로 된 짧은 도메인 이름을 사용한다는 점에 주의하십시오. 예를 들어, 도메인이 mydomain.com이면 SSO에서는 MYDOMAIN을 도메인 이름으로 사용합니다. 따라서 SSOUserFormat 옵션을 설정할 때 MYDOMAIN을 지정해야 합니다. 짧은 도메인 이름과 긴 도메인 이름에는 다음 규칙이 적용됩니다.

  • OpenLDAP의 경우는 대문자로 된 짧은 도메인 이름을 사용해야 합니다.

  • Winbind는 긴 도메인 이름과 짧은 도메인 이름을 모두 지원합니다.

AD는 로그인 이름에서 특수 문자를 지원하지만 Linux는 지원하지 않습니다. 그러므로 SSO를 설정할 때 로그인 이름에 특수 문자를 사용하지 마십시오.

AD에서 사용자의 UserPrincipalName(UPN) 특성과 sAMAccount 특성이 일치하지 않고 사용자가 UPN으로 로그인한 경우에는 SSO가 실패합니다. 해결 방법은 사용자가 sAMAccount에 저장된 이름을 사용하여 로그인하는 것입니다.

View에서는 사용자 이름의 대소문자를 구분할 필요가 없습니다. Linux 운영 체제에서 대소문자를 구분하지 않은 사용자 이름을 처리할 수 있는지 확인해야 합니다.

  • Winbind의 경우는 기본적으로 사용자 이름의 대소문자를 구분하지 않습니다.

  • OpenLDAP의 경우는 Ubuntu에서 NSCD를 사용하여 사용자를 인증하며 기본적으로 대소문자를 구분하지 않습니다. RHEL 및 CentOS에서는 SSSD를 사용하여 사용자를 인증하며 기본적으로 대소문자를 구분합니다. 설정을 변경하려면 /etc/sssd/sssd.conf 파일을 편집하여 [domain/default] 섹션에 다음 줄을 추가합니다.

    case_sensitive = false

Ubuntu16.04 또는 14.04의 경우 GNOME Flashback(Metacity) 데스크톱 환경을 사용하도록 /etc/vmware/viewagent-custom.conf 파일에서 UseGnomeFlashback=TRUE를 구성합니다.

스마트 카드 리디렉션

스마트 카드 리디렉션을 설정하려면 먼저 Linux 디스트리뷰터와 스마트 카드 벤더의 지침에 따릅니다. 그런 다음 pcsc-lite 패키지를 1.7.4로 업데이트합니다. 예를 들면, 다음 명령을 실행합니다.

#yum groupinstall "Development tools"
#yum install libudev-devel
#service pcscd stop
#wget https://alioth.debian.org/frs/download.php/file/3598/pcsc-lite-1.7.4.tar.bz2
#tar -xjvf pcsc-lite-1.7.4.tar.bz2
#cd ./pcsc-lite-1.7.4
#./configure --prefix=/usr/ --libdir=/usr/lib64/ --enable-usbdropdir=/usr/lib64/pcsc/drivers
 --enable-confdir=/etc --enable-ipcdir=/var/run  --disable-libusb --disable-serial --disable-usb
 --disable-libudev
#make
#make install
#service pcscd start

Winbind의 경우 구성 파일 /etc/samba/smb.conf에 다음 문을 추가합니다.

winbind use default domain = true

Horizon Agent를 설치할 때, 먼저 SELinux를 사용하지 않도록 설정하거나 SELinux에 대해 허용 모드를 사용해야 합니다. 구성 요소가 기본적으로 선택되지 않으므로 스마트 카드 리디렉션 구성 요소도 구체적으로 선택해야 합니다. 자세한 내용은 install_viewagent.sh 명령줄 옵션의 내용을 참조하십시오.

스마트 카드 SSO는 Horizon View 7.0.1 이상에서 사용되도록 설정됩니다. 또한 가상 시스템에 스마트 카드 리디렉션 기능이 설치되어 있는 경우에는 vSphere 클라이언트의 USB 리디렉션이 스마트 카드에서 작동하지 않습니다.

스마트 카드 리디렉션에서는 하나의 스마트 카드 판독기만 지원합니다. 두 개 이상의 판독기가 클라이언트 디바이스에 연결된 경우는 이 기능이 작동하지 않습니다.

스마트 카드 리디렉션은 카드에서 하나의 인증서만 지원합니다. 카드에 두 개 이상의 인증서가 있는 경우에는 첫 번째 슬롯에 있는 인증서가 사용되고 다른 인증서는 무시됩니다. 이는 Linux의 제한 사항입니다.

참고:
  • 스마트 카드는 다음 Winbind 값을 지원합니다. 그렇지 않은 경우 스마트 카드 SSO 및 수동 로그인이 실패합니다.

    winbind use default domain=true
  • Linux 데스크톱 스마트 카드 리디렉션에서 지원되는 Linux 클라이언트를 사용하여 PIV 카드로 브로커를 인증할 경우 SSL 오류를 방지하기 위해 ~/.vmware/view-preferences에서 Linux 클라이언트에 대한 view.sslProtocolString = "TLSv1.1" 구성을 추가해야 합니다.