RHEL 9.x/8.x 데스크톱에서 True SSO를 지원하려면 먼저 기본 VM(가상 시스템)을 AD(Active Directory) 도메인과 통합해야 합니다. 그런 다음, True SSO 기능을 지원하도록 시스템의 특정 구성을 수정해야 합니다.
이 절차의 일부 예시는 AD 도메인의 DNS 이름과 같은 네트워크 구성의 엔티티를 나타내기 위해 자리 표시자 값을 사용합니다. 다음 표에 설명된 대로 자리 표시자 값을 구성과 관련된 정보로 바꿉니다.
자리 표시자 값 |
설명 |
mydomain.com |
AD 도메인의 DNS 이름 |
MYDOMAIN.COM |
AD 도메인의 DNS 이름(모두 대문자) |
MYDOMAIN |
NetBIOS 도메인의 이름 |
dnsserver.mydomain.com |
DNS 서버의 이름 |
프로시저
- 기본 VM에서 Active Directory에 대한 네트워크 연결을 확인합니다.
realm discover "mydomain.com"
- 필요한 종속성 패키지를 설치합니다.
yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools
- AD 도메인에 가입합니다.
realm join --verbose "mydomain.com" -U administrator
- 루트 CA 인증서 또는 인증서 체인을 설치합니다.
- 다운로드한 루트 CA 인증서 또는 인증서 체인을 찾은 후 PEM 파일에 전송합니다.
openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
- 인증서를 /etc/sssd/pki/sssd_auth_ca_db.pem 파일에 복사합니다.
sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
- 다음 예시와 같이 /etc/sssd/sssd.conf 구성 파일을 수정합니다.
[sssd]
domains = "mydomain.com"
config_file_version = 2
services = nss, pam
[domain/mydomain.com]
ad_domain = "mydomain.com"
krb5_realm = "MYDOMAIN.COM"
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False #Use short name for user
fallback_homedir = /home/%u@%d
access_provider = ad
ad_gpo_map_interactive = +gdm-vmwcred #Add this line for SSO
[pam] #Add pam section for certificate logon
pam_cert_auth = True #Add this line to enable certificate logon for system
pam_p11_allowed_services = +gdm-vmwcred #Add this line to enable certificate logon for VMware Horizon Agent
[certmap/ "mydomain.com" /truesso] #Add this section and following lines to set match and map rule for certificate user
matchrule = <EKU>msScLogin
maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name}))
domains = "mydomain.com"
priority = 10
- 모드를
644
와 동일하게 설정하여 /etc/krb5.conf 구성 파일을 수정합니다.
참고: 지정된 대로
/etc/krb5.conf를 수정하지 않으면 True SSO 기능이 작동하지 않을 수 있습니다.
- (RHEL 9.x) TrueSSO가 인스턴트 클론 데스크톱 풀에서 제대로 작동하도록 하려면 다음 구성을 수정합니다.
참고: 인스턴트 클론 데스크톱 풀에 VM을 사용하지 않는 경우 이러한 구성을 건너뛸 수 있습니다.
- 명령을 실행하여 SHA-1 암호화 정책을 명시적으로 허용합니다.
update-crypto-policies --set DEFAULT:SHA1
- 이전에 다운로드한 루트 CA 인증서 또는 인증서 체인을 찾은 후 /etc/pki/ca-trust/source/anchors/ca_cert.pem으로 복사합니다. 그런 다음
update-ca-trust
명령을 사용하여 레거시 애플리케이션이 신뢰할 수 있는 인증서를 읽을 수 있도록 합니다.
cp /tmp/certificate.pem /etc/pki/ca-trust/source/anchors/ca_cert.pem
update-ca-trust
- 다음 예시와 같이 /etc/krb5.conf 파일을 수정합니다.
[realms]
MYDOMAIN.COM = {
kdc = dnsserver.mydomain.com
admin_server = dnsserver.mydomain.com
pkinit_anchors = DIR:/etc/pki/ca-trust/source/anchors
pkinit_kdc_hostname = dnsserver.mydomain.com
pkinit_eku_checking = kpServerAuth
}
[domain_realm]
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
- True SSO를 사용하도록 설정하고 Horizon Agent 패키지를 설치합니다.
sudo ./install_viewagent.sh -T yes
- 다음 줄을 포함하도록 /etc/vmware/viewagent-custom.conf 구성 파일을 수정합니다.
NetbiosDomain = "MYDOMAIN"
- VM을 다시 시작하고 다시 로그인합니다.