VMware Horizon View 6/7 – Smartcard Authentifizierung aktivieren

Um die Smartcard Authentifizierung des View Connection Servers zu aktivieren sind folgende Schritte notwendig.
Die Authentifizierung per Smartcard ist dann möglich bei Benutzerung von: View Horizon Client, PCoIP / Teradici, aber auch für die Administrationsoberfläche.
Zuerst muss mann ein Java Keystore anlegen in den das Root Zertifikat der eigenen Zertifizierungsstelle importiert wird.
Wenn man ein Zwischenzertifikat (Intermediate) benötigt, muss auch dieses Zertifikate importiert werden. (Einfach Schritt 1 wiederholen).

Schritt 1: Root Zertifikat in Keystore importieren

cd C:\Program Files\VMware\VMware View\Server\jre\bin
keytool.exe -import -alias ZertifikatsBeschreibung -file C:\temp\caRoot-base64.cer -keystore ..\..\sslgateway\conf\trust.key

Jetzt muss ein Passwort für den Keystore festgelegt werden. Das VMware Default Kennwort sollte hier eingetragen werden: secret
Mann kann auch ein eigenes Password wählen, dies muss dann aber auch in der locked.properties Datei eingetragen werden und bringt nicht wirklich eine höhere Sicherheit.Zusätzlich muss man dem angezeigtem, importiertem Zertifikat vertrauen (yes), damit es in den Keystore hinzugefügt wird.

Enter keystore password: secret
Re-enter new password:secret
Owner: your Certificate Information
Issuer: your Certificate Information
Serial number: your Serial Number
Valid from: Sun Jun 20 21:17:18 CEST 2010 until: Wed Jun 20 21:27:17 CEST 2040
Certificate fingerprints:
MD5:  your fingerprints
SHA1: your fingerprints
SHA256: your fingerprints
your fingerprints
Signature algorithm name: SHA1withRSA
Version: 3
Extensions:
#1: ObjectId: 1.3.6.1.4.1.311.21.1 Criticality=false
0000: 02 01 00                                           ...
#2: ObjectId: 2.5.29.19 Criticality=true
BasicConstraints:[
CA:true
PathLen:2147483647
]
#3: ObjectId: 2.5.29.15 Criticality=false
KeyUsage [
DigitalSignature
Key_CertSign
Crl_Sign
]
#4: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
.....
]
]
Trust this certificate? [no]:  yes
Certificate was added to keystore

Java Keystore erstellen

Schritt 2: locked.properties anlegen / ergänzen

Jetzt wechseln wir in das folgende Verzeichnis:

C:\Program Files\VMware\VMware View\Server\sslgateway\conf

Dort sollte sich nun unserer Keystore (trust.key) befinden. Damit der View Connection Server weiß, dass er die Datei laden soll, müssen wir nun eine neue Datei anlegen (falls nicht vorhanden) die: locked.properties heißt.
Die Datei mit Notepad editieren und mit folgenden Inhalt füllen:

trustKeyfile=trust.key
trustStoretype=jks
useCertAuth=true

Schritt 3: View Connection Server Service neustarten

Entwerder per CMD:

net stop wsbroker
net start wsbroker

Oder per services.msc
view-restart-service

Schritt 4: Smartcard Authentication innerhalb des View Administrators aktivieren

Nun muss noch im View Administrator die Smartcard Authentication aktiviert werden. Es gibt hier zwei Einstellungsmöglichkeite: Optional und Required. Bei Optional kann man sich wie wie gewohnt per User/Passwort authentifizieren. Wird eine Smartcard erkannt, wird diese aber gewählt. Bei Required ist eine Anmeldung per Smartcard verpflichtend.
Die Einstellung findet man unter: View Configuration -> Servers -> Connection Servers -> Server auswählen -> Edit -> Authentication
view-smartcard
Um zu überprüfen ob alles korrekt ist, kann man im debug log nach „useCertAuth“ suchen. Die Logs liegen unter: „C:\ProgramData\VMware\VDM\logs“

2016-09-16T13:43:50.488+02:00 DEBUG (1F48-1A98) <Front> [e] useCertAuth is configured as: false
2016-09-16T13:43:50.488+02:00 INFO (1F48-1A98) <Front> [e] Smart Card/Certificate Authentication will not be used as useCertAuth is false
bzw.
2016-09-16T14:56:15.505+02:00 DEBUG (1CD0-1D88) <Front> [e] useCertAuth is configured as: true
2016-09-16T14:56:15.505+02:00 INFO (1CD0-1D88) <Front> [e] Smart Card/Certificate Authentication enabled at gateway

Fertig 😉