VMware Horizon Client for Installation and Setup Guide

VMware Horizon Client for Linux 2103 VMware Horizon Client for Linux Installation and Setup Guide

You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/

VMware, Inc. 3401 Hillview Ave. Palo Alto, CA 94304 www..com

© Copyright 2021 VMware, Inc. All rights reserved. Copyright and trademark information.

VMware, Inc. 2 Contents

VMware Horizon Client for Linux Installation and Setup Guide 6

1 System Requirements 7 System Requirements for Linux Client Systems 7 System Requirements for Horizon Client Features 9 Smart Card Authentication Requirements 9 Client Device Certificate Authentication Requirements 11 System Requirements for Serial Port Redirection 14 Requirements for Using URL Content Redirection 16 System Requirements for Real-Time Audio-Video 16 System Requirements for Scanner Redirection 17 System Requirements for Multimedia Redirection (MMR) 18 System Requirements for HTML5 Multimedia Redirection 19 Requirements for the Session Collaboration Feature 21 Requirements for Using Skype for Business with Horizon Client 21 Supported Desktop Operating Systems 22

2 Installing Horizon Client for Linux 23 Preparing Connection Server for Horizon Client 23 Install or Upgrade Horizon Client for Linux from VMware Product Downloads 25 Installation Options 28 Command-Line Installation Parameters for the Linux Client 29

3 Configuring Horizon Client for End Users 33 Common Configuration Settings 33 Using the vmware-view Command-Line Interface and Configuration Files 34 Horizon Client Configuration Settings and Command-Line Options 35 Using URIs to Configure Horizon Client 53 Syntax for Creating vmware-view URIs 54 Examples of vmware-view URIs 57 Configure VMware Blast Options 60 Configuring Cursor Event Handling 62 Configure Horizon Client Data Sharing 63 Horizon Client Data Collected by VMware 63 Configuring the Certificate Checking Mode for End Users 64 Configuring Advanced TLS Options 65 Configuring Specific Keys and Key Combinations to Send to the Local System 66 Using FreeRDP for RDP Connections 68

VMware, Inc. 3 VMware Horizon Client for Linux Installation and Setup Guide

Install and Configure FreeRDP 70 Enabling FIPS Compatible Mode 71 Configuring the PCoIP Client-Side Image Cache 71

4 Managing Remote Desktop and Published Application Connections 74 Connect to a Remote Desktop or Published Application 74 Connect to Published Applications Using Unauthenticated Access 77 Share Local Folders and Drives 78 Share Folders by Editing a Configuration File 80 Setting the Certificate Checking Mode in Horizon Client 81 Switch Remote Desktops or Published Applications 82 Log Off or Disconnect 83

5 Working in a Remote Desktop or Published Application 85 Feature Support for Linux Clients 85 Supported Languages 87 Keyboards and Monitors 87 Use Display Scaling 89 Using DPI Synchronization 90 Select Specific Monitors to Display Published Applications 92 Customize the Display Resolution and Display Scaling for a Remote Desktop 93 Configure Lock Key Synchronization 94 Keyboard Input Source Language Synchronization 95 Use an Input Method Editor with Published Applications 96 Improve Mouse Performance in a Remote Desktop 96 Use USB Redirection to Connect USB Devices 97 USB Redirection Limitations 100 Using Serial Port Redirection 101 Using Scanners 103 Using Webcams and Microphones 104 When You Can Use a Webcam with the Real-Time Audio-Video Feature 105 Select a Default Microphone on a Linux Client System 105 Select a Preferred Webcam or Microphone on a Linux Client System 106 Sharing Remote Desktop Sessions 109 Invite a User to Join a Remote Desktop Session 110 Manage a Shared Remote Desktop Session 112 Join a Remote Desktop Session 112 Use Multiple Sessions of a Published Application From Different Client Devices 113 Using the Seamless Window Feature 114 Saving Documents in a Published Application 114 Printing from a Remote Desktop 115

VMware, Inc. 4 VMware Horizon Client for Linux Installation and Setup Guide

Set Printing Preferences for the VMware Integrated Printing Feature 115 Printing From a Remote Desktop to a Local USB Printer 116 Copying and Pasting Text 117 Configuring the Client Clipboard Memory Size 117 Logging Copy and Paste Activity 118

6 Configuring USB Redirection on the Client 119 System Requirements for USB Redirection 119 USB-Specific Log Files 119 Setting USB Configuration Properties 120 USB Device Families 125

7 Troubleshooting Horizon Client 127 Restart a Remote Desktop 127 Reset Remote Desktops or Published Applications 128 Uninstall Horizon Client for Linux 129 Collect Horizon Client Log Information 130 Problems with Keyboard Input 131 Connecting to a Server in Workspace ONE Mode 132

VMware, Inc. 5 VMware Horizon Client for Linux Installation and Setup Guide

This document, VMware Horizon Client for Linux Installation and Setup Guide, provides ® information about installing, configuring, and using VMware Horizon Client™ software on a Linux client system.

The information in this document includes system requirements and instructions for installing and using Horizon Client for Linux.

Note This document does not include instructions for installing the Linux on a client system. For information about installing Linux, refer to the instructions provided by the maker of your Linux distribution.

This information is intended for administrators who need to set up a Horizon deployment that includes Linux client systems. The information is written for experienced system administrators who are familiar with technology and data center operations.

Note This document pertains mostly to the Horizon Client for Linux that VMware makes available. In addition, several VMware partners offer thin and zero client devices for Horizon deployments. The features that are available for each thin or zero client device, and the operating systems supported, are determined by the vendor, the model, and the configuration that an enterprise chooses to use. For information about the vendors and models for these client devices, see the VMware Compatibility Guide, available on the VMware website.

VMware, Inc. 6 System Requirements 1

Client systems must meet certain hardware and software requirements.

This chapter includes the following topics: n System Requirements for Linux Client Systems n System Requirements for Horizon Client Features n Requirements for Using Skype for Business with Horizon Client n Supported Desktop Operating Systems

System Requirements for Linux Client Systems

The Linux device on which you install Horizon Client, and the peripherals it uses, must meet certain system configurations that have been tested and are officially supported by VMware.

Note These system requirements pertain to the Horizon Client for Linux that VMware makes available. In addition, several VMware partners offer thin and zero client devices for VMware Horizon deployments. The vendor and model of the thin or zero client device, and the configuration that an enterprise chooses to use, determine the features available for each client device and the operating systems supported. For information about the vendors and models for these client devices, see the VMware Compatibility Guide, available on the VMware website.

Architecture x64, ARM (for devices only)

Memory At least 2 GB of RAM

Operating system

Horizon Client for Linux has been tested on the following operating systems for this release.

VMware, Inc. 7 VMware Horizon Client for Linux Installation and Setup Guide

Operating System Version

Ubuntu 64-bit 18.04, 20.04

Red Hat Enterprise Linux (RHEL) 64-bit 7.7, 7.8, 7.9, 8.0, 8.1, 8.2, 8.3

Note On RHEL 8.x systems, Horizon Client only supports the X11 display server protocol. The Wayland display server protocol is not supported.

OpenSSL requirement

Horizon Client requires a specific version of OpenSSL. The correct version is automatically downloaded and installed.

Horizon Connection Server, Security Server, and Horizon Agent Horizon Client requires the latest maintenance release of one of the following:

n Horizon 2006 or later

n Horizon 7 version 7.5 or later

If client systems connect from outside the corporate firewall, it is good practice for you to use a Unified Access Gateway appliance or security server. With a Unified Access Gateway appliance or security server, client systems do not require a VPN connection.

Note Security servers are not supported in Horizon 2006 or later.

Display protocol

n VMware Blast

n PCoIP

n RDP

Screen resolution on the client system Minimum: 1024 X 768 pixels

Hardware requirements for VMware Blast and PCoIP

n x64-based processor with SSE2 extensions, with an 800 MHz or faster processor speed

n Available RAM above system requirements to support various monitor setups. Use the following formula as a general guide:

20 MB + (24 * (# monitors) * (monitor width) * (monitor height))

As a rough guide, you can use the following calculations:

1 monitor: 1600 x 1200: 64 MB 2 monitors: 1600 x 1200: 128 MB 3 monitors: 1600 x 1200: 256 MB

VMware, Inc. 8 VMware Horizon Client for Linux Installation and Setup Guide

Hardware requirements for RDP

n x64-based processor with SSE2 extensions, with an 800 MHz or faster processor speed

n 128 MB RAM

Software requirements for RDP

Use the latest rdesktop version available.

Software requirements for FreeRDP If you plan to use an RDP connection to Horizon desktops and you prefer to use a FreeRDP client for the connection, you must install the correct version of FreeRDP and any applicable patches. See Install and Configure FreeRDP.

Other software requirements

Horizon Client also has certain other software requirements, depending on the Linux distribution you use. Allow the Horizon Client installation wizard to scan your system for library compatibilities and dependencies. The following list of requirements pertains only to Ubuntu distributions.

n libudev.so.0

Note libudev0 is required to run Horizon Client. By default, libudev0 is not installed in some systems.

n To support idle session timeouts: libXsso.so.1.

n To improve performance when using multiple monitors, enable Xinerama.

System Requirements for Horizon Client Features

Horizon Client features have specific hardware and software requirements.

Smart Card Authentication Requirements

Client devices that use a smart card for user authentication must meet certain requirements.

Client Hardware and Software Requirements Each client device that uses a smart card for user authentication must have the following hardware and software. n Horizon Client n A compatible smart card reader n Smart card reader driver n Smart card driver n Product-specific application drivers

VMware, Inc. 9 VMware Horizon Client for Linux Installation and Setup Guide

Users that authenticate with smart cards must use a supported smart card type with the corresponding middleware, as described in the following section. Each smart card must also contain a user certificate.

Requirements for Smart Card Type and Middleware Horizon Client supports the following combinations of smart cards and smart card middleware.

Smart Card Type Manufacturer Client-side Middleware Agent-side Middleware

Personal Identity Verification NIST OpenSC PKCS11 module ActivClient 7.x (PIV) Card

IDprime .NET Card Gemalto Gemalto .NET PKCS11 Gemalto .NET minidriver library (libgtop11dotnet.so)

Remote Desktop and Published Application Software Requirements A Horizon administrator must install product-specific application drivers on the virtual desktops or RDS host.

Enabling the User Name Hint Text Box in Horizon Client In some environments, smart card users can use a single smart card certificate to authenticate to multiple user accounts. Users enter their user name in the Username hint text box when they sign in with a smart card.

To make the Username hint text box appear on the Horizon Client login dialog box, you must enable the smart card user name hints feature in Connection Server. For information about enabling the smart card user name hints feature, see the Horizon Administration document.

If your environment uses a Unified Access Gateway appliance for secure external access, you must configure the Unified Access Gateway appliance to support the smart card user name hints feature. The smart card user name hints feature is supported only with Unified Access Gateway 2.7.2 and later. For information about enabling the smart card user name hints feature in Unified Access Gateway, see the Deploying and Configuring VMware Unified Access Gateway document.

Horizon Client continues to support single-account smart card certificates even when the smart card user name hints feature is enabled.

Additional Smart Card Authentication Requirements In addition to meeting the smart card requirements for Horizon Client systems, other Horizon components must meet certain configuration requirements to support smart cards.

Connection Server and security server hosts An administrator must add all applicable Certificate Authority (CA) certificate chains for all trusted user certificates to a server truststore file on the Connection Server host or, if a security server is used, on the security server host. These certificate chains include root

VMware, Inc. 10 VMware Horizon Client for Linux Installation and Setup Guide

certificates and, if an intermediate certificate authority issues the user's smart card certificate, must also include intermediate certificates.

For information about configuring Connection Server to support smart card use, see the Horizon Administration document.

Unified Access Gateway appliances For information about configuring smart card authentication on a Unified Access Gateway appliance, see the Deploying and Configuring VMware Unified Access Gateway document.

Active Directory For information about tasks that an administrator might need to perform in Active Directory to implement smart card authentication, see the Horizon Administration document.

Configure Horizon Client for Smart Card Authentication You must perform certain configuration steps to use a smart card in Horizon Client.

Prerequisites n Install Horizon Client. n (Optional) To make the Username hint field appear in the Horizon Client login dialog box, enable the smart card user name hints feature in Connection Server. For more information, see "Setting Up Smart Card Authentication" in the Horizon Administration document.

Procedure

1 Create the folder /usr/lib/vmware/view/pkcs11.

2 Create a symbolic link to the pkcs11 library, which is used for smart card authentication.

For example, run the following command:

sudo ln -s /usr/lib64/pkcs11/opensc-pkcs11.so /usr/lib/vmware/view/pkcs11/libopenscpkcs11.so

Note Make sure that the symbolic link name to the opensc-pkcs11 library begins with lib.

Client Device Certificate Authentication Requirements

With the client device certificate authentication feature, you can set up certificate authentication for client systems to Horizon Client for Linux. Unified Access Gateway authenticates the client systems. The SoftHSM2 library manages the distribution and deployment of certificates to the client system. After successful device authentication, the user must still perform user authentication.

VMware, Inc. 11 VMware Horizon Client for Linux Installation and Setup Guide

Prerequisites This feature has the following requirements. n Unified Access Gateway 2.6 or later n Horizon 7 version 7.5 or later n Client system is equipped with a root Certification Authority (CA) certificate that Unified Access Gateway accepts

For information about configuring Unified Access Gateway, see the Unified Access Gateway Documentation.

Set up the Linux Client System for Device Certificate Authentication To set up device certificate authentication, you must perform these high-level tasks: n Install the SoftHSM2 library on the system. n Create a cryptographic token for the SoftHSM2 library. n Prepare the device certificate and public and private keys. n Import the certificate and keys file into the SoftHSM2 database. n Configure the SoftHSM2 library for use by Horizon Client.

The following procedure provides guidelines for completing the setup on a general Linux client system. Specific steps might vary depending on your Linux distribution.

Note Device certificate authentication is also supported on thin clients running Becrypt Paradox. For setup information, refer to the documentation for Becrypt Paradox.

1 Install the SoftHSM2 library on the Linux client system using one of the following methods.

a Method 1: Use package management tools.

For example, on an Ubuntu system you can run the following command.

sudo apt-get install softhsm2

b Method 2: Compile and install the SoftHSM2 library manually.

1 Clone the SoftHSM2 source code repository to the system.

git clone https://github.com/opendnssec/SoftHSMv2.git

VMware, Inc. 12 VMware Horizon Client for Linux Installation and Setup Guide

2 Compile, configure, and install the SoftHSM2 library from the cloned source code.

Note Horizon Client installs its own OpenSSL library and also consumes the OpenSSL library that is linked to SoftHSM2. To avoid conflict during runtime, ensure that you link SoftHSM2 to the same OpenSSL library installed by Horizon Client.

In the following command example, the should contain the "include" and "lib" path.

cd SoftHSMv2/ sh autogen.sh ./configure --with-crypto-backend=openssl --with-openssl= make sudo make install

2 Create a cryptographic token for the SoftHSM2 library.

By default, SoftHSM2 has one token slot. When you initialize a token in the first slot, a second slot is automatically added. Subsequent slots are added as you initialize a new token in each slot.

a Run the command to create the token.

softhsm2-util --init-token --slot 0 --label ""

b Make a note of the slot ID returned by the token creation command. You will need this slot ID later when you import X.509 device certificate and key files into the SoftHSM2 database.

3 Prepare the X.509 device certificate and public and private keys.

a Get the device certificate in PFX format which contains the private key.

b Convert the PFX file to a keys file in PEM format. For example, the following command transforms client.pfx to client-keys.pem.

openssl pkcs12 -in client.pfx -nocerts -nodes -out client-keys.pem

c Convert the PEM keys file to a PKCS8 keys file.

openssl pkcs8 -in client-keys.pem -topk8 -nocrypt -out client-keys.pk8

d Convert the PFX file to a X.509 certificate in DER format.

openssl pkcs12 -in client.pfx -nokeys -nodes -out client-cert.pem openssl x509 -outform der -in client-cert.pem -out client-cert.der

4 Import the X.509 certificate and keys file into the SoftHSM2 certificate database.

a Import the keys file into the SoftHSM2 database.

VMware, Inc. 13 VMware Horizon Client for Linux Installation and Setup Guide

For example, the following command imports the client-key.pk8 file. Replace and with the values you got in step 2.

softhsm2-util --import client-key.pk8 --token "" --slot --label "client" --id 0001

b Import the X.509 certificate into the SoftHSM2 database.

For example, the following command imports the client-cert.der file. Replace with the PIN required to access the SoftHSM2 database.

pkcs11-tool --module /usr/local/lib/softhsm/libsofthsm2.so -l -p --write- object client-cert.der --type cert --id 0001

c Verify that the X.509 certificate, public key, and private key are all stored in the SoftHSM2 database.

pkcs11-tool --module /usr/local/lib/softhsm/libsofthsm2.so -l -p --token-label "" --list-objects

5 Configure the SoftHSM2 library for use by Horizon Client.

sudo mkdir /usr/lib/vmware/view/pkcs11 sudo ln -s /usr/local/lib/softhsm/libsofthsm2.so /usr/lib/vmware/view/pkcs11/libsofhsm2.so

FIPS Compliance Mode Support If you want to use device certificate authentication in an environment that is compliant with the Federal Information Processing Standard (FIPS), first complete the steps described in Enabling FIPS Compatible Mode. Then perform the setup procedure described in the previous section, Set up the Linux Client System for Device Certificate Authentication, with the following modification.

To compile the SoftHSM2 library with FIPS Compliance Mode, run the following sequence of commands.

cd SoftHSMv2/ sh autogen.sh ./configure --with-crypto-backend=openssl --with-openssl= --enable-fips make sudo make install

Note If you encounter missing header issues during the compile, you can download the source code for FIPS-related headers from www.openssl.org/source/. Copy the headers into the path to the OpenSSL library and repeat the command sequence to compile the SoftHSM2 library with FIPS Compliance Mode.

System Requirements for Serial Port Redirection

With the serial port redirection feature, end users can redirect locally connected serial (/dev/ttyS) ports, such as built-in RS232 ports or USB-to-Serial adapters, to their remote desktops. To

VMware, Inc. 14 VMware Horizon Client for Linux Installation and Setup Guide support serial port redirection, your Horizon deployment must meet certain software and hardware requirements.

Published desktops on RDS hosts The RDS host that hosts published desktops must have Horizon Agent 7.6 or later installed with the Serial Port Redirection setup option selected. This setup option is deselected by default.

The following operating systems are supported for published desktops.

n Windows Server 2012 R2

n Windows Server 2016

n Windows Server 2019

You do not need to install serial port device drivers in the RDS host.

Virtual desktops Virtual desktops must have Horizon Agent 7.9 or later installed with the Serial Port Redirection setup option selected. This setup option is deselected by default.

The following operating systems are supported for virtual desktops.

n Windows 10

You do not need to install serial port device drivers on the virtual desktop.

Horizon Client computer or client access device The serial port redirection feature is supported on Linux systems that are supported for this release. Any required serial port device drivers must be installed and the serial port must be operable.

Nested sessions The serial port redirection feature is supported in published applications that are started from Horizon Client inside published desktops (nested sessions). Horizon Client 4.10 or later must be installed in the published desktops. The serial port redirection feature has the following limitations when used in a nested session.

n The number of concurrent users is limited.

n Users must use matched client and agent versions, for example, Horizon Client 2006 and Horizon Agent 2006.

Display protocols

n VMware Blast

n PCoIP (requires Horizon Agent 7.9 or later)

VMware, Inc. 15 VMware Horizon Client for Linux Installation and Setup Guide

Requirements for Using URL Content Redirection

With the URL Content Redirection feature, URL content can be redirected from the client machine to a remote desktop or published application (client-to-agent redirection), or from a remote desktop or published application to the client machine (agent-to-client redirection).

For example, an end user can click a link in the native Firefox browser on the client and the link opens in the remote Internet Explorer browser, or an end user can click a link in the remote Internet Explorer browser and the link opens in the native Firefox browser on the client machine. Any number of protocols can be configured for redirection, including HTTP, mailto, and callto.

A Horizon administrator must also configure settings that specify how Horizon Client redirects URL content from the client to a remote desktop or published application, or how Horizon Agent redirects URL content from a remote desktop or published application to the client.

For complete information, see the "Configuring URL Content Redirection" topic in the Configuring Remote Desktop Features in Horizon document.

System Requirements for Real-Time Audio-Video

Real-Time Audio-Video works with standard webcam, USB audio, and analog audio devices. The feature also works with standard conferencing applications. To support Real-Time Audio-Video, your Horizon deployment must meet certain software and hardware requirements.

Virtual desktops

When using Microsoft Teams with Real-Time Audio-Video, virtual desktops must have a minimum of 4 vCPUs and 4 GB of RAM.

Horizon Client computer or client access device

n Real-Time Audio-Video is supported on all operating systems that run Horizon Client for Linux on x64 devices. This feature is not supported on ARM processors. The client system must meet the following minimum hardware requirements.

Resolution Frame Rate CPU Required Memory

320 x 240 15 FPS 2 core, 1800 MHz 105 MB

640 x 480 15 FPS 2 core, 2700 MHz 150 MB

1280 x 720 15 FPS 4 core, 3400 MHz 210 MB

n Horizon Client requires the following libraries:

n Video4Linux2

n libv4l

n Pulse Audio

VMware, Inc. 16 VMware Horizon Client for Linux Installation and Setup Guide

The plug-in file (/usr/lib/pcoip/vchan_plugins/libviewMMDevRedir.so) has the following dependencies:

libuuid.so.1 libv4l2.so.0 libspeex.so.1 libudev0 libtheoradec.so.1 libtheoraenc.so.1 libv4lconvert.so.0 libjpeg.so.8

All these files must be present on the client system or the Real-Time Audio-Video feature does not work. These dependencies are in addition to the dependencies required for Horizon Client itself.

n The webcam and audio device drivers must be installed, and the webcam and audio device must be operable, on the client computer. You do not need to install the device drivers on the machine where the agent is installed.

Display protocols

n PCoIP

n VMware Blast

System Requirements for Scanner Redirection

End users can scan information into remote desktops with scanners that are connected to their local client systems. They can control scanner settings by selecting options in the remote desktop interface. To use this feature, the remote desktops and client computers must meet certain system requirements.

Remote desktops

Remote desktops must have Horizon Agent 7.8 or later, installed with the Scanner Redirection setup option selected, on the parent or template virtual machines or RDS hosts. On Windows desktop and Windows Server guest operating systems, the Horizon Agent Scanner Redirection setup option is deselected by default.

For information about which guest operating systems are supported for virtual desktops and RDS hosts, and for information about configuring scanner redirection in remote desktops, see "Configure Scanner Redirection" in the Configuring Remote Desktop Features in Horizon document.

Horizon Client computer or client access device The client computer must be connected to a scanner compatible with the SANE scanner interface standard. The SANE scanner device drivers must be installed, and the scanner must be operable, on the client computer. You do not need to install the scanner device drivers on the remote desktop operating system where the agent is installed.

VMware, Inc. 17 VMware Horizon Client for Linux Installation and Setup Guide

Scanning device standard SANE

Display protocols

n PCoIP

n VMware Blast

Scanner redirection is not supported in RDP desktop sessions.

System Requirements for Multimedia Redirection (MMR)

With multimedia redirection (MMR), the multimedia stream is decoded on the client system. The client system plays the media content so that the load on the ESXi host is reduced.

Remote desktops For information about operating system requirements and other software requirements and configuration settings, see the topics about Windows Media Multimedia Redirection in the Configuring Remote Desktop Features in Horizon document.

Horizon Client computer or client access device

Because MMR offloads media processing from the server to the client, the client has the following minimum hardware requirements.

Processor: Intel Pentium 4 or AMD Athlon dual-core

Processor speed: 1.5 GHz for common case, or 1.8 GHz for Full HD

Memory: 2 GB RAM

Video adapter: Hardware accelerated

To avoid video playback issues, install one of the following libraries:

n GStreamer core library and gstreamer-libav 1.0

n GStreamer core library and fluendo 1.0

Supported media formats Media formats that Windows Media Player supports, for example: M4V; MOV; MP4; WMP; MPEG-4 Part 2; WMV 7, 8, and 9; WMA; AVI; ACE; MP3; WAV. MP3 is not supported when using MMS and RTSP.

Note DRM-protected content is not redirected through Windows Media MMR.

GStreamer Framework

VMware, Inc. 18 VMware Horizon Client for Linux Installation and Setup Guide

Set up the GStreamer environment such that the framework consists of the graphics card, hardware acceleration API, and GStreamer plug-in that allow GStreamer to function properly. Table 1-1. GStreamer Framework Setup lists the different possible setup combinations. To ensure the best possible environment, set up your GStreamer environment using the information in Table 1-1. GStreamer Framework Setup for the NVIDIA and Intel graphic cards.

Table 1-1. GStreamer Framework Setup

Graphics Card (including Driver) Hardware Accelerator API GStreamer Plug-in

NVIDIA VDPAU (libvdpau.so) vdpau

Intel VAAPI (libvaapi.so) gstreamer-vaapi

-- OpenMax gst-omx

-- DCE gstreamer-ducati

AMD OVD/UVD Unavailable

To get more detailed information, see https://gstreamer.freedesktop.org/documentation/ tutorials/playback/hardware-accelerated-video-decoding.html.

MMR is not enabled by default. To enable it, you must set the configuration option view.enableMMR. For more information, see Horizon Client Configuration Settings and Command- Line Options.

System Requirements for HTML5 Multimedia Redirection

Horizon Agent and Horizon Client, and the remote desktops and client systems on which you install the agent and client software, must meet certain requirements to support the HTML5 Multimedia Redirection feature.

With HTML5 Multimedia Redirection, if an end user uses the Google Chrome or Microsoft Edge browser in a remote desktop, HTML5 multimedia content is sent to the client system. The client system plays the multimedia content, which reduces the load on the ESXi host, and the end user has a better audio and video experience.

Remote desktop

n Horizon Agent must be installed on the virtual desktop or RDS host for published desktops with the HTML5 Multimedia Redirection custom setup option selected. Beginning with Horizon Agent 7.10, the HTML5 Multimedia Redirection custom setup option is removed and HTML5 Multimedia Redirection is installed by default. For more information, see the topics about installing Horizon Agent in the Setting Up Virtual Desktops in Horizon and Setting Up Published Desktops and Applications in Horizon documents.

n The HTML5 Multimedia Redirection group policy settings must be configured on the Active Directory server. See the topics about configuring HTML5 Multimedia Redirection in the Configuring Remote Desktop Features in Horizon document.

VMware, Inc. 19 VMware Horizon Client for Linux Installation and Setup Guide

n The Chrome or Edge browser must be installed.

n The VMware Horizon HTML5 Multimedia Redirection extension must be installed in the Chrome or Edge browser. See the topics about configuring HTML5 Multimedia Redirection in the Configuring Remote Desktop Features in Horizon document.

Client system

n Client systems running RHEL 7.9 are not supported.

n The HTML5 Multimedia Redirection Support custom setup option must be selected when you install Horizon Client. This option is selected by default.

n GNU C Library (glibc) version 2.14 or later must be installed on the client system.

Display protocol for the remote session

n PCoIP

n VMware Blast

TCP port HTML5 Multimedia Redirection uses port 9427.

Limitations The HTML5 Multimedia Redirection feature has the following limitations.

n The Horizon Client relative mouse feature is not supported.

n You cannot use Mute site (Chrome browser) or Mute tab (Edge browser) to mute redirected video content.

n To use HTML5 Multimedia Redirection from Chrome on a Linux client system, open at most one Chrome browser published by an RDS host. HTML5 Multimedia Redirection does not work properly if you open an additional Chrome browser published by another RDS host.

n If you encounter slow performance when playing redirected multimedia content on a Linux client system that uses lower-capacity thin client hardware, you can optimize the system performance as described here. Add the entrydisableGPU.html5mmr=true to one of the following three configuration files. The configuration files are processed in the listed order:

a /usr/lib/vmware/config

b /etc/vmware/config

c ~/.vmware/config

VMware, Inc. 20 VMware Horizon Client for Linux Installation and Setup Guide

Requirements for the Session Collaboration Feature

With the Session Collaboration feature, users can invite other users to join an existing remote desktop session. To support the Session Collaboration feature, your Horizon deployment must meet certain requirements.

Session collaborators To join a collaborative session, a user must have Horizon Client for Windows, Mac, or Linux installed on the client system, or must use HTML Access.

Windows remote desktops The Session Collaboration feature must be enabled at the desktop pool or farm level. For information about enabling the Session Collaboration feature for desktop pools, see the Setting Up Virtual Desktops in Horizon document. For information about enabling the Session Collaboration feature for a farm, see the Setting Up Published Desktops and Applications in Horizon document. You can use Horizon Agent group policy settings to configure the Session Collaboration feature. For information, see the Configuring Remote Desktop Features in Horizon document.

Linux remote desktops For Linux remote desktop requirements, see the Setting Up Linux Desktops in Horizon document.

Connection Server The Session Collaboration feature requires that the Connection Server instance uses an Enterprise license.

Display protocols VMware Blast

The Session Collaboration feature does not support published application sessions.

Requirements for Using Skype for Business with Horizon Client

An end user can run Skype for Business inside a virtual desktop without negatively affecting the virtual infrastructure and overloading the network. During Skype audio and video calls, all media processing takes place on the client machine instead of in the virtual desktop.

To use this feature, you must install the VMware Pack for Skype for Business feature on the client machine during the Horizon Client for Linux installation. For information, see Installation Options .

A Horizon administrator must also install the VMware Virtualization Pack for Skype for Business feature on the virtual desktop when Horizon Agent is installed. For information about installing Horizon Agent, see the Setting Up Virtual Desktops in Horizon document.

VMware, Inc. 21 VMware Horizon Client for Linux Installation and Setup Guide

For complete requirements, see "Configure Skype for Business" in the Configuring Remote Desktop Features in Horizon document.

Supported Desktop Operating Systems

A Horizon administrator creates virtual machines that have a guest operating system and installs agent software in the guest operating system. End users can log in to these virtual machines from a client device.

For a list of the supported Windows guest operating systems, see the Horizon Installation document.

Some Linux guest operating systems are also supported. For information about system requirements, configuring Linux virtual machines, and a list of supported features, see the Setting Up Linux Desktops in Horizon document.

VMware, Inc. 22 Installing Horizon Client for Linux 2

The process of installing Horizon Client on a Linux system is like installing most other applications.

For step-by-step installation instructions, see Install or Upgrade Horizon Client for Linux from VMware Product Downloads.

This chapter includes the following topics: n Preparing Connection Server for Horizon Client n Install or Upgrade Horizon Client for Linux from VMware Product Downloads

Preparing Connection Server for Horizon Client

Before end users can connect to a server and access a remote desktop or published application, a Horizon administrator must configure certain Connection Server settings.

Unified Access Gateway and Security Servers

If your VMware Horizon deployment includes a Unified Access Gateway appliance, configure Connection Server to work with Unified Access Gateway. See the Deploying and Configuring VMware Unified Access Gateway document. Unified Access Gateway appliances perform the same role as security servers.

If your VMware Horizon deployment includes a security server, verify that you are using the latest maintenance releases of Connection Server 7.5 and Security Server 7.5 or later releases. For more information, see the installation document for your Horizon version.

Note Security servers are not supported in VMware Horizon 2006 and later.

Secure Tunnel Connection

If you plan to use a secure tunnel connection for client devices, and if the secure connection is configured with a DNS host name for a Connection Server instance or a security server, verify that the client device can resolve this DNS name. .

VMware, Inc. 23 VMware Horizon Client for Linux Installation and Setup Guide

Desktop and Application Pools

Use the following check list when configuring desktop and application pools. n Verify that a desktop or application pool has been created and that the user account that you plan to use is entitled to access the pool. For more information, see the Setting Up Virtual Desktops in Horizon and Setting Up Published Desktops and Applications in Horizon documents.

User Authentication

Use the following check list when setting up user authentication. n To provide end users with unauthenticated access to published applications in Horizon Client, you must enable this feature in the Connection Server instance. For more information, see the topics about unauthenticated access in the Horizon Administration document. n To use two-factor authentication, such as RSA SecurID or RADIUS authentication, with Horizon Client, you must enable the two-factor authentication feature for the Connection Server instance. Beginning with Horizon 7 version 7.11, you can customize the labels on the RADIUS authentication login page. Beginning with Horizon 7 version 7.12, you can configure two-factor authentication to occur after a remote session times out. For more information, see the topics about two-factor authentication in the Horizon Administration document. n To hide the server URL in Horizon Client, enable the Hide server information in client user interface global setting. For more information, see the Horizon Administration document. n To hide the Domain drop-down menu in Horizon Client, enable the Hide domain list in client user interface global setting. Beginning with Horizon 7 version 7.8, this setting is enabled by default. For more information, see the Horizon Administration document. n To send the domain list to Horizon Client, enable the Send domain list global setting in Horizon Console. This setting is available in Horizon 7 version 7.8 and later and is disabled by default. Earlier Horizon 7 versions send the domain list. For more information, see the Horizon Administration document.

The following table shows how the Send domain list and Hide domain list in client user interface global settings determine how users can log in to the server.

VMware, Inc. 24 VMware Horizon Client for Linux Installation and Setup Guide

Send domain list Hide domain list in client setting user interface setting How users log in

Disabled (default) Enabled The Domain drop-down menu is hidden. Users must enter one of the following values in the User name text box. n User name (not allowed for multiple domains) n domain\username n [email protected]

Disabled (default) Disabled If a default domain is configured on the client, the default domain appears in the Domain drop-down menu. If the client does not know a default domain, *DefaultDomain* appears in the Domain drop-down menu. Users must enter one of the following values in the User name text box. n User name (not allowed for multiple domains) n domain\username n [email protected]

Enabled Enabled The Domain drop-down menu is hidden. Users must enter one of the following values in the User name text box. n User name (not allowed for multiple domains) n domain\username n [email protected]

Enabled Disabled Users can enter a user name in the User name text box and then select a domain from the Domain drop-down menu. Alternatively, users can enter one of the following values in the User name text box. n domain\username n [email protected]

Install or Upgrade Horizon Client for Linux from VMware Product Downloads

You can download and run a Horizon Client installer bundle from the VMware Downloads page. This installer contains modules for features such as USB redirection, Real-Time Audio-Video, smart card, and client drive redirection. To upgrade Horizon Client for Linux, you first uninstall the existing version from the client system and then run the installer bundle for the new version.

Note On most Linux distributions, the Horizon Client installer bundle starts a GUI wizard. You can also run the installer with the command-line --console parameter to start the command-line wizard.

Prerequisites n Verify that the client system runs a supported operating system. See System Requirements for Linux Client Systems. n Become familiar with the installation options. See Installation Options. n Verify that you have root access on the client system.

VMware, Inc. 25 VMware Horizon Client for Linux Installation and Setup Guide

n Verify that VMware Workstation is not installed on the client system. n If you plan to use the RDP display protocol to connect to a Horizon desktop, verify that you have the appropriate RDP client installed. See System Requirements for Linux Client Systems. n Uninstall any earlier version of the Horizon Client software. See Uninstall Horizon Client for Linux. n If you plan to use the command-line installer, become familiar with the Linux command-line installation options. See Command-Line Installation Parameters for the Linux Client. n Confirm that version 2.x or 3.x of Python is installed on the client system. If the system does not have the Python 2.x or 3.x package, run the necessary command to install it. n If you are using a thin client, confirm that libgtk 3.14 or later is installed on the system. If needed, obtain version 3.14 or later of the libgtk library and install it on the thin-client system.

As part of the installation process, the installer runs a scan of the system libraries to determine whether the system is compatible with Horizon Client, although you can select to skip the scan.

Procedure

1 On the Linux client system, download the Horizon Client installer file from the Horizon Client Product Downloads page at http://www.vmware.com/go/viewclients.

The name of the file is VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle. In the installer filename, YYMM represents the marketing version number, x.x.x represents the internal version number, and yyyyyyy represents the build number. arch represents the CPU instruction set architecture.

2 Open a Terminal window and change directories to the directory that contains the installer file.

3 If you want to set executable permissions on the installer file, run the appropriate command. For example:

chmod +x VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle

4 Run the installer using the appropriate command.

Option Command

For the GUI wizard, if you have set sudo ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle executable permissions

For the GUI wizard, if you have not sudo sh ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle set executable permissions

VMware, Inc. 26 VMware Horizon Client for Linux Installation and Setup Guide

Option Command

For the command-line installer, if sudo ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle you have set executable --console permissions

For the command-line installer, if sudo sh ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle you have not set executable --console permissions

Note In addition to --console, you can use other command-line parameters and environment variables to control installation settings such as the acceptance of the end-user license agreement and the installation of optional components. See Command-Line Installation Parameters for the Linux Client.

The installer wizard appears, prompting you to accept the end-user license agreement.

5 To finish the installation, follow the prompts to confirm the installation of optional components.

For more information about each optional component, see Installation Options.

Important You are prompted to allow the installer to register and start installed services after the installation. Allowing the installer to complete these tasks means that you do not need to manually start USB redirection services every time you reboot.

6 After installation is complete, specify whether to perform the compatibility scan for libraries that various feature components depend on.

The system scan displays a result value for each library compatibility.

Result Value Description

Success All required libraries were found.

Failed The specified library was not found. You must locate and install the required library version on the client system. For more details, refer to the documentation and support information for your Linux distribution.

Results

Log information about the installation is recorded in /tmp/vmware-root/vmware-installer- pid.log.

What to do next

Start Horizon Client and verify that you can log in to the correct virtual desktop. See Connect to a Remote Desktop or Published Application.

VMware, Inc. 27 VMware Horizon Client for Linux Installation and Setup Guide

Installation Options

During the Horizon Client installation process, you are prompted to confirm the installation of optional components. The default is to install all components.

For instructions on how to download and start the Horizon Client for Linux installer, see Install or Upgrade Horizon Client for Linux from VMware Product Downloads. For instructions on how to install Horizon Client for Linux silently using command-line parameters and environment variable settings, see Command-Line Installation Parameters for the Linux Client.

The following table provides a brief summary of each optional component.

Table 2-1. Horizon Client for Linux Installation Options

Option Description

Client Drive Lets users share folders and drives on the client computer with remote desktops and applications. Redirection Drives can include mounted drives and USB storage devices. The component files are installed in /usr/lib/vmware/view/vdpService/.

HTML5 Redirects HTML5 multimedia content from a Google Chrome or Microsoft Edge browser on the Multimedia desktop to the client machine, where the stream is processed. Redirection (HTML5MMR)

Multimedia Redirects multimedia stream from the desktop to the client machine, where the stream is processed. Redirection The component file is installed in /usr/lib/vmware/view/vdpService/. (MMR)

Real-Time Redirects webcam and audio devices that are connected to the client system so that they can be Audio-Video used on the remote desktop. The component file is installed in /usr/lib/pcoip/vchan_plugins/.

Scanner Lets users scan data into remote desktops with SANE-compliant scanners connected to their local Redirection client system. Users do not have to install additional drivers on their remote desktops. If you allow the Horizon Client installer to register and start the installed services after the installation completes successfully, the scanner redirection daemon runs automatically. Otherwise, you can start the scanner redirection daemon manually by running the following command.

# sudo /etc/init.d/ftscanhv start

Scanner redirection requires remote desktops to have Horizon Agent 7.8 or later, installed with the Scanner Redirection setup option, on the parent or template virtual machines or RDS hosts. In addition, this feature requires the PCoIP or VMware Blast display protocol. After the installation, you can configure group policy settings for this feature by following the instructions in "Configure Scanner Redirection" in the Configuring Remote Desktop Features in Horizon document.

Seamless With this feature, users can interact with an application that is running on a remote desktop as if it Window was a locally running application.

VMware, Inc. 28 VMware Horizon Client for Linux Installation and Setup Guide

Table 2-1. Horizon Client for Linux Installation Options (continued)

Option Description

Serial Port Lets end users redirect locally connected serial ports, such as built-in RS-232 ports (/dev/ttySxx) or Redirection USB-to-Serial adapters (/dev/ttyUSBxx), to their remote desktops. If you allow the Horizon Client installer to register and start the installed services after the installation completes successfully, the serial port daemon runs automatically. Otherwise, you can start the serial port daemon manually by running the following command.

# sudo /etc/init.d/ftsprhv start

To make a USB-to-Serial adapter device available for serial port redirection, deselect Connect USB Device > Automatically Connect at Startup & Automatically Connect when inserted and ensure that the USB-to-Serial adapter device is not selected under the Connect USB Device menu.

Smart Card Lets users authenticate into remote desktops with smart cards attached to their client systems when Redirection they use the VMware Blast or PCoIP display protocol. Although this option is selected in the client installer by default, this option is not selected by default when you run the Horizon Agent installer in the remote desktop. Smart card redirection is supported on remote desktops that are deployed on single-user machines and RDS hosts. The component files are installed in /usr/lib/pcoip/vchan_plugins/.

USB Gives users access to locally connected USB devices on their desktops and applications. Redirection USB redirection is supported on remote desktops and applications that are deployed on single-user machines. The component files are installed in /usr/lib/vmware/view/usb/. If you allow the installer to register and start installed services after the installation completes, the USB arbitrator daemon, vmware- USBArbitrator, runs automatically. Otherwise, you can start the daemon manually by running the following command:

# sudo /etc/init.d/vmware-USBArbitrator start

Note You can use group policy settings to disable USB redirection for specific users. For more information, see the Configuring Remote Desktop Features in Horizon document.

VMware Lets users run Skype for Business inside a virtual desktop without negatively affecting the virtual Horizon infrastructure and overloading the network. All media processing takes place on the Linux client Virtualization system, instead of in the virtual desktop, during Skype audio and video calls. Pack for Skype The component file is installed in /usr/lib/vmware/mediaprovider. for Business

VMware Lets users print to local or network printers from a Windows remote desktop without having to Integrated install additional printer drivers in the remote desktop. In addition to installing this option on the Printing client system, you must enable the VMware Integrated Printing option in the Horizon Agent installer and set policies that control VMware Integrated Printing behavior. For information about installing Horizon Agent, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document. For information about configuring policies, see the Configuring Remote Desktop Features in Horizon document.

Command-Line Installation Parameters for the Linux Client

You can use command-line installation parameters to install Horizon Client on a Linux system.

VMware, Inc. 29 VMware Horizon Client for Linux Installation and Setup Guide

For instructions on how to download the Horizon Client for Linux installer, see Install or Upgrade Horizon Client for Linux from VMware Product Downloads.

Install Horizon Client silently by using the --console parameter along with other command-line parameters and environment variable settings. With silent installation, you can efficiently deploy Horizon components in a large enterprise.

The following table lists the parameters you can use when you run the VMware-Horizon-Client- YYMM-x.x.x-yyyyyyy.arch.bundle installer file.

Table 2-2. Linux Command-Line Installation Parameters

Option Description

--help Displays usage information.

--console Enables you to use the command-line installer in a Terminal window.

--custom Shows all installation questions, even if default answers have been scripted, such as, for example, by using the --set-setting options. The default is --regular, which means show only questions that do not have a default answer.

--eulas-agreed Agrees to the end-user license agreement.

--gtk Opens the GUI-based VMware installer, which is the default option. If the GUI cannot be displayed or loaded for any reason, console mode is used.

--ignore-errors or -I Allows the installation to continue even if there is an error in one of the installer scripts. Because the section that has an error does not complete, the component might not be properly configured.

--regular Shows installation questions that have not been answered before or are required. This option is the default.

--required Shows the license agreement prompt only and then proceeds to install the client. The default is --regular, which means show only questions that do not have a default answer.

--set-setting vmware-horizon-html5mmr Installs the HTML5 multimedia redirection optional component. html5mmrEnable yes

--set-setting vmware-horizon-integrated- Installs the VMware Integrated Printing optional component. printing vmipEnable yes

--set-setting vmware-horizon-media- Installs the VMware Horizon Virtualization Pack for Skype for provider mediaproviderEnable yes Business optional component.

--set-setting vmware-horizon-mmr mmrEnable Installs the multimedia redirection (MMR) optional component. yes

--set-setting vmware-horizon-rtav Installs the Real-Time Audio-Video optional component. rtavEnable yes

--set-setting vmware-horizon-scannerclient Installs the scanner redirection optional component. scannerEnable yes

VMware, Inc. 30 VMware Horizon Client for Linux Installation and Setup Guide

Table 2-2. Linux Command-Line Installation Parameters (continued)

Option Description

--set-setting vmware-horizon- Installs the serial port redirection optional component. serialportclient serialportEnable yes

--set-setting vmware-horizon-smartcard Installs the smart card redirection optional component. smartcardEnable yes

--set-setting vmware-horizon-tsdr Installs the client drive redirection optional component. tsdrEnable yes

--set-setting vmware-horizon-usb usbEnable Installs the USB redirection optional component. yes

--stop-services Do not register and start installed services.

For a detailed description of each optional component, see Installation Options.

In addition to the parameters listed in the table, you can set the following environment variables.

Table 2-3. Linux Environment Variable Installation Settings

Variable Description

TERM=dumb Displays a basic text UI.

VMWARE_EULAS_AGREED=yes Allows you to silently accept the product EULAs.

VMIS_LOG_LEVEL=value Use one of the following values for value: n NOTSET n DEBUG n INFO n WARNING n ERROR n CRITICAL Log information is recorded in /tmp/vmware-root/vmware-installer-pid.log.

Example: Silent Installation Commands Following is an example of how to install Horizon Client silently, and, for each component, the example specifies whether to install that component.

sudo env TERM=dumb VMWARE_EULAS_AGREED=yes \

./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle --console \

--set-setting vmware-horizon-usb usbEnable no \ i --set-setting vmware-horizon-smartcard smartcardEnable no \

--set-setting vmware-horizon-rtav rtavEnable yes \

--set-setting vmware-horizon-tsdr tsdrEnable yes \

VMware, Inc. 31 VMware Horizon Client for Linux Installation and Setup Guide

--set-setting vmware-horizon-scannerclient scannerEnable yes \

--set-setting vmware-horizon-serialportclient serialportEnable yes \

--set-setting vmware-horizon-mmr mmrEnable yes \

--set-setting vmware-horizon-media-provider mediaproviderEnable yes

This next example shows how to perform a silent installation of Horizon Client using the default settings.

sudo env TERM=dumb VMWARE_EULAS_AGREED=yes \ ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle --console --required

VMware, Inc. 32 Configuring Horizon Client for End Users 3

Configuring Horizon Client for end users can involve constructing URIs, setting the certificate verification mode, modifying advanced TLS/SSL options, configuring specific keys and key combinations, setting display protocol options, and enabling FIPS Compatible mode.

This chapter includes the following topics: n Common Configuration Settings n Using the vmware-view Command-Line Interface and Configuration Files n Using URIs to Configure Horizon Client n Configure VMware Blast Options n Configuring Cursor Event Handling n Configure Horizon Client Data Sharing n Configuring the Certificate Checking Mode for End Users n Configuring Advanced TLS Options n Configuring Specific Keys and Key Combinations to Send to the Local System n Using FreeRDP for RDP Connections n Enabling FIPS Compatible Mode n Configuring the PCoIP Client-Side Image Cache

Common Configuration Settings

Horizon Client provides several configuration mechanisms that simplify the login and remote desktop selection experience for end users, and enforce security policies.

The following table shows only some of the configuration settings that you can set in one or more ways.

VMware, Inc. 33 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-1. Common Configuration Settings

Setting Mechanisms for Configuring

Server address URI, Configuration File Property, Command Line

Active Directory user name URI, Configuration File Property, Command Line

Domain name URI, Configuration File Property, Command Line

Remote desktop display name URI, Configuration File Property, Command Line

Window size URI, Configuration File Property, Command Line

Display protocol URI, Configuration File Property, Command Line

Configuring certificate checking Configuration File Property

Configuring TLS protocols and Configuration File Property, Command Line cryptographic algorithms

Using the vmware-view Command-Line Interface and Configuration Files

You can configure Horizon Client using command-line options or equivalent properties in a configuration file.

You can use the vmware-view command-line interface or set properties in configuration files to define default values your users see in Horizon Client or to suppress some dialog boxes from prompting users for information. You can also specify settings that you do not want users to change.

Processing Order for Configuration Settings

When Horizon Client starts up, configuration settings are processed from various locations in the following order:

1 /etc/vmware/view-mandatory-config

2 Command-line arguments

3 ~/.vmware/view-preferences

4 /etc/vmware/view-default-config

Note You must create the /etc/vmware/view-default-config and /etc/vmware/view- mandatory-config files manually. The ~/.vmware/view-preferences file is generated automatically after Horizon Client starts up.

If a setting is defined in multiple locations, the value that is used is the value from the last file or command-line option read. For example, to specify settings that override users' preferences, set properties in the /etc/vmware/view-mandatory-config file.

VMware, Inc. 34 VMware Horizon Client for Linux Installation and Setup Guide

To set default values that users can change, use the /etc/vmware/view-default-config file. After users change a setting, when they exit Horizon Client, any changed settings are saved in the ~/.vmware/view-preferences file.

Properties That Prevent Users from Changing Defaults

For many properties, you can set a corresponding view.allow property that controls whether users are allowed to change the setting. For example, if you set the view.allowDefaultBroker property to "FALSE" in the /etc/vmware/view-mandatory-config file, users cannot change the name of the server when they connect using Horizon Client.

Syntax for Using the Command-Line Interface

Use the following form of the vmware-view command from a terminal window. vmware-view [command-line-option [argument]] ...

By default, the vmware-view command is located in the /usr/bin directory.

You can use either the short form or the long form of the option name, although not all options have a short form. For example, to specify the domain you can use either -d (short form) or --domainName= (long form). You might choose to use the long form to make a script more human- readable.

You can use the --help option to get a list of command-line options and usage information.

Important If you must use a proxy, use the following syntax:

http_proxy=proxy_server_URL:port https_proxy=proxy_server_URL:port vmware-view options

This workaround is required because you must clear the environment variables that were previously set for the proxy. If you do not perform this action, the proxy exception setting does not take effect in Horizon Client. You configure a proxy exception for the View Connection Server instance.

Horizon Client Configuration Settings and Command-Line Options

For your convenience, almost all configuration settings have both a key=value property and a corresponding command-line option name. For some settings, there is a command-line option but no corresponding property you can set in a configuration file. For some other settings, you must set a property because no command-line option is available.

Important Some command-line options and configuration keys are available only with the version of Horizon Client provided by third-party vendors. For more information about VMware thin-client and zero-client partners, see the VMware Compatibility Guide at http:// www.vmware.com/resources/compatibility/search.php?deviceCategory=vdm.

VMware, Inc. 35 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys

Configuration Key Command-Line Option Description

view.allMonitors --allmonitors Hides the host operating system and opens Horizon Client in full-screen mode on all monitors that are connected to the client system when Horizon Client starts. If you set the configuration key, specify "TRUE" or "FALSE". The default is "FALSE".

view.allowDefaultBroker -l, --lockServer Using this command-line option, or setting the property to "FALSE", disables the Server text box unless the client has never connected to any server, and no server address is provided in the command line or in the preferences file. For example:

--lockServer -s view.company.com

view.allowEnableHEVC None Setting this property to "FALSE" disables the client from changing the Allow High Efficiency Video Decoding (HEVC) option in the VMware Horizon Blast Configuration window.

view.autoConnectBroker None Connects to the last server used automatically unless the view.defaultBroker configuration property is set or the --serverURL= command-line option is used. Specify "TRUE" or "FALSE". Default is "FALSE". Setting this property and the view.autoConnectDesktop property to "TRUE" is the equivalent of setting the view.nonInteractive property to "TRUE".

view.autoConnectDesktop None Connects to the last remote desktop used automatically unless the view.defaultDesktop configuration property is set or the --desktopName= command-line option is used. Specify "TRUE" or "FALSE". Default is "FALSE". Setting this property and the view.autoConnectBroker property to "TRUE" is the equivalent of setting the view.nonInteractive property to "TRUE".

VMware, Inc. 36 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.autoDisconnectEmptyAppSession None When set to "TRUE" (the default), if the application session becomes empty because the user quits all applications, a message is shown to the end user. This message prompts the user to choose between disconnecting the empty session or keeping the empty session running. If set to "FALSE", the session is closed according to the timeout setting used in Horizon Console, which by default might be to disconnect after one minute.

view.autoHideToolbar None Specifies whether the toolbar is hidden or pinned automatically by default. Specify "TRUE" to hide the toolbar automatically. The default is "FALSE". This option can also be set by starting Horizon Client, selecting File > Preferences from the menu bar, and selecting the Auto- hide toolbar check box.

view.BENITServerConnectionMode None Sets the connection mode to use when connecting to a server. Use one of the following values: n "T" to force a TCP connection only. n "U" to force a UDP connection only. n "4" to force a connection using an IPv4 address. n "T4" to force a TCP connection only and use an IPv4 address. n "U4" to force a UDP connection only and use an IPv4 address. n "bypass" to use the legacy BEAT connection mode.

view.BENITTcpConnectCount None Use this value when connecting from an extremely high-loss network (greater than 20 percent packet loss). Set the default value to 12.

Important Always use this option with the view.BENITUdpSendCount configuration key.

view.BENITUdpSendCount None Use this value when connecting from an extremely high-loss network (greater than 20 percent packet loss). Set the default value to 12.

Important Always use this option with the view.BENITTcpConnectCount configuration key.

VMware, Inc. 37 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.defaultAppHeight None Specifies the default height, in pixels, of the window for published applications. Use this property and view.defaultAppWidth when specifying a custom desktop size (view.defaultAppSize property is set to "5"). The default is "480".

view.defaultAppWidth None Specifies the default width, in pixels, of the window for published applications. Use this property and view.defaultAppHeight when specifying a custom desktop size (view.defaultAppSize property is set to "5"). The default is "640".

view.defaultBroker -s, --serverURL= Adds the name that you specify to the Server text box in Horizon Client. Specify a fully qualified domain name. You can also specify a port number if you do not use the default 443. The default is the most recently used value. For example:

--serverURL=https://view.company.com -s view.company.com --serverURL=view.company.com:1443

view.defaultDesktop -n, --desktopName= Specifies which remote desktop to use when autoConnectDesktop is set to "TRUE" and the user has access to multiple remote desktops. The value specified is the name that you can see in the Select Desktop dialog box. The name is usually the desktop pool name.

view.defaultDesktopHeight None Specifies the default height of the window, in pixels, for the remote desktop. Use this property and view.defaultDesktopWidth when specifying a custom desktop size (view.defaultDesktopSize property is set to "5").

VMware, Inc. 38 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.defaultDesktopSize --desktopSize= Sets the default size of the window for the remote desktop: n To use all monitors, set the property to "1" or use the command-line argument "all". n To use full screen mode on one monitor, set the property to "2" or use the command-line argument "full". n To use a large window, set the property to "3" or use the command-line argument "large". n To use a small window, set the property to "4" or use the command-line argument "small". n To set a custom size, set the property to "5"and then also set the view.defaultDesktopWidth and view.defaultDesktopHeight properties. Alternatively, specify the width by height, in pixels, at the command line as "widthxheight". For example:

--desktopSize="1280x800" --desktopSize="all"

view.defaultDesktopWidth None Specifies the default width of the window for the remote desktop, in pixels. Use this property and view.defaultDesktopHeight when specifying a custom desktop size (view.defaultDesktopSize property is set to "5").

view.defaultDomain -d, --domainName= Sets the domain name that Horizon Client uses for all connections and adds the domain name that you specify to the Domain Name text box in the authentication dialog box.

VMware, Inc. 39 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.defaultLogLevel None Sets the log level for Horizon Client logs. Set the property to one of the following values: n "0" means include all log events. n "1" means include trace-level events and events captured for settings 2 though 6. n "2" means include debug events and events captured for settings 3 through 6. n "3" (the default) means include info-level events and events captured for settings 4 through 6. n "4" means include warning, error, and fatal events. n "5" means include error and fatal events. n "6" means include fatal events. The default is "3".

view.defaultPassword -p "-", --password="-" For VMware Blast, PCoIP, and rdesktop connections, always specify "-" to read the password from stdin. Sets the password that Horizon Client uses for all connections and if the server accepts password authentication, adds the password to the Password text box in the authentication dialog box.

Note You cannot use a blank password. That is, you cannot specify --password="".

view.defaultProtocol --protocol= Specifies which display protocol to use. Specify "PCOIP" or "BLAST" or "RDP". These values are case-sensitive. For example, if you enter rdp, the protocol used is the default. Default is the setting specified in Horizon Console, under pool settings for the pool. If you use RDP and you want to use FreeRDP rather than rdesktop, you must also use the rdpClient setting.

view.defaultUser -u, --userName= Sets the user name that Horizon Client uses for all connections and adds the user name that you specify to the User Name text box in the authentication dialog box. For kiosk mode, the account name can be based on the client's MAC address, or it can begin with a recognized prefix string, such as custom-.

VMware, Inc. 40 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.enableDataSharing None Specifies whether Horizon Client is allowed to share anonymous data on the client system. Set the value to "TRUE" or "FALSE". The default is "TRUE".

view.enableDisplayScaling None Specifies whether the display scaling feature is enabled for all remote desktops. Set the value to "TRUE" or "FALSE". When this setting is set to "FALSE", the display scaling feature is disabled for all remote desktops. If this setting is not configured or is set to "TRUE" (the default setting), display scaling is enabled for all remote desktops.

view.enableH264 None Enables or disables H.264 decoding. Specify "TRUE" or "FALSE". The default is "TRUE". For more information, see Configure VMware Blast Options.

view.enableHEVC None Enables or disables HEVC decoding. Specify "TRUE" or "FALSE". The default is "FALSE". For more information, see Configure VMware Blast Options.

view.enableMMR None Enables or disables multimedia redirection (MMR). Specify "TRUE" or "FALSE". The default is "FALSE".

view.enableRelativeMouse None Specifies whether to force enable or disable the Horizon Client relative mouse feature for the current remote desktop session. If you set the configuration key, specify "1" to force enable the feature and "0" to force disable it. Any other values are invalid and ignored. The specified value cannot be edited during the current remote desktop session. If the remote desktop does not support the relative mouse, this setting is not used. If this setting is not configured (the default setting), end users can enable and disable the relative mouse feature using Connection > Enable Relative Mouse from the Horizon Client menu bar.

VMware, Inc. 41 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.enableSyncDesktopLayout None Specifies whether to synchronize the display resolution and scaling of remote desktops to the values stored on the Connection Server. For more information, see Customize the Display Resolution and Display Scaling for a Remote Desktop. n Specifying "TRUE" synchronizes the display resolution and scaling to the values stored on the Connection Server. Client users are unable to customize the display resolution and scaling of remote desktops. n Specifying "FALSE" sets the display resolution and scaling to the values stored on the local client system. Client users can customize the display resolution and scaling of remote desktops. The default is "TRUE".

view.fullScreen --fullscreen Hides the host operating system and opens Horizon Client in full-screen mode on one monitor. This option does not affect the screen mode of the remote desktop session. If you are setting the configuration key, specify "TRUE" or "FALSE". The default is "FALSE".

view.ipProtocolUsage None Specifies the network protocol to use when connecting to a Horizon Connection Server: n To use IPv4, set the property to "ipv4". n To use IPv6, set the property to "ipv6". n To have Horizon Client detect the availability of both IPv4 and IPv6 networks and automatically select the most suitable option, set the property to "dual". The default is "dual".

VMware, Inc. 42 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.kbdLayout -k, --kbdLayout= Specifies which locale to use for the keyboard layout.

Note rdesktop uses locale codes, such as "fr" and "de", whereas freerdp uses keyboard layout IDs. For a list of these IDs, use the following command:

xfreerdp --kbd-list

Following is an example of using the command-line option for rdesktop:

--kbdLayout="en-us" -k "fr"

Following is an example of using the command-line option for freerdp:

-k "0x00010407"

view.kioskLogin --kioskLogin Specifies that Horizon Client authenticates by using a kiosk mode account. If you are setting the configuration key, specify "TRUE" or "FALSE". Default is "FALSE". For examples, see the kiosk mode example that follows this table.

None --launchMinimized Starts Horizon Client in minimized mode. The Horizon Client window remains minimized and hidden in the background while the user- specified remote desktop or published application starts.

VMware, Inc. 43 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.monitors --monitors= numbered list Allows you to specify which adjacent monitors to use for Horizon Client. Use --allmonitors (or view.allMonitors) to specify that you want to use a full screen on all monitors, and use --monitors=numbered list to specify which subset of the monitors to use. The following example shows how to specify the first and second monitors in a configuration where three monitors are set next to each other horizontally:

--allmonitors --monitors="1,2" `

To help distinguish which physical monitor is associated with a monitor icon in Horizon Client, a rectangle appears at the top-left corner of the physical monitor that you specified to use. The rectangle has the corresponding color and number that the icon for the selected monitor uses.

view.noMenuBar --nomenubar Suppresses the Horizon Client menu bar when the client is in full-screen mode, so that users cannot access menu options to log out of, reset, or disconnect from a remote desktop. Use this option when configuring kiosk mode. If you are setting the configuration key, specify "TRUE" or "FALSE". The default is "FALSE".

view.nonInteractive -q, --nonInteractive Hides unnecessary user interface steps from end users by skipping the screens that are specified in the command line or configuration properties. If you are setting the configuration key, specify "TRUE" or "FALSE". Default is "FALSE". Setting this property to "TRUE" is the equivalent of setting the view.autoConnectBroker and view.autoConnectDesktop properties to "TRUE". For example:

--nonInteractive --serverURL="https:// view.company.com" --userName="user1" --password="-" --domainName="xyz" --desktopName="Windows 10"

VMware, Inc. 44 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.once --once Specifies that you do not want Horizon Client to retry the connection if an error occurs. Specify this option if you use kiosk mode and use the exit code to handle the error. Otherwise, stopping the vmware-view process remotely might be difficult. If you are setting the configuration key, specify "TRUE" or "FALSE". The default is "FALSE".

view.rdesktopOptions --rdesktopOptions= (Available if you use the Microsoft RDP display protocol.) Specifies command-line options to forward to the rdesktop application. For information about rdesktop options, see the rdesktop documentation. For example:

--rdesktopOptions="-f -m"

None -r, --redirect= (Available if you use the Microsoft RDP display protocol.) Specifies a local device for rdesktop to redirect to the remote desktop. Specify the device information to pass to the -r option of rdesktop. You can set multiple device options in a single command. For example:

--redirect="sound:off"

view.rdpClient --rdpclient= (Available if you use the Microsoft RDP display protocol.) Specifies which type of RDP client to use. The default is rdesktop. To use FreeRDP instead, specify xfreerdp.

Note To use FreeRDP, you must have the correct version of FreeRDP installed and any applicable patches. For more information, see Install and Configure FreeRDP.

None --save Saves the user name and domain name that were last used to log in successfully so that you do not need to enter them the next time you are prompted to supply login credentials.

VMware, Inc. 45 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.sendCtrlAltDelToLocal None (Available if you use the VMware Blast or PCoIP display protocol.) When set to "TRUE", sends the key combination Ctrl+Alt+Del to the client system rather than opening a dialog box to prompt the user to disconnect from the remote desktop. The default is "FALSE".

Note If you use the Microsoft RDP display protocol, you can achieve this functionality by using the -K option; for example, vmware- view -K.

This option has the same priority as the setting in the /etc/vmware/view-keycombos- config file.

view.sendCtrlAltDelToVM None (Available if you use the VMware Blast or PCoIP display protocol.) When set to "TRUE", sends the key combination Ctrl+Alt+Del to the remote desktop rather than opening a dialog box to prompt the user to disconnect from the remote desktop. Default is "FALSE". This option has a higher priority than the setting in the /etc/vmware/view-keycombos- config file.

view.sendCtrlAltInsToVM None (Available if you use the VMware Blast or PCoIP display protocol.) When set to "TRUE", sends the key combination Ctrl+Alt+Ins to the virtual desktop rather than sending Ctrl +Alt+Del. The default is "FALSE".

Note To use this feature, you must also set the Use alternate key for sending Secure Attention Sequence agent-side group policy setting, which is available in the pcoip.adm template file. For more information, see the Configuring Remote Desktop Features in Horizon document.

This option has a lower priority than the setting in the /etc/vmware/view-keycombos- config file.

view.shareRemovableStorage None When set to "TRUE", enables the Allow access to removable storage option. The default is "TRUE".

VMware, Inc. 46 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.skipCRLRevocationCheck --skipCRLRevocationCheck By default when connecting to a server, Horizon Client checks for and downloads the certificate revocation list (CRL) for the server. This command-line option instructs Horizon Client to stop checking for the CRL during connections. If you are setting the configuration key, specify "TRUE" to stop checking for the CRL. The default is "FALSE".

view.sslCipherString --sslCipherString= Configures the cipher list to restrict the use of certain cryptographic algorithms before establishing an encrypted SSL connection. For a list of cipher strings, see http:// www.openssl.org/docs/apps/ciphers.html . The default for Horizon Client is "! aNULL:kECDH+AESGCM:ECDH +AESGCM:RSA+AESGCM:kECDH+AES:ECDH +AES:RSA+AES".

view.sslProtocolString --sslProtocolString= Configures the cipher list to restrict the use of certain cryptographic protocols before establishing an encrypted SSL connection. The supported protocols are TLSv1.1, and TLSv1.2. The cipher list consists of one or more protocol strings separated by colons. The strings are not case-sensitive. The default is "TLSv1.1:TLSv1.2".

view.sslVerificationMode None Sets the server certificate verification mode. Specify "1" to reject connections when the certificate fails any of the verification checks, "2" to warn but allow connections that use a self-signed certificate, or "3" to allow unverifiable connections. If you specify "3", no verification checks are performed. The default is "2".

VMware, Inc. 47 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.UnauthenticatedAccessEnabled --unauthenticatedAccessEnabled When set to "TRUE", the Unauthenticated Access feature is enabled by default. The Log in anonymously using Unauthenticated Access setting is visible in the user interface and is marked as selected. When set to "FALSE", the Unauthenticated Access feature is disabled. The Log in anonymously using Unauthenticated Access setting is hidden and deselected. When set to "", the Unauthenticated Access feature is disabled, and the Log in anonymously using Unauthenticated Access setting is visible from the user interface and deselected. If you are setting the configuration key, specify "TRUE" or "FALSE". For example:

-- unauthenticatedAccessEnabled="TRUE"

view.UnauthenticatedAccessAccount --unauthenticatedAccessAccount Specifies the account to use when unauthenticatedAccessEnabled is set to "TRUE". If the unauthenticatedAccessEnabled is set to "FALSE", then this configuration is ignored. The following example shows how to use this command-line option with the anonymous1 user account:

-- unauthenticatedAccessAccount='anonym ous1'

view.usbAutoConnectAtStartUp --usbAutoConnectAtStartUp= Redirects USB devices automatically to a remote desktop or published application if the USB devices are inserted into the host system before the desktop or application is connected. Specify "TRUE" or "FALSE". Default is "FALSE".

view.usbAutoConnectOnInsert --usbAutoConnectOnInsert= Redirects USB devices automatically to a remote desktop or published application when the USB devices are inserted into the host system after the desktop or application is connected. Specify "TRUE" or "FALSE". Default is "FALSE".

VMware, Inc. 48 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

view.xfreerdpOptions --xfreerdpOptions= (Available if you use the Microsoft RDP display protocol.) Specifies command-line options to forward to the xfreerdp program. For information about xfreerdp options, see the xfreerdp documentation.

Note To use FreeRDP, you must have the correct version of FreeRDP installed and any applicable patches. For more information, see Install and Configure FreeRDP.

VMware, Inc. 49 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

None --useExisting Enables you to start multiple remote desktops and published applications from a single session. When you specify this option, Horizon Client determines whether there is already a session connected to the same server URL. If so, Horizon Client uses that session instead of starting a new session. If there is a session connected to a different server URL, Horizon Client disconnects from that session and then starts a new session connected to the new server URL. If more than one such session exists, Horizon Client disconnects from the earliest session before starting the new session. In the following example, user1 starts the Calculator application and a new session is created.

vmware-view -serverURL view.mycompany.com -userName user1 -password 'secret' -domainName domain -appName Calculator

In the next example, user1 starts the Paint application with the same server URL, and the same session is used.

vmware-view -serverURL view.mycompany.com -userName user1 -password 'secret' -domainName domain -appName Paint -- useExisting

In the next example, user1 starts the Calculator application with a different server URL. Horizon Client disconnects from the first session with view.mycompany.com and starts a new session with horizon.mycompany.com.

vmware-view -serverURL horizon.mycompany.com -userName user1 -password 'secret' -domainName domain -appName Calculator --useExisting

VMware, Inc. 50 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

None --enableNla (Applies if you are using FreeRDP for RDP connections.) Enables network-level authentication (NLA). You must use this option and the --ignore-certificate option. For more information, see Using FreeRDP for RDP Connections. If you are using FreeRDP, NLA is turned off by default. You must have the correct version of FreeRDP installed and any applicable patches. For more information, see Install and Configure FreeRDP.

Note The rdesktop program does not support NLA.

None --printEnvironmentInfo Shows information about the environment of a client device, including its IP address, MAC address, machine name, and domain name. For kiosk mode, you can create an account for the client based on the MAC address. To display the MAC address, use this option with the -s option. For example:

--printEnvironmentInfo -s view.company.com

None --usb= Specifies which options to use for USB redirection. For more information, see System Requirements for USB Redirection.

None --version Displays version information about Horizon Client.

VMware, Inc. 51 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-2. Horizon Client Command-Line Options and Configuration File Keys (continued)

Configuration Key Command-Line Option Description

None --tokenUserName For RSA SecurID or RADIUS authentication, specifies the token user name. If you do not use this option, or if the option is empty, the Active Directory user name is used. To specify the RSA SecurID or RADIUS authentication passcode, use the --passcode option. The following example shows how to use the -q option to log in without user interaction in Horizon Client. If you do not specify the -q option, the RSA SecurID or RADIUS login page appears in Horizon Client.

vmware-view -- serverURL='12.345.67.89' -q --tokenUserName='pwduser' -- userName='johndoe' --password='password' -- domainName='mydomain' --passcode='passcode'

None --passcode Specifies the passcode for RSA SecurID or RADIUS authentication. The passcode can be used only once. Use this option with the --tokenUserName option.

Example: Kiosk Mode Example Kiosk users might include customers at airline check-in stations, students in classrooms or libraries, medical personnel at medical data entry workstations, or customers at self-service points. Accounts are associated with client devices rather than users because users do not need to log in to use the client device or the remote desktop. Users can still be required to provide authentication credentials for some applications.

To set up kiosk mode, you must use the vdmadmin command-line interface on the Horizon Connection Server instance and perform several procedures documented in the chapter about kiosk mode in the Horizon Administration document. After you set up kiosk mode, you can use the vmware-view command on a Linux client to connect to a remote desktop in kiosk mode.

To connect to remote desktops from Linux clients in kiosk mode, you must, at a minimum, include the following configuration keys or command-line options.

Configuration Key Equivalent Command-line Options view.kioskLogin --kioskLogin view.nonInteractive -q, --nonInteractive view.fullScreen --fullscreen view.noMenuBar --nomenubar

VMware, Inc. 52 VMware Horizon Client for Linux Installation and Setup Guide

Configuration Key Equivalent Command-line Options view.defaultBroker -s, --serverURL=

Omitting any of these configuration settings is not supported for kiosk mode. If Horizon Connection Server is set up to require a non-default kiosk user name, you must also set the view.defaultUser property or use the -u or --userName= command-line option. If a non-default user name is not required and you do not specify a user name, Horizon Client can derive and use the default kiosk user name.

Note If you set the view.sslVerificationMode configuration key, set it in the /etc/vmware/view- mandatory-config file. When the client runs in kiosk mode, the client does not look in the view- preferences file.

The command shown in this example runs Horizon Client on a Linux client system and has the following characteristics: n The user account name is based on the client's MAC address. n Horizon Client runs in full screen mode without a Horizon Client menu bar. n Users are automatically connected to the specified Horizon Connection Server instance and remote desktop and are not prompted for login credentials. n If a connection error occurs, depending on the error code returned, a script might run, or a kiosk monitoring program might handle the error. As a result, for example, the client system might display an out-of-order screen or might wait a certain amount of time before attempting to connect to Horizon Connection Server again.

./vmware-view --kioskLogin --nonInteractive --once --fullscreen --nomenubar --serverURL="server.mycomany.com" --userName="CM-00:11:22:33:44:55:66:77" --password="mypassword"

Important If a pre-login message has been configured to appear before allowing Horizon Client to connect to a remote desktop, the user must acknowledge the message before being allowed to access the desktop. To avoid this issue, use Horizon Console to disable pre-login messages.

Using URIs to Configure Horizon Client

You can use uniform resource identifiers (URIs) to create web page or email links that end users can click to start Horizon Client, connect to a server, or open a remote desktop or published application.

You create these links by constructing URIs that provide some or all the following information, so that your end users do not need to supply it. n Server address n Port number for the server n Active Directory user name

VMware, Inc. 53 VMware Horizon Client for Linux Installation and Setup Guide

n Domain name n Remote desktop or published application display name n Window size n Actions including reset, log out, and start session n Display protocol

To construct a URI, you use the vmware-view URI scheme with Horizon Client specific path and query parts.

To use URIs to start Horizon Client, Horizon Client must already be installed on client computers.

Syntax for Creating vmware-view URIs

URI syntax includes the vmware-view URI scheme, a path part to specify the remote desktop or published application, and, optionally, a query to specify remote desktop or published application actions or configuration options.

URI Specification When you create a URI, you are essentially calling vmware-view with the full Horizon URI string as an argument.

Use the following syntax to create URIs to start Horizon Client.

vmware-view://[authority-part][/path-part][?query-part]

The only required element is the URI scheme, vmware-view. Because the scheme name is case- sensitive for some versions of some client operating systems, type vmware-view.

Important In all parts, non-ASCII characters must first be encoded according to UTF-8 [STD63], and then each octet of the corresponding UTF-8 sequence must be percent-encoded to be represented as URI characters.

For information about encoding for ASCII characters, see the URL encoding reference at http:// www.utf8-chartable.de/. authority-part

The server address and, optionally, a user name, a non-default port number, or both. Underscores (_) are not supported in server names. Server names must conform to DNS syntax.

To specify a user name, use the following syntax.

user1@server-address

You cannot specify a UPN address, which includes the domain. To specify the domain, you can use the domainName query part in the URI.

VMware, Inc. 54 VMware Horizon Client for Linux Installation and Setup Guide

To specify a port number, use the following syntax.

server-address:port-number path-part The display name of the remote desktop or published application. The display name is specified in Horizon Console when the desktop pool or application pool is created. If the display name contains a space, use the %20 encoding mechanism to represent the space. Alternatively, you can specify a desktop or application ID, which is a path string that includes the desktop or application pool ID. To find a desktop or application ID, open ADSI Edit on the Connection Server host, navigate to DC=vdi,dc=vmware,dc=int, and select the OU=Applications node. All the desktop and application pools are listed. The distinguishedName attribute specifies the ID value. You must encode the ID value before you specify it in a URI, for example, cn%3Dwin7-32%2Cou%3Dapplications%2Cdc%3Dvdi%2Cdc %3Dvmware%2Cdc%3Dint.

Note More than one remote desktop or published application can have the same display name, but the desktop and application ID is unique. To specify a particular remote desktop or published application, use the desktop or application ID rather than the display name. query-part The configuration options to use, or the remote desktop or published application actions to perform. Queries are not case-sensitive. To use multiple queries, use an ampersand (&) between the queries. If the queries conflict, Horizon Client uses the last query in the list. Use the following syntax.

query1=value1[&query2=value2...]

Supported Queries The following queries are supported for this type of Horizon Client. If you are creating URIs for multiple types of clients, such as desktop clients and mobile clients, see the installation and setup guide for each type of client system for the list of supported queries. action

Table 3-3. Values That Can Be Used with the action Query

Value Description

browse Displays a list of available remote desktops and published applications hosted on the specified server. You are not required to specify a remote desktop or published application when using this action.

start-session Opens the specified remote desktop or published application. If no action query is provided and the remote desktop or published application name is provided, start-session is the default action.

VMware, Inc. 55 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-3. Values That Can Be Used with the action Query (continued)

Value Description

reset Shuts down and restarts the specified remote desktop or published application. Unsaved data is lost. Resetting a remote desktop is the same as pressing the Reset button on a physical PC.

restart Shuts down and restarts the specified remote desktop. Restarting a remote desktop is the same as the Windows operating system restart command. The operating system usually prompts the user to save any unsaved data before it restarts.

logoff Logs the user out of the guest operating system in the remote desktop. If you specify a published application, the action is ignored or the end user sees the warning message "Invalid URI action." args Specifies command-line arguments to add when the published application starts. Use the syntax args=value, where value is a string. Use percent encoding for the following characters:

n For a colon (:), use %3A

n For a back slash (\), use %5C

n For a space ( ), use %20

n For a double quotation mark ("), use %22

For example, to specify the filename "My new file.txt" for the Notepad++ application, use %22My%20new%20file.txt%22. appProtocol

For published applications, valid values are PCOIP and BLAST. For example, to specify PCoIP, use the syntax appProtocol=PCOIP. desktopLayout

Sets the size of the remote desktop window. To use this query, you must set the action query to start-session or not have an action query.

Table 3-4. Valid Values for the desktopLayout Query

Value Description

fullscreen Full screen on one monitor. This value is the default.

multimonitor Full screen on all monitors.

windowLarge Large window.

windowSmall Small window.

WxH Custom resolution, where you specify the width by height, in pixels. An example of the syntax is desktopLayout=1280x800.

VMware, Inc. 56 VMware Horizon Client for Linux Installation and Setup Guide desktopProtocol

For remote desktops, valid values are RDP, PCOIP, and BLAST. For example, to specify PCoIP, use the syntax desktopProtocol=PCOIP. domainName Specifies the NETBIOS domain name associated with the user who is connecting to the remote desktop or published application. For example, you might use mycompany rather than mycompany.com. launchMinimized Starts Horizon Client in minimized mode. The Horizon Client window remains minimized and hidden in the background while the user-specified remote desktop or published application starts. The syntax is launchMinimized=true. The default value is false. useExisting

If this option is set to true, only one Horizon Client instance can run. If users try to connect to a second server, they must log out of the first server, causing remote desktop and published application sessions to be disconnected. If this option is set to false, multiple Horizon Client instances can run and users can connect to multiple servers at the same time. The default is true. An example of the syntax is useExisting=false. unauthenticatedAccessEnabled

If this option is set to true, the Unauthenticated Access feature is enabled by default. The Log in anonymously using Unauthenticated Access option is visible in the user interface and is selected. If this option is set to false, the Unauthenticated Access feature is disabled. The Log in anonymously using Unauthenticated Access setting is hidden and disabled. When this option is set to "", the Unauthenticated Access feature is disabled and the Log in anonymously using Unauthenticated Access setting is visible from the user interface and deselected. An example of the syntax is unauthenticatedAccessEnabled=true. unauthenticatedAccessAccount If the Unauthenticated Access feature is enabled, sets the account to use. If Unauthenticated Access is disabled, then this query is ignored. An example of the syntax using the anonymous1 user account is unauthenticatedAccessAccount=anonymous1.

Examples of vmware-view URIs

You can use the vmware-view URI scheme to create hypertext links or buttons and include these links in email or on a Web page. For example, an end user can click a URI link to start a remote desktop with the startup options that you specify.

VMware, Inc. 57 VMware Horizon Client for Linux Installation and Setup Guide

URI Syntax Examples Each URI example is followed by a description of what the end user sees after clicking the URI link.

1 vmware-view://view.mycompany.com/Primary%20Desktop?action=start-session

Horizon Client starts and connects to the view.mycompany.com server. The login dialog box prompts the user for a user name, domain name, and password. After a successful login, the client connects to the remote desktop that has the display name Primary Desktop, and the user is logged in to the guest operating system.

Note In this example, the default display protocol and window size are used. The default display protocol is PCoIP and the default window size is full screen.

You can change the defaults. See Using the vmware-view Command-Line Interface and Configuration Files.

2 vmware-view://view.mycompany.com/cn%3Dwin7-32%2Cou%3Dapplications%2Cdc%3Dvdi%2Cdc%3Dvmware%2Cdc %3Dint

Horizon Client starts and connects to the view.mycompany.com server. The login dialog box prompts the user for a user name, domain name, and password. After a successful login, the client connects to the remote desktop that has the desktop ID CN=win7-32,OU=Applications,DC=vdi,DC=vmware,DC=int (encoded value cn %3Dwin7-32%2Cou%3Dapplications%2Cdc%3Dvdi%2Cdc%3Dvmware%2Cdc%3Dint).

3 vmware-view://view.mycompany.com:7555/Primary%20Desktop

This URI has the same effect as the previous example, except that it uses the nondefault port of 7555 for the Connection Server instance. (The default port is 443.) Because a remote desktop identifier is provided, the remote desktop opens, even though the start-session action is not included in the URI.

4 vmware-view://[email protected]/Finance%20Desktop?desktopProtocol=PCOIP

Horizon Client starts and connects to the view.mycompany.com server. In the login dialog box, the User name text box is populated with fred. The user must supply the domain name and password. After a successful login, the client connects to the remote desktop that has the display name Finance Desktop, and the user is logged in to the guest operating system. The connection uses the PCoIP display protocol.

5 vmware-view://view.mycompany.com/Calculator?action=start-session&appProtocol=BLAST

Horizon Client starts and connects to the view.mycompany.com server. In the login dialog box, the user must supply the user name, domain name, and password. After a successful login, the client connects to the published application that has the display name Calculator. The connection uses the VMware Blast display protocol.

VMware, Inc. 58 VMware Horizon Client for Linux Installation and Setup Guide

6 vmware-view://[email protected]/Finance%20Desktop?domainName=mycompany

Horizon Client starts and connects to the view.mycompany.com server. In the login dialog box, the User name text box is populated with fred, and the Domain text box is populated with mycompany. The user must supply only a password. After a successful login, the client connects to the remote desktop that has the display name Finance Desktop, and the user is logged in to the guest operating system.

7 vmware-view://view.mycompany.com/

Horizon Client starts and the user is taken to the login prompt for connecting to the view.mycompany.com server.

8 vmware-view://view.mycompany.com/Primary%20Desktop?action=reset

Horizon Client starts and connects to the view.mycompany.com server. The login dialog box prompts the user for a user name, domain name, and password. After a successful login, Horizon Client shows a dialog box that prompts the user to confirm the reset operation for Primary Desktop.

Note This action is available only if a Horizon administrator has enabled the reset feature for the remote desktop.

9 vmware-view://view.mycompany.com/Primary%20Desktop?action=restart

Horizon Client starts and connects to the view.mycompany.com server. The login dialog box prompts the user for a user name, domain name, and password. After a successful login, Horizon Client shows a dialog box that prompts the user to confirm the restart operation for Primary Desktop.

Note This action is available only if a Horizon administrator has enabled the restart feature for the remote desktop.

10 vmware-view://

Horizon Client starts and the user is taken to the page for entering the address of a server.

11 vmware-view://10.10.10.10/My%20Notepad++?args=%22My%20new%20file.txt%22

Starts My Notepad++ on server 10.10.10.10 and passes the argument My new file.txt in the published application start command. The filename is enclosed in double quotes because it contains spaces.

12 vmware-view://10.10.10.10/Notepad++%2012?args=a.txt%20b.txt

VMware, Inc. 59 VMware Horizon Client for Linux Installation and Setup Guide

Starts Notepad++ 12 on server 10.10.10.10 and passes the argument a.text b.txt in the published application start command. Because the argument is not enclosed in quotes, a space separates the filenames and the two files are opened separately in Notepad++.

Note Published applications can differ in the way that they use command-line arguments. For example, if you pass the argument a.txt b.txt to WordPad, WordPad opens only one file, a.txt.

13 vmware-view://view.mycompany.com/Notepad? unauthenticatedAccessEnabled=true&unauthenticatedAccessAccount=anonymous1

Horizon Client starts and connects to the view.mycompany.com server using the anonymous1 user account. The Notepad application starts without prompting the user to provide login credentials.

HTML Code Examples You can use URIs to make hypertext links and buttons to include in emails or on Web pages. The following examples show how to use the URI from the first URI example to code the hypertext link labeled Test Link and a button labeled TestButton.

Test Link


Configure VMware Blast Options

You can configure VMware Blast options for remote desktop and published application sessions that use the VMware Blast display protocol.

You can allow H.264 decoding and High Efficiency Video Coding (HEVC). H.264 is an industry standard for video compression, which is the process of converting digital video into a format that takes up less capacity when it is stored or transmitted. When H.264 decoding is allowed, you can also allow increased color fidelity. This feature is not supported on ARM processors.

The maximum resolution that is supported depends on the capability of the graphical processing unit (GPU) on the client. A GPU that can support 4K resolution for JPEG/PNG might not support 4K resolution for H.264.

H.264 decoding is supported on AMD, NVIDIA, and Intel GPUs. H.264 decoding requires that the graphics library OpenGL 3.2 or later is installed for AMD and NVIDIA GPUs.

VMware, Inc. 60 VMware Horizon Client for Linux Installation and Setup Guide

If you plan to use H.264 decoding with a NVIDIA GPU, install VDPAU (Video Decode and Presentation API for UNIX). VDPAU is no longer included with the latest NVIDIA driver and must be installed separately.

To use H.264 with an Intel GPU, the Intel VA-API driver and the GLX VA-API libraries are required. Running the command vainfo shows the H.264 profiles.

To use HEVC 4:4:4 decoding with an Intel GPU, a Gen 10 (Ice Lake) or later CPU is required.

If your environment uses a proxy server, you can specify whether to allow VMware Blast connections to an operating system proxy server.

For an SSL proxy server, you also need to configure certificate checking for secondary connections through the SSL proxy server. For more information, see Setting the Certificate Checking Mode in Horizon Client.

You can configure VMware Blast options before or after you connect to a server.

Prerequisites

To use High Efficiency Video Coding (HEVC), Horizon Agent 7.7 or later must be installed. For increased color accuracy with YUV 4:4:4, Horizon Agent 7.11 or later must be installed. In addition, the client system must have a GPU that supports HEVC decoding.

Depending on the Horizon Agent version that is installed, a Horizon administrator can use agent- side group policy settings to enable or disable VMware Blast features, including H.264 and HEVC high color accuracy. For information, see "VMware Blast Policy Settings" in the Configuring Remote Desktop Features in Horizon document.

Procedure

1 Start Horizon Client.

2 Select File > Configure VMware Blast from the menu bar.

3 To allow H.264 decoding in Horizon Client, select the Allow H.264 decoding check box.

n When this option is selected (the default setting), and the client GPU has an H.264 hardware decoder, Horizon Client uses H.264 4.2.0 hardware decoding.

n When this option is selected and if the client GPU does not have an H.264 hardware decoder and the increased color fidelity feature is not allowed, Horizon Client uses H.264 4.2.0 software decoding.

n When this option is deselected, Horizon Client uses JPG/PNG decoding (with Horizon Agent 7.x) or Blast Codec decoding (with Horizon Agent 2006 and later).

4 To allow increased color fidelity when H.264 decoding is allowed in Horizon Client, select the High Color Accuracy (reduces battery life and performance) check box.

When this option is selected, Horizon Client uses H.264 4.4.4 software decoding, regardless of whether or not the client GPU has an H.264 hardware decoder. Selecting this option might reduce battery life and performance. This feature is disabled by default.

VMware, Inc. 61 VMware Horizon Client for Linux Installation and Setup Guide

5 To allow HEVC, select the Allow High Efficiency Video Decoding (HEVC) check box.

When this option is selected, performance and image quality are improved if the client machine has a GPU that supports HEVC decoding. This feature is disabled by default. If this option is selected but the client machine does not have a GPU that supports HEVC decoding, Horizon Client uses H.264 decoding instead.

6 To allow VMware Blast connections through a proxy server, select the Allow Blast connections to use operating system proxy settings check box.

7 Click OK to save your changes.

Results

Changes take effect the next time a user connects to a remote desktop or published application and selects the VMware Blast display protocol. Your changes do not affect existing VMware Blast sessions.

Configuring Cursor Event Handling

You can optimize cursor event handling by configuring settings in the ~/.vmware/ config, /usr/lib/vmware/config, or /etc/vmware/config file on the Linux client system.

Note To use cursor event handling, Horizon Agent 2006 or later must be installed on the remote desktop.

Setting Description

RemoteDisplay.mouseMoveMaxLatencyMsec Sets the maximum latency allowed, in milliseconds, when coalescing mouse movement events. Coalescing mouse movement events can reduce client-to- agent bandwidth use, but it can potentially add minor latency to mouse movement. Valid values are 0 through 50. A value of 0 disables the feature. The default value is 0.

RemoteDisplay.allowCursorWarping Enables or disables the cursor warping feature. When this feature is enabled and the mouse is in absolute mode, the remote agent detects sudden cursor movements and reflects them to the client by moving the local cursor. When this feature is disabled, the client ignores sudden cursor movements in the remote agent. Valid values are TRUE or FALSE. The default value is TRUE.

RemoteDisplay.allowCursorEventsOnLowLatencyChannel Determines whether the low-latency channel is used for cursor updates. Valid values are TRUE or FALSE. The default value is TRUE.

VMware, Inc. 62 VMware Horizon Client for Linux Installation and Setup Guide

You can also configure cursor event handling on the agent machine. For example, you can use the agent-side Cursor Warping group policy setting to configure cursor warping, and you can modify Windows registry settings on the agent machine to enable or disable coalescing mouse movement events and the low-latency channel. The settings on both the client and agent must match for the feature to be enabled. For information about the agent-side settings, see the Configuring Remote Desktop Features in Horizon document.

Configure Horizon Client Data Sharing

If a Horizon administrator has opted to participate in the VMware Customer Experience Improvement Program (CEIP), VMware collects and receives anonymous data from client systems through Connection Server. You can configure whether to share this client data with Connection Server.

For information about configuring Horizon to join the CEIP, see the Horizon Administration document.

Data sharing is enabled by default in Horizon Client. The view.enableDataSharing configuration key is initially set to "TRUE" in the ~/.vmware/view-preferences file. You must configure the data sharing setting before you connect to a server. The setting is applied to all servers. You cannot change the Horizon Client data sharing setting after you connect to a server.

Procedure

1 Select File > Configure data sharing from the menu bar.

2 Select or deselect the Allow data sharing check box.

3 Click OK to save your changes.

Your preference is stored using the view.enableDataSharing configuration key in the ~/.vmware/view-preferences configuration file.

Horizon Client Data Collected by VMware

If a Horizon administrator has opted to participate in the customer experience improvement program, and data sharing is enabled on the client system, VMware collects data about the client system.

VMware collects data about client systems to prioritize hardware and software compatibility. If your Horizon administrator has opted to participate in the customer experience improvement program, VMware collects anonymous data about your deployment to respond better to customer requirements. VMware does not collect data that identifies your organization. Horizon Client information is sent first to the Connection Server instance and then to VMware, along with data about Connection Server, desktop pools, and remote desktops.

The information is encrypted when it is in transit to the Connection Server instance. The information on the client system is logged unencrypted in a user-specific directory. The logs do not contain personally identifiable information.

VMware, Inc. 63 VMware Horizon Client for Linux Installation and Setup Guide

A Horizon administrator can select whether to participate in the VMware customer experience improvement program when installing Connection Server or by setting an option in Horizon Console after the installation.

Table 3-5. Data Collected from Horizon Clients for the Customer Experience Improvement Program

Description Is This Field Made Anonymous?

Company that produced the Horizon Client application No

Product name No

Client product version No

Client binary architecture No

Client build name No

Host operating system No

Host operating system kernel No

Host operating system architecture No

Host system model No

Host system CPU No

Number of cores in the host system's processor No

MB of memory on the host system No

Number of USB devices connected No

Maximum concurrent USB device connections No

USB device vendor ID No

USB device product ID No

USB device family No

USB device use count No

Configuring the Certificate Checking Mode for End Users

You can configure the certificate checking mode for end users. For example, you can configure that full verification is always performed. Certificate checking occurs for TLS connections between a server and Horizon Client.

You can configure one of the following certificate verification strategies for end users. n End users are allowed to select the certificate checking mode in Horizon Client. n (No verification) No certificate checks are performed.

VMware, Inc. 64 VMware Horizon Client for Linux Installation and Setup Guide

n (Warn) If the server presents a self-signed certificate, end users are warned. Users can determine whether to allow this type of connection. n (Full security) Full verification is performed and connections that do not pass full verification are rejected.

If you use an SSL proxy server to inspect traffic sent from the client environment to the Internet, you can configure certificate checking for secondary connections through the SSL proxy server. This feature applies to both Blast Secure Gateway and secure tunnel connections. You can also allow proxy server use for VMware Blast connections.

For information about the types of certificate checks that can be performed, see Setting the Certificate Checking Mode in Horizon Client.

You can set the default certificate checking mode and proxy server settings by setting properties in the /etc/vmware/view-mandatory-config file.

To set the default certificate checking mode, set the view.sslVerificationMode property to one of the following values. n 1 implements Full Verification. n 2 implements Warn If the Connection May Be Insecure. n 3 implements No Verification Performed.

To configure the certificate checking mode so that end users cannot change it, set the view.allowSslVerificationMode property to "False". To set this property from the command line, see Horizon Client Configuration Settings and Command-Line Options.

To configure the Allow connection via an SSL Proxy setting so that end users cannot change it, set the view.allowAllowSslProxy key to "False".

To set the default Allow connection via an SSL Proxy setting, set the view.allowSslProxy property. "True" enables the setting and "False" disables the setting.

To set the default Allow Blast connections to use operating system proxy settings setting, set the view.allowBlastProxy property. "True" enables the setting and "False" disables the setting.

To configure the Allow Blast connections to use operating system proxy settings setting so that end users cannot change it, set the view.allowAllowBlastProxy key to False.

Configuring Advanced TLS Options

You can select the security protocols and cryptographic algorithms that are used to encrypt communications between Horizon Client and servers, and between Horizon Client and the agent in a remote desktop.

These options are also used to encrypt the USB channel (communication between the USB service daemon and the agent).

VMware, Inc. 65 VMware Horizon Client for Linux Installation and Setup Guide

With the default setting, cipher suites use 128-bit or 256-bit AES, remove anonymous DH algorithms, and then sort the current cipher list in order of encryption algorithm key length.

By default, TLS v1.1 and TLS v1.2 are enabled. SSL v2.0, SSL v3.0, and TLS v1.0 are not supported.

If you configure a security protocol for Horizon Client that is not enabled on the server to which the client connects, a TLS error occurs and the connection fails.

Important At least one of the protocols that you enable in Horizon Client must also be enabled on the remote desktop or USB devices cannot be redirected to the remote desktop.

On the client system, you can use either configuration file properties or command-line options for these settings: n To use configuration file properties, use the view.sslProtocolString and view.sslCipherString properties. n To use command-line configuration options, use the --sslProtocolString and --sslCipherString options.

For more information, see Using the vmware-view Command-Line Interface and Configuration Files and look up the property and option names in the table in Horizon Client Configuration Settings and Command-Line Options.

Configuring Specific Keys and Key Combinations to Send to the Local System

If you use the VMware Blast or PCoIP display protocol, you can create a view-keycombos-config file to specify which individual keys and key combinations should not be forwarded to the remote desktop.

You might prefer to have some keys or key combinations handled by your local client system when working in a remote desktop. For example, you might want to use a particular key combination to start the screen saver on your client computer. You can create a file located at /etc/vmware/view-keycombos-config and specify the key combinations and individual keys.

Place each key or key combination on a new line using the following format:

scanCode scanCode

The first example is for a key combination. The second example is for a single key. The scanCode value is the keyboard scan code, in hexadecimal.

In this example, modName is one of four modifier keys: ctrl, alt, shift, and super. The Super key is keyboard-specific. For example, the Super key is usually the Windows key on a keyboard but is the Command key on a Mac OS X keyboard. You can also use as a wildcard for modName. For example, 0x153 specifies all combinations of the Delete key, including the individual Delete key for the US keyboard. The value you use for modName is not case-sensitive.

VMware, Inc. 66 VMware Horizon Client for Linux Installation and Setup Guide

Specifying the Scan Code for a Key

The scanCode value must be in hexadecimal format. To determine which code to use, open the appropriate language- and keyboard-specific file in the lib/vmware/xkeymap directory on your client system. In addition to the key codes listed in that file, you can also use the following codes:

Table 3-6. Multimedia Keys

Key Name Scan Code

PREVIOUS_TRACK 0x110

NEXT_TRACK 0x119

MUTE 0x120

CALCULATOR 0x121

PLAY_PAUSE 0x122

STOP 0x124

VOLUME_DOWN 0x12e

VOLUME_UP 0x130

BROWSER_HOME 0x132

BROWSER_SEARCH 0x165

BROWSER_FAVORITES 0x166

BROWSER_REFRESH 0x167

BROWSER_STOP 0x168

BROWSER_FORWARD 0x169

BROWSER_BACK 0x16A

MY_COMPUTER 0x16B

MAIL 0x16C

MEDIA_SELECT 0x16D

Table 3-7. Hangul and Hanja Keys

Key Name Scan Code

HANGUL_EN 0x72

HANJA_EN 0x71

HANGUL_KO 0x172

HANJA_KO 0x171

VMware, Inc. 67 VMware Horizon Client for Linux Installation and Setup Guide

Table 3-7. Hangul and Hanja Keys (continued)

Key Name Scan Code

HANGUL 0xF2

HANJA 0xF1

Table 3-8. System Sleep, Wake, and Power Keys

Key Name Scan Code

SYSTEM_SLEEP 0x15F

SYSTEM_WAKE 0x163

SYSTEM_POWER 0x15e

The following list shows the example contents of a /etc/vmware/view-keycombos-config file. Code comments are preceded by the # character.

0x152 #block ctrl-insert 15 #block alt-tab 0x153 #block ctrl-alt-del 0x137 #block any combinations of the Print key 0x010 #block the individual Q key in a US English keyboard #or block the individual A key in a French keyboard 0x03b #block the individual F1 key 0x04f #block the individual 1 key in a numeric keypad

Using FreeRDP for RDP Connections

If you plan to use RDP rather than VMware Blast or PCoIP for connections to remote desktops, you can choose between using an rdesktop client or xfreerdp, the open-source implementation of the (RDP), released under the Apache license.

Because the rdesktop program is no longer being actively developed, Horizon Client can also run the xfreerdp executable if your Linux machine has the required version and patches for FreeRDP.

Important If you plan to connect to remote desktops or applications on a Microsoft RDS host, if that host is configured with the Per Device mode of licensing, you must use xfreerdp or else change the licensing mode to Per User mode. The reason is that Per Device licensing mode requires the RDP client to provide a client ID, and rdesktop does not provide that ID, whereas xfreerdp does.

You must have the correct version of FreeRDP installed, along with any applicable patches. For more information, see Install and Configure FreeRDP.

VMware, Inc. 68 VMware Horizon Client for Linux Installation and Setup Guide

General Syntax

You can use the vmware-view command-line interface or some properties in configuration files to specify options for xfreerdp, just as you can for rdesktop. n To specify that Horizon Client should run xfreerdp rather than rdesktop, use the appropriate command-line option or configuration key.

Command-line option: --rdpclient="xfreerdp"

Configuration key: view.rdpClient="xfreerdp" n To specify options to forward to the xfreerdp program, use the appropriate command-line option or configuration key, and specify the FreeRDP options.

Command-line option: --xfreerdpOptions

Configuration key: view.xfreerdpOptions

For more information about using the vmware-view command-line interface and configuration files, see Using the vmware-view Command-Line Interface and Configuration Files.

Syntax for Network Level Authentication

Many configuration options for the rdesktop program are the same as for the xfreerdp program. One important difference is that xfreerdp supports network-level authentication (NLA). NLA is turned off by default. You must use the following command-line option to turn on network-level authentication:

--enableNla

Also, you must add the /cert-ignore option so that the certificate verification process can succeed. Following is an example of the correct syntax:

vmware-view --enableNla --rdpclient=xfreerdp --xfreerdpOptions="/p:password /cert-ignore /u:user- name /d:domain-name /v:server"

If the password contains any special characters, escape the special characters (for example: \$).

Syntax Specific to Using FreeRDP with Horizon Client

Keep the following guidelines in mind: n You must escape special characters that you might normally place in quotation marks. For example, the following command does not work because the special character $ in pa$$word is not escaped:

(incorrect) vmware-view --rdpclient=xfreerdp --xfreerdpOptions="/p:'pa$$word' /u:'crt \administrator'"

Instead, you must use:

VMware, Inc. 69 VMware Horizon Client for Linux Installation and Setup Guide

(correct) vmware-view --rdpclient=xfreerdp --xfreerdpOptions="/p:'pa\$\$word' /u:'crt \administrator'" n If end users will use a session-in-session implementation of Horizon Client, you must use the /rfx option. An example of a session-in-session implementation is one in which an end user logs in to Horizon Client on a thin client, so that the Horizon Client interface is the only one the end user sees, and the end user then launches a nested version of Horizon Client in order to use a remote application provided by an RDS host. In cases like this, if you do not use the /rfx option, the end user will not be able to see the remote desktop and application icons in the desktop and application selector of the nested client.

Install and Configure FreeRDP

To use a FreeRDP client for RDP connections to remote desktops, your Linux machine must include the required version of FreeRDP.

For a list of the packages that xfreerdp depends on in Ubuntu, go to https://github.com/ FreeRDP/FreeRDP/wiki/Compilation.

Prerequisites

On your Linux client machine, download FreeRDP 1.1 from GitHub, at https://github.com/ FreeRDP/FreeRDP.

Procedure

1 Patch with the file called freerdp-1.1.0.patch, using the following patch commands:

cd /client-installation-directory/patches/FreeRDP-stable-1.1 patch -p1 < freerdp-1.1.0.patch patch -p1 < freerdp-1.1.0-tls.patch

Here client-installation-directory is the path to VMware-Horizon-Client-YYMM-x.x.x- yyyyyyy.arch, where YYMM is the marketing version number, x.x.x is the internal version number, yyyyyyy is the build number, and arch is the CPU instruction set architecture.

The freerdp-1.1.0-tls.patch file enables the TLSv1.2 connection in xfreerdp. If you have installed the VMware Horizon Client for Linux, the freerdp-1.1.0.patch and freerdp-1.1.0- tls.patch files are located in the /usr/share/doc/vmware-horizon-client/patches directory. For more information about the freerdp-1.1.0.patch file, see the README.patches file in the same client-installation-directory/patches directory.

2 Run the following command:

cmake -DWITH_SSE2=ON -DWITH_PULSEAUDIO=ON -DWITH_PCSC=ON -DWITH_CUPS=ON .

3 Run the following command:

make

VMware, Inc. 70 VMware Horizon Client for Linux Installation and Setup Guide

4 Run the following command, which installs the built xfreerdp binary in a directory on the execution PATH so that Horizon Client can run the program by executing xfreerdp:

sudo make install

Enabling FIPS Compatible Mode

You can enable FIPS (Federal Information Processing Standard) Compatible mode so that the client uses FIPS-compliant cryptographic algorithms when communicating with remote desktops.

Note FIPS Compatible Mode means Horizon Client for Linux implements a cryptographic module that is designed for FIPS 140-2 compliance. This module was validated in operational environments listed in CMVP certificate #2839 and was ported to this platform. However, the CAVP and CMVP testing requirement to include the new operational environments in VMware's NIST CAVP and CMVP certificates remains to be completed on the product roadmap.

Important If you enable FIPS Compatible mode in the client, the remote desktop must have FIPS Compatible mode enabled as well. Mixed mode, where only the client, or only the desktop, has FIPS Compatible mode enabled, is not supported.

To enable FIPS Compatible mode, make the following configuration changes:

1 Edit /etc/vmware/config and add the following lines:

usb.enableFIPSMode = "TRUE" mks.enableFIPSMode = “TRUE”

2 Edit /etc/vmware/view-mandatory-config and add the following line:

View.fipsMode = ”TRUE”

3 Edit /etc//pcoip_admin.conf and add the following line:

pcoip.enable_fips_mode = 1

Configuring the PCoIP Client-Side Image Cache

PCoIP client-side image caching stores image content on the client to avoid retransmission. This feature is enabled by default to reduce bandwidth usage.

The PCoIP image cache captures spatial, as well as temporal, redundancy. For example, when you scroll down through a PDF document, new content appears from the bottom of the window and the oldest content disappears from the top of the window. All the other content remains constant and moves upward. The PCoIP image cache is capable of detecting this spatial and temporal redundancy.

VMware, Inc. 71 VMware Horizon Client for Linux Installation and Setup Guide

Because during scrolling, the display information sent to the client device is primarily a sequence of cache indices, using the image cache saves a significant amount of bandwidth. This efficient scrolling has benefits both on the LAN and over the WAN. n On the LAN, where bandwidth is relatively unconstrained, using client-side image caching delivers significant bandwidth savings. n Over the WAN, to stay within the available bandwidth constraints, scrolling performance is often degraded unless client-side caching is used. In this situation, client-side caching can save bandwidth and ensure a smooth, highly responsive scrolling experience.

By default this feature is enabled, so that the client stores portions of the display that were previously transmitted. The default cache size is 250MB. A larger cache size reduces bandwidth usage but requires more memory on the client. A smaller cache size requires more bandwidth usage. For example, a thin client with little memory requires a smaller cache size.

Setting the Configuration Property

To configure the cache size, you can set the pcoip.image_cache_size_mb property. For example, the following setting configures the cache size to be 50MB:

pcoip.image_cache_size_mb = 50

Use a space before and after the equals (=) sign.

If you specify a value that is less than the amount of available memory divided by 2, the value is rounded to the nearest multiple of 10. The minimum value is 50. Any value that is less than 50 is ignored.

If you specify a value that is larger than the available memory divided by 2, the value is set to the amount of available memory divided by 2 and rounded to the nearest multiple of 10.

You can set this property in any of several files. When Horizon Client starts up, the setting is processed from various locations in the following order:

1 /etc/teradici/pcoip_admin_defaults.conf

2 ~/.pcoip.rc

3 /etc/teradici/pcoip_admin.conf

If a setting is defined in multiple locations, the value that is used is the value from the last file read.

Note You can set the following property to display a visual indication that the image cache is working:

pcoip.show_image_cache_hits = 1

With this configuration, for every tile (32 x 32 pixels) in an image that comes from the image cache, you can see a rectangle around the tile.

VMware, Inc. 72 VMware Horizon Client for Linux Installation and Setup Guide

To deactivate the image caching feature, set the following property:

pcoip.enable_tile_based_image_caching = 0

Using the Image Caching Feature

The image cache resides in dynamic memory that is allocated at runtime and automatically cleared when the PCoIP session is closed. You do not need to perform any manual steps to clear the cache.

VMware, Inc. 73 Managing Remote Desktop and Published Application Connections 4

End users can use Horizon Client to connect to a server, log in to or off of remote desktops, and use published applications. For troubleshooting purposes, end users can also restart and reset remote desktops and reset published applications.

Depending on how you configure policies, end users might be able to perform many operations on their remote desktops and published applications.

This chapter includes the following topics: n Connect to a Remote Desktop or Published Application n Connect to Published Applications Using Unauthenticated Access n Share Local Folders and Drives n Setting the Certificate Checking Mode in Horizon Client n Switch Remote Desktops or Published Applications n Log Off or Disconnect

Connect to a Remote Desktop or Published Application

After logging in to a server, you can connect to the remote desktops and published applications that you are authorized to use.

Before you have end users access their remote desktops and applications, test that you can connect to a remote desktop or application from a client device. You must specify a server and supply credentials for your user account.

Prerequisites n Obtain login credentials, such as a user name and password, RSA SecurID user name and passcode, RADIUS authentication credentials, or smart card personal identification number (PIN). n Obtain the NETBIOS domain name for logging in. For example, you might use mycompany rather than mycompany.com. n Perform the administrative tasks described in Preparing Connection Server for Horizon Client.

VMware, Inc. 74 VMware Horizon Client for Linux Installation and Setup Guide

n If you are outside the corporate network and require a VPN connection to access remote desktops and published applications, verify that the client device is set up to use a VPN connection and turn on that connection. n Verify that you have the fully qualified domain name (FQDN) of the server that provides access to the remote desktop or published application. Underscores (_) are not supported in server names. If the port is not 443, you also need the port number. n If you plan to use the RDP display protocol to connect to a remote desktop, verify that the AllowDirectRDP agent group policy setting is enabled. For information, see the Configuring Remote Desktop Features in Horizon document.

Procedure

1 Either open a terminal window and enter vmware-view or search the applications for VMware Horizon Client, and double-click the icon.

2 Connect to a server.

Option Action

Connect to a new server Double-click the + Add Server button, or click New Server on the menu bar, enter the name of a server, and click Connect.

Connect to an existing server Double-click the server icon, or right-click the server icon and select Connect.

Connections between Horizon Client and the server always use TLS. The default port for TLS connections is 443. If the server is not configured to use the default port, use the format servername:port, for example, view.company.com:1443. You might see a message that you must confirm before the login dialog box appears.

3 If you are prompted for RSA SecurID credentials or RADIUS authentication credentials, enter the credentials and click Login.

4 If you are prompted for a user name and password, supply Active Directory credentials.

a Type the user name and password of a user who is entitled to use at least one desktop or application pool.

If the Domain drop-down menu is disabled, you must type the user name as domain\username or [email protected].

b (Optional) Select a domain value from the Domain drop-down menu.

c Click Login.

VMware, Inc. 75 VMware Horizon Client for Linux Installation and Setup Guide

5 (Optional) To configure display settings for a remote desktop, right-click the remote desktop icon and select Settings.

Option Action

Select a display protocol If a Horizon administrator has allowed it, use the Connect Via drop-down menu to select the display protocol.

Select a display layout Use the Display drop-down menu to select a window size or to use multiple monitors.

6 (Optional) To mark the remote desktop or published application as a favorite, right-click the remote desktop or published application icon and select Mark as Favorite from the context menu that appears.

A star icon appears in the upper-right corner of the remote desktop or published application name. The next time you log in, you can click the Show Favorites button to find this application or desktop quickly.

7 Double-click a remote desktop or application to connect.

If you are connecting to a session-based remote desktop, which is hosted on a Microsoft RDS host, and if the desktop is already set to use a different display protocol, you cannot connect immediately. You are prompted to either use the protocol that is set or have the system log you off the remote operating system so that a connection can be made with the protocol you selected.

Results

After you are connected, the client window appears.

If authentication to Connection Server fails or if the client cannot connect to the remote desktop or application, perform the following tasks: n Verify that the security certificate for Connection Server is working properly. If it is not, in Horizon Console, you might also see that Horizon Agent on desktops is unreachable. These symptoms indicate additional connection problems caused by certificate problems. n Verify that the tags set on the Connection Server instance allow connections from this user. See the Setting Up Published Desktops and Applications in Horizon document. n Verify that the user is entitled to access this desktop or application. See the Setting Up Published Desktops and Applications in Horizon or Setting Up Virtual Desktops in Horizon document. n If you are using the RDP display protocol to connect to a remote desktop, verify that the remote operating system allows remote desktop connections.

VMware, Inc. 76 VMware Horizon Client for Linux Installation and Setup Guide

Connect to Published Applications Using Unauthenticated Access

You can connect to published applications using an unauthenticated access account with Horizon Client.

Before you have end users access their published applications using unauthenticated access, test that you can connect to the published applications from a client device using an unauthenticated access user account.

Prerequisites

Verify that your unauthenticated access users are created in Horizon Console. If the default unauthenticated user is the only unauthenticated access user, the Horizon Client connects to the Connection Server with the default user.

Procedure

1 Either open a terminal window and enter vmware-view or search the applications for VMware Horizon Client, and double-click the icon.

2 In the Horizon Client home screen, select File > Log in anonymously using Unauthenticated Access from the menu bar, if it is not already selected.

3 Connect to the Connection Server that is configured for unauthenticated access.

n If the server that you need has not yet been added, double-click the + Add Server button, or click the New Server button in the menu bar. Then enter the name of the Connection Server and click Connect.

n If the server that you need is displayed in the Horizon Client home screen, right-click the icon for the server and select Connect from the context menu.

You might see a message that you must confirm before the login dialog box appears.

4 In the Server Login dialog box, specify the unauthenticated access account to use.

a Select a user account from the drop-down menu of existing unauthenticated access accounts.

The default user account has (default) displayed next to it.

b (Optional) Click Always use this account if you want to bypass the Server Login dialog box the next time you connect to the server.

c Click OK.

VMware, Inc. 77 VMware Horizon Client for Linux Installation and Setup Guide

The application selector window appears and displays the published applications that the unauthenticated access account is authorized to use.

Note If you selected the Always use this account option during a previous unauthenticated access login session, you are not prompted for the account to use for the current unauthenticated access session. To deselect this option, right-click the icon for the server in the Horizon Client home screen, and select Forget the saved Unauthenticated Access account from the context menu.

5 To start an application, double-click the application icon.

The application window appears.

6 Exit the application after you are done using it.

The Disconnect from Session dialog box appears asking if you want to disconnect from the server.

Results

If the session timeout specified by your Horizon administrator is reached, the session is automatically disconnected from the server.

Share Local Folders and Drives

With the client drive redirection feature, you can share folders and drives on the local client system with remote desktops and published applications.

Shared drives can include mapped drives and USB storage devices.

The client drive redirection feature does not support sharing Microsoft OneDrive, Google Drive, and enterprise file storage.

In a Windows remote desktop, shared folders and drives appear in the This PC folder or in the Computer folder, depending on the Windows operating system version. In a published application, such as Notepad, you can browse to and open a file in a shared folder or drive.

The client drive redirection feature requires that the following library files be installed. On some thin-client machines, these library files might not be installed by default. n libsigc-2.0.so.0 n libglibmm-2.4.so.1

The client drive redirection settings apply to all remote desktops and published applications.

Prerequisites

To share folders and drives with a remote desktop or published application, the client drive redirection feature must be installed in Horizon Agent. The client drive redirection feature is installed by default.

VMware, Inc. 78 VMware Horizon Client for Linux Installation and Setup Guide

With Horizon Agent 7.9 and later, you can include or exclude folders on devices that have specified vendor and product IDs from being redirected by using the Include Vid/Pid Device and Exclude Vid/Pid Device group policy settings. For more information, see the Configuring Remote Desktop Features in Horizon document.

Procedure

1 Open the Settings dialog box with the Sharing panel displayed.

Option Description

From the desktop and application Right-click a remote desktop or published application icon, select Settings, selector window and click Sharing. Alternatively, select Connection > Settings from the menu bar and click Sharing.

From the Sharing dialog box when Click Allow to share, or Deny to not share, your home directory. you connect to a remote desktop or published application

From within a remote desktop Select Connection > Settings from the menu bar and click Sharing.

2 Configure the client drive redirection settings.

Option Action

Share a specific folder or drive with Click the Add button, browse to and select the folder or drive to share, and remote desktops and published click OK. applications Note If a USB device is already connected to a remote desktop or published application with the USB redirection feature, you cannot share a folder on the USB device.

Stop sharing a specific folder or Select the folder or drive in the Folder list and click the Remove button. drive

Give remote desktops and published Select the Share your home folder: home-directory check box. applications access to files in your home directory

VMware, Inc. 79 VMware Horizon Client for Linux Installation and Setup Guide

Option Action

Share USB storage devices with Select the Allow access to removable storage check box. The client drive remote desktops and published redirection feature shares all USB storage devices inserted in your client applications system and all FireWire and Thunderbolt-connected external drives automatically. Selecting a specific device to share is not necessary.

Note USB storage devices already connected to a remote desktop or published application with the USB redirection feature are not shared.

If this check box is deselected, you can use the USB redirection feature to connect USB storage devices to remote desktops and published applications.

Do not show the Sharing dialog box Select the Do not show dialog when connecting to a desktop or when you connect to a remote application check box. desktop or published application If this check box is deselected, the Sharing dialog box appears the first time you connect to a remote desktop or published application. For example, if you log in to a server and connect to a remote desktop, you see the Sharing dialog box. If you then connect to another remote desktop or published application, you do not see the dialog box. To see the dialog box again, you must disconnect from the server and log in again.

What to do next

Verify that you can see the shared folders from within the remote desktop or published application. n In a Windows remote desktop, open File Explorer and look in the This PC folder, or open Windows Explorer and look in the Computer folder, depending on the Windows operating system version. n In a published application, select File > Open or File > Save As and navigate to the folder or drive.

The folders and drives that you selected for sharing might use one (or more) of the following naming conventions.

Naming Convention Example folder-name on desktop-name jsmith on JSMITH-W03 folder-name (drive-number:) jsmith (Z:) folder-name on desktoptop-name (drive-number:) jsmith on JSMITH-W03 (Z:)

For some Horizon Agent versions, a redirected folder can have two entrances, such as under Devices and drives and Network locations in Windows 10, and both entrances can appear at the same time. If all the volume labels (from A: through Z:) are already in use, the redirected folder has only one entrance.

Share Folders by Editing a Configuration File

In addition to sharing folders through the Settings dialog box, you can also share folders by editing a configuration file.

VMware, Inc. 80 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 Create a configuration file named config if it does not exist in any of the following locations:

n $HOME/.vmware/

n /usr/lib/vmware/

n /etc/vmware/

2 Add the following line for each folder that you want to share:

tsdr.share=Folder Path

For example, to share folders / and /home/user1, create the file /etc/vmware/config and add the following lines:

tsdr.share=/ tsdr.share=/home/user1

Results

Folders that are shared in a configuration file are not listed in the Sharing pane of the Settings dialog. You can edit the configuration file to stop sharing folders or share additional folders.

Setting the Certificate Checking Mode in Horizon Client

Server certificate checking occurs for connections between Horizon Client and a server. A certificate is a digital form of identification, similar to a passport or a driver's license.

Server certificate checking includes the following checks: n Is the certificate intended for a purpose other than verifying the identity of the sender and encrypting server communications? That is, is it the correct type of certificate? n Has the certificate expired, or is it valid only in the future? That is, is the certificate valid according to the computer clock? n Does the common name on the certificate match the host name of the server that sends it? A mismatch can occur if a load balancer redirects Horizon Client to a server that has a certificate that does not match the host name entered in Horizon Client. Another reason a mismatch can occur is if you enter an IP address rather than a host name in the client. n Is the certificate signed by an unknown or untrusted certificate authority (CA)? Self-signed certificates are one type of untrusted CA. To pass this check, the certificate's chain of trust must be rooted in the device's local certificate store.

For information about distributing a self-signed root certificate that users can install on their Linux client systems, see the Ubuntu documentation.

VMware, Inc. 81 VMware Horizon Client for Linux Installation and Setup Guide

Horizon Client uses the PEM-formatted certificates stored in the /etc/ssl/certs directory on the client system. For information about importing a root certificate stored in this location, see "Importing a Certificate into the System-Wide Certificate Authority Database" in the document at https://help.ubuntu.com/community/OpenSSL.

If a Horizon administrator has allowed it, you can set the certificate checking mode. To set the certificate checking mode, start Horizon Client and select File > Preferences from the menu bar. You can select one of the following options. n Never connect to untrusted servers. This setting means that you cannot connect to the server if any of the certificate checks fail. An error message lists the checks that failed. n Warn before connecting to untrusted servers. This setting means that you can click Continue to ignore the warning if a certificate check fails because the server uses a self- signed certificate. For self-signed certificates, the certificate name is not required to match the server name that you entered in Horizon Client. You can also receive a warning if the certificate has expired. n Do not verify server identity certificates. This setting means that no certificate checking occurs.

You can configure the default certificate checking mode and prevent end users from changing it in Horizon Client. For more information, see Configuring the Certificate Checking Mode for End Users.

Using an SSL Proxy Server

If you use an SSL proxy server to inspect traffic sent from the client environment to the Internet, enable the Allow connection via an SSL Proxy setting. This setting allows certificate checking for secondary connections through an SSL proxy server and applies to both Blast Secure Gateway and secure tunnel connections. If you use an SSL proxy server and enable certificate checking, but you do not enable the Allow connection via an SSL Proxy setting, connections fail because of mismatched thumbprints. The Allow connection via an SSL Proxy setting is not available if you enable the Do not verify server identity certificates option. When the Do not verify server identity certificates option is enabled, Horizon Client does not verify the certificate or thumbprint and an SSL proxy is always allowed.

To allow VMware Blast connections through a proxy server, see Configure VMware Blast Options.

Switch Remote Desktops or Published Applications

If you are connected to a remote desktop, you can switch to another remote desktop. You can also connect to a published application while you are connected to a remote desktop.

VMware, Inc. 82 VMware Horizon Client for Linux Installation and Setup Guide

Procedure u Select a remote desktop or application from the same server or a different server.

Option Action

Choose a different desktop or Perform one of the following actions: application on the same server n If you are logged in to a remote desktop and you want to switch to another remote desktop or application that is already running on your client, select the desktop or application from the View menu. n If you are logged in to a remote desktop or application and you want to switch to another desktop or application that is not running, select File > Return to Desktop and Applications List from the menu bar and then launch the desktop or application from the selector window. n From the desktop and application selector window, double-click the icon for the other desktop or application. That desktop or application opens in a new window so that you have multiple windows open, and you can switch between them.

Choose a different desktop or Perform either of the following actions: application on a different server n If you want to keep the current desktop or application open and also connect to a remote desktop or application on another server, start a new instance of Horizon Client and connect to the other desktop or application. n If you want to close the current desktop and connect to a desktop on another server, go to the desktop selector window, click the Disconnect icon in the upper-left corner of the window, and confirm that you want to log off of the server. You will be disconnected from the current server and any open desktop or application sessions. You can then connect to a different server.

Log Off or Disconnect

If you disconnect from a remote desktop without logging off, applications in the remote desktop might remain open. You can also disconnect from a server and leave published applications running.

You can log off from a remote desktop even if you do not have the remote desktop open. This feature has the same result as sending Ctrl+Alt+Del to the remote desktop and then clicking Log Off.

VMware, Inc. 83 VMware Horizon Client for Linux Installation and Setup Guide

Procedure u Disconnect without logging off.

Option Action

Also quit Horizon Client Click the Close button in the corner of the window or select File > Quit from the menu bar.

Select a different remote desktop Select Desktop > Disconnect from the menu bar. on the same server

Select a remote desktop on a Select File > Disconnect from server from the menu bar. different server

Note A Horizon administrator can configure remote desktops to log off automatically when they are disconnected. In that case, any open applications in the remote desktop are stopped. u Log off and disconnect from a remote desktop.

Option Action

From within the remote desktop Use the Windows Start menu to log off.

From the menu bar Select Desktop > Disconnect and Log off. If you use this procedure, files that are open on the remote desktop are closed without being saved first.

u Log off when you do not have a remote desktop open.

a From the Home screen with desktop shortcuts, select the desktop and select Desktop > Log off from the menu bar.

b If prompted, supply credentials for accessing the remote desktop. If you use this procedure, files that are open on the remote desktop are closed without being saved first.

VMware, Inc. 84 Working in a Remote Desktop or Published Application 5

Horizon Client for Linux provides a familiar, personalized desktop and application environment. End users can access USB and other devices connected to their local computer, send documents to any printer that their local computer can detect, authenticate with smart cards, and use multiple display monitors.

This chapter includes the following topics: n Feature Support for Linux Clients n Supported Languages n Keyboards and Monitors n Improve Mouse Performance in a Remote Desktop n Use USB Redirection to Connect USB Devices n Using Serial Port Redirection n Using Scanners n Using Webcams and Microphones n Sharing Remote Desktop Sessions n Use Multiple Sessions of a Published Application From Different Client Devices n Using the Seamless Window Feature n Saving Documents in a Published Application n Printing from a Remote Desktop n Copying and Pasting Text

Feature Support for Linux Clients

Certain guest operating systems and remote desktop features require specific Horizon Agent versions. Use this information when planning which features to make available to your end users.

VMware, Inc. 85 VMware Horizon Client for Linux Installation and Setup Guide

Supported Windows Virtual Desktops

Windows virtual desktops are single-session virtual machines.

This version of Horizon Client works with Windows virtual desktops that have Horizon Agent 7.5 or later installed. Supported guest operating systems include Windows 7, Windows 8.x, and Windows 10, Windows Server 2012 R2, Windows Server 2016, and Windows Server 2019, with the following limitations: n Windows Server 2019 virtual desktops require Horizon Agent 7.7 or later. n Windows 7 and Windows 8.x virtual desktops are not supported with Horizon Agent 2006 and later.

Supported Published Desktops on RDS Hosts

RDS hosts are server computers that have Windows Remote Desktop Services and Horizon Agent installed. Multiple users can have published desktop sessions on an RDS host simultaneously. An RDS host can be either a physical machine or a virtual machine.

This version of Horizon Client works with RDS hosts that have Horizon Agent 7.5 or later installed. Supported guest operating systems include Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, and Windows Server 2019, with the following limitations: n Windows Server 2019 RDS hosts require Horizon Agent 7.7 or later. n Window Server 2012 RDS hosts are not supported with Horizon Agent 2006 and later.

Requirements for Specific Remote Desktop Features

Most remote desktop features work with Horizon Agent 7.5, but some features require later Horizon Agent versions.

Feature Requirements

Serial port redirection For Windows virtual desktops, Horizon Agent 7.9 or later For RDS hosts, Horizon Agent 7.6 or later

VMware Integrated Printing and location- Horizon Agent 7.9 or later based printing

Scanner redirection Horizon Agent 7.8 or later

This version of Horizon Client for Linux does not support the following remote desktop features, which are supported in Horizon Agent 7.x releases: n Virtual Printing (also known as ThinPrint)

VMware, Inc. 86 VMware Horizon Client for Linux Installation and Setup Guide

n Flash URL Redirection

Note The vendor and model of each thin-client device, and the configuration that an enterprise chooses to use, determine the features that are available for the device. For information about the vendors and models for thin-client devices, see the VMware Compatibility Guide at http:// www.vmware.com/resources/compatibility/search.php?deviceCategory=vdm.

Supported Linux Desktops

For a list of supported Linux guest operating systems and information about supported features, see the Setting Up Linux Desktops in Horizon document.

Supported Languages

The user interface and documentation are available in English, Japanese, French, German, Simplified Chinese, Traditional Chinese, Korean, and Spanish.

Keyboards and Monitors

You can use multiple monitors and all types of keyboards with a remote desktop. Certain settings ensure the best possible user experience.

Best Practices for Using Multiple Monitors

The following are recommendations for successfully using multiple monitors with a remote desktop: n Define the primary monitor as the bottom-left-most monitor. n Enable Xinerama. If you do not enable Xinerama, the primary display might be identified incorrectly. n The menu bar appears on the top-left-most monitor. For example, if you have two monitors side by side and the top of the left monitor is lower than the top of the right monitor, the menu bar appears on the right monitor because the right monitor is still the top-left-most monitor. n You can use up to four monitors if you have enough video RAM.

To use more than two monitors to display your remote desktop on an Ubuntu client system, you must configure the kernel.shmmax setting correctly. Use the following formula:

max horizontal resolution X max vertical resolution X max number of monitors X 4

For example, manually setting kernel.shmmax to 65536000 allows you to use four monitors with a screen resolution of 2560x1600.

VMware, Inc. 87 VMware Horizon Client for Linux Installation and Setup Guide

n Horizon Client uses the monitor configuration that is in use when Horizon Client starts. If you change a monitor from landscape to portrait mode or if you plug an additional monitor into the client system while Horizon Client is running, you must restart Horizon Client to use the new monitor configuration.

Horizon Client supports the following monitor configurations: n If you use two monitors, the monitors are not required to be in the same mode. For example, if you are using a laptop connected to an external monitor, the external monitor can be in portrait mode or landscape mode. n Monitors can be placed side by side, stacked 2 by 2, or vertically stacked only if you are using two monitors. n If you specify that you want to use all monitors, and if you are using the VMware Blast or PCoIP display protocol, you can specify a subset of adjacent monitors to use by right-clicking the desktop in the desktop selector window, selecting Full Screen - All Monitors from the Display drop-down menu, and clicking to select the monitors you want to use.

Note If you have an Ubuntu client system, you must select the top-left-most monitor as one of the monitors. For example, if you have four monitors stacked 2 X 2, you must select either the two monitors on top or the two left-most monitors.

Screen Resolution

Consider the following guidelines when setting screen resolutions: n If you open a remote desktop on a secondary monitor and then change the screen resolution on that monitor, the remote desktop moves to the primary monitor. n If you use more than two monitors, the monitors must use the same screen resolution. n With the VMware Blast display protocol or the PCoIP display protocol, a remote desktop screen resolution of 4K (3840 x 2160) is supported. The number of 4K displays that are supported depends on the hardware version of the desktop virtual machine and the Windows version.

Number of 4K Displays Hardware Version Windows Version Supported

10 (ESXi 5.5.x compatible) 7, 8, 8.x, 10 1

11 (ESXi 6.0 compatible) 7 3 (3D rendering feature disabled and Windows Aero disabled)

11 7 1 (3D rendering feature enabled)

11 8, 8.x, 10 1

VMware, Inc. 88 VMware Horizon Client for Linux Installation and Setup Guide

Number of 4K Displays Hardware Version Windows Version Supported

13 or 14 7, 8, 8.x, 10 1 (3D rendering feature enabled)

13 or 14 7, 8, 8.x, 10 4

For the best performance, the virtual machine should have at least 2 GB of RAM and 2 vCPUs. This feature might require good network conditions, such as a bandwidth of 1000 Mbps with low network latency and a low package loss rate.

Note When the remote desktop screen resolution is set to 3840 x 2160 (4K), items on the screen might appear smaller, and you might not be able to use the Screen Resolution dialog box in the remote desktop to make text and other items larger. n With RDP, if you have multiple monitors, you cannot adjust the resolution for each monitor separately.

Keyboard Limitations

Generally, keyboards work as well with a remote desktop as they do with a physical computer. Following is a list of the limitations you might encounter, depending on the type of peripherals and software on your client system: n If you use the PCoIP display protocol and want the remote desktop to detect which keyboard map your client system uses, such as, for example, a Japanese keyboard or a German keyboard, you must set a GPO in Horizon Agent. Use the Turn on PCOIP user default input language synchronization policy, available as part of the View PCoIP Session Variables ADM template file. For more information, see the Configuring Remote Desktop Features in Horizon document. n Some multimedia keys on a multimedia keyboard might not work. For example, the Music key and My Computer key might not work. n If you connect to a desktop using RDP and if you have the Fluxbox window manager, if a screen saver is running in the remote desktop, after a period of inactivity, the keyboard might stop working.

Regardless of which window manager you use, it is a good practice to turn off the screen saver on a remote desktop and avoid specifying a sleep timer.

Use Display Scaling

Users that have poor eyesight or high-resolution screens, such as 4K monitors, generally have scaling enabled by setting the DPI (Dots Per Inch) on the client system to greater than 100 percent. The DPI setting controls the size of the text, apps, and icons. A lower DPI setting makes them appear smaller and a higher setting makes them appear bigger. With the Display Scaling

VMware, Inc. 89 VMware Horizon Client for Linux Installation and Setup Guide feature, remote desktops support the client machine's scaling setting and appear normal-sized rather than very small.

Note The DPI Scaling feature is not supported on Raspberry Pi devices and does not work with published applications.

In a multiple-monitor setup, using display scaling does not affect the number of monitors and the maximum resolutions that Horizon Client supports. When display scaling is allowed and is in effect, scaling is based on the DPI setting of the system.

This procedure describes how to use one of the configuration files to enable or disable display scaling for all remote desktops.

Procedure

1 Open the ~/.vmware/view-preferences, /etc/vmware/view-default-config, or /etc/ vmware/view-mandatory-config configuration file in a text editor.

2 Set the view.enableDisplayScaling configuration key.

Set the value to "TRUE" or "FALSE". When this setting is set to "FALSE", the display scaling feature is disabled for all remote desktops. If this setting is not configured or is set to "TRUE" (the default setting), display scaling is enabled for all remote desktops.

3 Save your changes and close the file.

Using DPI Synchronization

The DPI Synchronization feature ensures that the DPI value in a remote session changes to match the DPI value of the client system when you connect to a remote desktop or published application.

Note The DPI synchronization feature is not supported on Raspberry Pi devices.

When the DPI Synchronization feature and the Display Scaling feature are both enabled, only one feature takes effect at any given time. Display scaling occurs only when DPI synchronization has not yet taken effect (that is, before the DPI setting on the remote desktop matches the DPI setting on the client system), and display scaling stops working after the DPI settings match.

The DPI Synchronization agent group policy setting determines whether the DPI Synchronization feature is enabled. The feature is enabled by default.

Behavior of DPI Synchronization with Remote Desktops The default DPI synchronization behavior depends on the Horizon Agent version that is installed in the agent machine.

VMware, Inc. 90 VMware Horizon Client for Linux Installation and Setup Guide

Beginning with Horizon Agent 2012, the client's per-monitor DPI setting is synchronized to the agent and changes take effect immediately during a remote session by default. This feature is controlled by the DPI Synchronization Per Monitor agent group policy setting. The DPI Synchronization Per Monitor feature is supported by default for virtual desktops and physical desktops. It is not supported for published desktops.

With earlier Horizon Agent versions, Horizon Client supports synchronization only to the system DPI setting. DPI Synchronization happens during the initial connection, and Display Scaling works in case of reconnection, if necessary. When DPI Synchronization works and the client system's DPI setting matches the remote desktop's DPI setting, Display Scaling cannot take effect, even if you select the Allow Display Scaling option in the user interface. Windows does not allow users to change the system-level DPI setting for the current user session, and DPI synchronization occurs only when they log in and start a remote session. If users change the DPI setting during a remote session, they must log out and log in again to make the remote desktop's DPI setting match the client system's new DPI setting.

The agent DPI setting is located in the Windows registry at Computer\HKEY_CURRENT_USER \Control Panel\Desktop: logPixels.

Note The system DPI setting might not be the same as the main monitor's DPI setting. For example, if you close the main monitor and the system switches to an external display that has a different DPI setting than the main monitor, the system DPI setting is still the same as the DPI setting of the previously closed main monitor.

This version of Horizon Client does not support the DPI Synchronization Per Connection agent group policy setting, which is provided with Horizon Agent versions 7.8 through 2006.

For more information about the DPI synchronization group policy settings, see the Configuring Remote Desktop Features in Horizon document for your Horizon Agent version.

Supported Guest Operating Systems for Virtual Desktops For virtual desktops, the DPI Synchronization feature is supported on the following guest operating systems: n 32-bit or 64-bit Windows 7 n 32-bit or 64-bit Windows 8.x n 32-bit or 64-bit Windows 10 n Windows Server 2008 R2 configured as a desktop n Windows Server 2012 R2 configured as a desktop n Windows Server 2016 configured as a desktop n Windows Server 2019 configured as a desktop

Note For Windows server machines that are configured as a desktop, the DPI Synchronization Per Monitor feature is not supported.

VMware, Inc. 91 VMware Horizon Client for Linux Installation and Setup Guide

Supported RDS Hosts for Published Desktops and Published Applications For published desktops and published applications, the DPI Synchronization feature is supported on the following RDS hosts: n Windows Server 2012 R2 n Windows Server 2016 n Windows Server 2019

Note For RDS hosts, the DPI Synchronization Per Monitor feature is not supported. This limitation does not apply to published applications that run on desktop pools with the VM Hosted Applications feature.

Tips for Using DPI Synchronization Use the following guidelines when working with DPI Synchronization. n If you change the DPI setting on the client system, but the DPI setting does not change in the remote desktop, you might need to log out and log in again to make Horizon Client aware of the new DPI setting on the client system. n If you start a remote session on a client system that has a DPI setting of more than 100 percent, and then use the same session on another client system that has a different DPI setting of more than 100 percent, you might need to log out and log back in to the remote session on the second client system to make DPI synchronization work on the second client system. n If a Horizon administrator changes the DPI Synchronization group policy setting value for Horizon Agent on a Windows remote desktop, you must log out and log in again to make the new setting take effect.

Select Specific Monitors to Display Published Applications

If you have two or more monitors, you can select the monitors on which to display published application windows. For example, if you have three monitors, you can specify that published application windows appear on only two of those monitors.

You can select up to four adjacent monitors. The monitors can be side by side, or stacked vertically. For example, you might configure two rows of two monitors each.

Note For 4K displays, the following restrictions apply: n For an application published on an RDS host, you can select up to four adjacent monitors. n For an application published on a Windows 10-hosted desktop, you can select up to three adjacent monitors. For information about Windows 10-hosted applications, see the "Deploying Applications that Run on Desktop Pools with VM Hosted Applications" topic in the Setting Up Virtual Desktops in Horizon document for your Horizon Agent version.

VMware, Inc. 92 VMware Horizon Client for Linux Installation and Setup Guide

Prerequisites

You must have two or more monitors.

Procedure

1 Start Horizon Client and connect to a server.

2 Click the Settings button (gear icon) in the upper-right corner of the desktop and application selection window.

3 Select Applications in the left pane of the Settings dialog box.

Thumbnails of the monitors that are currently connected to the client system appear under Display settings. The display topology matches the display settings on the client system.

4 To select or deselect a monitor on which to display published applications, click a thumbnail.

When you select a monitor, its thumbnail changes color. If you violate a display selection rule, a warning message appears.

Customize the Display Resolution and Display Scaling for a Remote Desktop

You can use Horizon Client to customize the display resolution and display scaling for a remote desktop. The display resolution determines the clarity of the text and images. At higher resolutions, such as 1600 x 1200 pixels, items appear sharper. Display scaling, which is represented as a percentage, increases or decreases the size of text, icons, and navigation elements.

Custom display resolution and display scaling settings are stored only on the local client system. If you log in to the remote desktop from a different system, the settings are not applied.

This feature has the following limitations and considerations. n Customizing the display resolution and scaling for a remote desktop is not supported in multiple-monitor mode. n If you select a custom resolution that is higher than the client resolution, Horizon Client resizes the remote desktop window to fit the client window. If you select a custom resolution that is lower than the client resolution, black bars appear in the remote desktop window. n If you customize the display resolution during a remote desktop session, your changes take effect immediately. If you customize display scaling during a remote desktop session, you must log out and log back in to make your changes take effect.

VMware, Inc. 93 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 Set the view.enableSyncDesktopLayout configuration key to allow users to customize the display resolution and scaling of remote desktops.

a On the client system, open the ~/.vmware/view-preferences, /etc/vmware/view- default-config, or /etc/vmware/view-mandatory-config configuration file in a text editor.

b Set the view.enableSyncDesktopLayout configuration key to "FALSE". This setting allows client users to customize the display resolution and scaling of remote desktops.

Note The default value of the view.enableSyncDesktopLayout configuration key is "TRUE". If you do not set the configuration key at all or set it to "TRUE", the customization settings for display resolution and scaling are hidden and inaccessible to users.

c Save your changes and close the configuration file.

2 Start Horizon Client and connect to a server.

3 In the desktop and application selector window, right-click the remote desktop and select Settings.

4 From the Connect Via menu, select VMware Blast or PCoIP.

5 From the Display drop-down menu, select Full Screen - This Monitor, Large Screen, Small Screen, or Custom.

Note If you select the Full Screen - All Monitors option, the Resolution and Scaling drop- down menus are hidden, and you cannot customize the display resolution or scaling of remote desktops.

6 To customize the display resolution, select a resolution from the Resolution drop-down menu.

If you select Automatic (the default setting), Horizon Client fits the remote desktop to the client window size. If the remote desktop does not support the display resolution that you select, it uses the default setting.

7 To customize display scaling, select a scaling size from the Scaling drop-down menu.

If you select Automatic (the default setting), Horizon Client sets the display scaling percentage based on the display resolution that you select.

Configure Lock Key Synchronization

You can configure Horizon Client to synchronize the toggle states of the Num Lock, Scroll Lock, and Caps Lock keys from the client system to a remote desktop, and from a remote desktop to the client system. The configuration applies globally to all the remote desktops under a given server connection.

VMware, Inc. 94 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 Start Horizon Client and connect to a server.

2 Open the Settings dialog box for a remote desktop.

n Click the Settings (gear) icon in the upper-right corner of the desktop and application selection window and select any remote desktop in the left pane.

n Right-click any remote desktop in the desktop and application selection window and select Settings.

3 To enable the lock key synchronization feature, select the Automatically synchronize the keypad, scroll and caps lock keys check box and click Close.

Note If the remote desktop does not support the capability to synchronize the lock key state, the Automatically synchronize the keypad, scroll and caps lock keys check box appears dimmed and cannot be selected.

Results

The lock key synchronization feature is enabled for all the remote desktops under the server connection.

If you deselect the Automatically synchronize the keypad, scroll and caps lock keys check box, the lock key synchronization feature is disabled for all the remote desktops under the server connection.

Keyboard Input Source Language Synchronization

When you connect to a remote desktop, the keyboard input source language on the client system is synchronized in the remote desktop.

This feature supports the following keyboard input source languages on the client system. n English n French n German n Japanese n Korean n Spanish n Simplified Chinese n Traditional Chinese

Synchronization does not occur if the keyboard input source language is not supported.

Keyboard input source language synchronization is controlled by the agent-side Keyboard locale synchronization group policy setting. For more information, see "VMware Blast Group Policy Settings" in the Configuring Remote Desktop Features in Horizon document.

VMware, Inc. 95 VMware Horizon Client for Linux Installation and Setup Guide

Use an Input Method Editor with Published Applications

This topic explains how to use an input method editor (IME) on your client system to enter text in a published application session from Horizon Client for Linux. You can configure a setting to have published applications accept text in a language that you input using an IME.

Procedure

1 Start Horizon Client and connect to a server.

2 Click the Settings (gear) icon in the upper-right corner of the desktop and application selection window.

3 In the left pane of the Settings dialog box, select Applications.

4 Select the Extend the local IME to hosted applications checkbox.

Improve Mouse Performance in a Remote Desktop

If you use the VMware Blast display protocol or the PCoIP display protocol when using 3D applications in a remote desktop, mouse performance improves when you enable the relative mouse feature.

In most circumstances, if you are using applications that do not require 3D rendering, Horizon Client transmits information about mouse pointer movements by using absolute coordinates. Using absolute coordinates, the client renders the mouse movements locally, which improves performance, especially if you are outside the corporate network.

For work that requires using graphics-intensive applications, such as AutoCAD, or for playing 3D video games, you can improve mouse performance by enabling the relative mouse feature, which uses relative, rather than absolute, coordinates.

The Horizon Client relative mouse feature is not enabled by default. You can use the view.enableRelativeMouse configuration key in the ~/.vmware/view-preferences file to enable or disable Horizon Client relative mouse and prevent users from changing the setting in the Horizon Client user interface. You must configure the relative mouse setting before end users connect to a server. The setting is applied to the current desktop connection session. If the Horizon Client relative mouse setting is configured using the ~/.vmware/view-preferences file, end users cannot change the setting after connecting to a server.

When the relative mouse feature is enabled, performance might be slow if you are outside the corporate network, on a WAN.

Prerequisites

A Horizon administrator must turn on 3D rendering for the desktop pool. For information about pool settings and the options available for 3D rendering, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document.

VMware, Inc. 96 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 Start Horizon Client and log in to the server.

2 Right-click the remote desktop and select VMware Blast or PCoIP.

3 Connect to the remote desktop.

4 Select Connection > Enable Relative Mouse from the Horizon Client menu bar.

The option is a toggle. To disable the relative mouse feature, select Connection > Enable Relative Mouse again.

Note If you use Horizon Client in windowed mode rather than full-screen mode and the relative mouse feature is enabled, you might not be able to move the mouse pointer to the Horizon Client menu options or move the pointer outside of the Horizon Client window. To resolve this situation, press Ctrl+Alt.

Use USB Redirection to Connect USB Devices

With the USB redirection feature, you can use locally attached USB devices, such as thumb flash drives, in a remote desktop or published application.

When you use the USB redirection feature, most USB devices that are attached to the local client system become available from menus in Horizon Client. You can use the menus to connect and disconnect the devices.

You can redirect locally connected USB thumb flash drives and hard disks for use in published desktops and applications. Published desktops and applications can also support more generic USB devices, including TOPAZ Signature Pad, Olympus Dictation Foot pedal, and Wacom signature pad. Other types of USB devices, including security storage drives and USB CD-ROM drives, are not supported in published desktops and applications.

You can connect USB devices to a remote desktop or published application either manually or automatically.

Important The following procedures describe how to use Horizon Client to connect USB devices to a remote desktop or published application. You can also configure USB redirection by using a configuration file or by creating a group policy. For more information about using a configuration file, see Chapter 6 Configuring USB Redirection on the Client. For more information about creating group policies, see the Configuring Remote Desktop Features in Horizon document.

Prerequisites n To use USB devices with a remote desktop or published application, a Horizon administrator must enable the USB feature.

This task includes installing the USB Redirection component of Horizon Agent, and can include setting policies regarding USB redirection. For more information, see the Configuring Remote Desktop Features in Horizon document and Setting USB Configuration Properties.

VMware, Inc. 97 VMware Horizon Client for Linux Installation and Setup Guide

n The USB Redirection component must be installed in Horizon Client. If you did not include this component in the installation, uninstall the client and run the installer again to include the USB Redirection component. n Become familiar with USB Redirection Limitations.

Procedure u Connect a USB device to a remote desktop.

a Connect the USB device to your local client system.

b From the Horizon Client menu bar, click Connect USB Device.

c Select the USB device.

The device is redirected from the local system to the remote desktop. u Connect a USB device to a published application.

a Connect the USB device to the local client system.

b In the desktop and application selector window, open the published application.

The name of the application is the name that your administrator has configured for the application.

c In the desktop and application selector window, right-click the application icon and select Settings.

d In the left pane, select USB Devices.

e In the right pane, select the USB device and click Connect.

f Select the application, and click OK.

Note The name of the application in the list comes from the application itself and might not match the application name that your administrator configured to appear in the desktop and application selector window.

Horizon Client connects the USB device to the published application that you selected. The USB device is also available to other applications in the same farm as the application that you selected. After you close the application, the USB device is not released right away.

VMware, Inc. 98 VMware Horizon Client for Linux Installation and Setup Guide

g (Optional) To configure Horizon Client to connect the USB device automatically to the published application when the application is started, select the Auto-connect at Startup check box and click Apply.

This setting is not selected by default, and it is saved in ~/.vmware/view-brokers-prefs. This setting also applies to all other applications in the same farm as the application that you selected.

Note The configuration key view.usbAutoConnectAtStartUp and command-line option --usbAutoConnectAtStartUp override the setting saved in ~/.vmware/view-brokers-prefs. For more information, see Horizon Client Configuration Settings and Command-Line Options.

h (Optional) To configure Horizon Client to connect the USB device automatically to the published application when you plug the device into the local system, select the Auto- connect when inserted check box and click Apply.

This setting is not selected by default, and it is saved in ~/.vmware/view-brokers-prefs. The published application must be activated and in the foreground for this behavior to take effect. This setting also applies to all other applications in the same farm as the application that you selected.

Note The configuration key view.usbAutoConnectOnInsert and command-line option --usbAutoConnectOnInsert override the setting saved in ~/.vmware/view-brokers-prefs. For more information, see Horizon Client Configuration Settings and Command-Line Options.

i To close the Settings window, click Close.

j When you are finished using the application, release the USB device so that you can access it from your local system. In the desktop and application selector window, open the Settings window again, select USB Devices, and select Disconnect. u Configure Horizon Client to connect USB devices automatically to a remote desktop when Horizon Client starts.

This option is not selected by default. a Before you plug in the USB device, start Horizon Client and connect to a remote desktop.

b From the Horizon Client menu bar, click Connect USB Device.

c Select Automatically Connect at Startup.

d Plug in the USB device and restart Horizon Client.

USB devices that you connect to your local system after you start Horizon Client are redirected to the remote desktop.

VMware, Inc. 99 VMware Horizon Client for Linux Installation and Setup Guide

u Configure Horizon Client to connect USB devices automatically to a remote desktop when you plug them in to the local system.

The remote desktop must be activated and in the foreground for this behavior to take effect. Enable this option if you plan to connect devices that use MTP drivers, such as Android- based Samsung smart phones and tablets. This option is not selected by default. a Before you plug in the USB device, start Horizon Client and connect to a remote desktop.

b From the Horizon Client menu bar, click Connect USB Device.

c Select Automatically Connect when Inserted.

d Plug in the USB device.

USB devices that you connect to your local system after you start Horizon Client are redirected to the remote desktop.

Note You can also configure automatically connecting USB devices to remote desktops using the configuration file options view.usbAutoConnectAtStartUp and view.usbAutoConnectOnInsert. For more information, see Horizon Client Configuration Settings and Command-Line Options.

Results

If the USB device does not appear in the remote desktop or published application after several minutes, disconnect and reconnect the device to the client system.

What to do next

If you have problems with USB redirection, see the topic about troubleshooting USB redirection problems in the Configuring Remote Desktop Features in Horizon document.

USB Redirection Limitations

The USB redirection feature has certain limitations. n When you access a USB device from a menu in Horizon Client and use the device in a remote desktop or published application, you cannot access the USB device on the local device. n USB devices that do not appear in the menu, but are available in a remote desktop or published application, include human interface devices such as keyboards and pointing devices. The remote desktop or published application, and the local device, use these devices at the same time. Interaction with these USB devices can sometimes be slow because of network latency. n Large USB disk drives can take several minutes to appear in the remote desktop or published application. n Some USB devices require specific drivers. If a required driver is not already installed, you might be prompted to install it when you connect the USB device to the remote desktop or published application.

VMware, Inc. 100 VMware Horizon Client for Linux Installation and Setup Guide

n If you plan to attach USB devices that use MTP drivers, such as Android-based Samsung smart phones and tablets, configure Horizon Client so that it connects USB devices to the remote desktop or published application automatically. Otherwise, if you try to manually redirect the USB device by using a menu item, the device is not redirected unless you unplug the device and then plug it in again. n Do not connect to scanners by using the Connect USB Device menu. To use a scanner device, use the scanner redirection feature. This feature is available for Horizon Client when used with Horizon Agent 7.8 or later. See Using Scanners. n The redirection of USB audio devices depends on the state of the network and is not reliable. Some devices require a high data throughput even when they are idle. Audio input and output devices work well with the Real-Time Audio-Video feature. You do not need to use USB redirection for those devices. n You cannot format a redirected USB drive in a published desktop unless you connect as an administrator user.

Note Do not redirect USB devices such as USB Ethernet devices and touch screen devices to a remote desktop or published application. If you redirect a USB Ethernet device, your client system loses network connectivity. If you redirect a touch screen device, the remote desktop or published application receives touch input but not keyboard input. If you have set the remote desktop or published application to autoconnect USB devices, you can configure a policy to exclude specific devices. See "Configuring Filter Policy Settings for USB Devices" in the Configuring Remote Desktop Features in Horizon document.

Using Serial Port Redirection

With serial port redirection, you can redirect locally connected serial (/dev/ttyS) ports, such as built-in RS232 ports and USB-to-serial adapters. Devices such as printers, bar code readers, and other serial devices can be connected to these ports and used in virtual desktops and RDS- hosted desktops.

If a Horizon administrator has configured the serial port redirection feature, and if you use the VMware Blast or PCoIP display protocol, serial port redirection works in the virtual desktop or RDS-hosted desktop without further configuration. For example, /dev/ttyS0 on the local client system is redirected as COM1 on the remote desktop. Serial port /dev/ttyS1 is redirected as COM2. If the /dev/ttyS port is already in use, it is mapped to avoid conflicts. For example, if COM1 and COM2 exist on the remote desktop, /dev/ttyS0 on the client system is mapped to COM3 by default.

VMware, Inc. 101 VMware Horizon Client for Linux Installation and Setup Guide

You must have any required device drivers installed on the local client system, but you do not need to install the device drivers on the remote desktop. For example, if you use a USB-to-serial adapter that requires specific device drivers to work on your local client system, you must install those drivers, but only on the client system.

Important If you are using a device that plugs in to a USB-to-serial adapter, do not connect the device from the Connect USB Device menu in Horizon Client. Doing so routes the device through USB redirection and bypasses the serial port redirection feature.

Tips for Using the Serial Port Redirection Feature n Click the serial port icon ( ) in the system tray or notification area of the remote desktop to connect, disconnect, or customize the mapped /dev/ttyS ports.

When you click the serial port icon, the Serial COM Redirection for VMware Horizon context menu appears. If an administrator has locked the configuration, the items in the context menu are dimmed. The icon appears only if a Horizon administrator has configured the serial port redirection feature and all requirements are met. For more information, see System Requirements for Serial Port Redirection. n In the context menu, the port items are listed as port mapped to port, for example, /dev/ ttyS0 mapped to COM1. The first port, which is /dev/ttyS0 in this example, is the physical port or the USB-to-serial adapter on the local client system. The second port, which is COM1 in this example, is the port used in the remote desktop. n To select the Port Properties command, right-click a /dev/ttyS port.

In the COM Properties dialog box, you can configure a port to connect automatically when a remote desktop session is started, or you can ignore DSR (data-set-ready signal), which is required for some modems and other devices.

You can also change the port number that the remote desktop uses. For example, if the /dev/ ttyS0 port on the client system is mapped to COM3 in the remote desktop, you can change the port number to COM1. If COM1 exists in the remote desktop, you might see COM1 (Overlapped). You can still use this overlapped port. The remote desktop can receive serial data through the port from the server and also from the client system. n Connect to a mapped COM port by selecting Connect to use the port in the remote desktop.

When a redirected COM port is opened and in use on a remote desktop, you cannot access the port on the local computer. Conversely, when a /dev/ttyS port is in use on the local computer, you cannot access the port on the remote desktop. n You can then select the Disconnect command to disconnect and make the physical COM port available for use on the client computer.

VMware, Inc. 102 VMware Horizon Client for Linux Installation and Setup Guide

Using Scanners

With the scanner redirection feature, you can scan information into remote desktops with scanners that are connected to the local client system. You can control scanner settings by selecting options in the remote desktop interface. This feature redirects scanning data with a significantly lower bandwidth than can be achieved by using USB redirection.

Scanner redirection supports scanning devices that are compatible with the SANE interface standard. You must install the SANE scanner device drivers on the local client system. You do not need to install the scanner device drivers on a remote desktop.

The scanner redirection feature does not support webcam devices. VMware recommends that you use the Real-Time Audio-Video feature to redirect webcams.

Note Scanner redirection to the remote desktop does not work when you scan from an application that supports the WIA (Windows Image Acquisition) standard. To use scanner redirection, scan from an application that supports the TWAIN standard instead.

If a Horizon administrator has configured the scanner redirection feature, and if you use the VMware Blast display protocol or the PCoIP display protocol, a scanner connected to your local client system can be used in a remote desktop.

Important Do not connect a scanner from the Connect USB Device menu in Horizon Client. The performance will be unusable.

When scanning data is redirected to a remote desktop, you cannot access the scanner on the local client computer. Conversely, when a scanner is in use on the local client computer, you cannot access it on the remote desktop.

Note When you connect a scanner to a USB port on the local client computer, Horizon Client sends scanning data to the remote desktop through USB redirection by default. To send data through scanner redirection instead, configure a USB redirection policy to exclude your scanning device. For more information, see Setting USB Configuration Properties.

A Horizon administrator can configure group policy settings to control the options that available in the VMware Horizon Scanner Redirection Preferences dialog box. For more information, see the Configuring Remote Desktop Features in Horizon document.

Note If a Horizon administrator configures scanner redirection to use a specific scanner and that scanner is not available, scanner redirection does not work.

Tips for Using the Scanner Redirection Feature n To change scanner redirection settings, click the scanner icon ( ) in the system tray or notification area of the remote desktop.

VMware, Inc. 103 VMware Horizon Client for Linux Installation and Setup Guide

If the scanner or serial port service does not start, restart the local client system.

Note You do not need to use the menu that appears when you click the scanner icon. Scanner redirection works without any further configuration. If the menu that appears does not list any scanners, an incompatible scanner is connected to the local client system. If the scanner icon is not present, the scanner redirection feature is either disabled or not installed on the remote desktop. The scanner icon also does not appear on local client systems that do not support this feature. n If you want the TWAIN Scanning Properties dialog box to appear even if a scanning application does not display the scanning dialog box, click the Preferences option in the scanner icon menu and select the Force the TWAIN Scanning Properties dialog check box. n To display the actual scanner names rather than VMware Virtual nnn scanner, click the Preferences option in the scanner icon menu and select the Use vendor defined names for TWAIN scanners check box. n To select options to control image compression or determine how to select the default scanner, click the Preferences option in the scanner icon menu and select the Compression or Defaults tab. n Most scanners display a scanner settings dialog box by default, but some do not. For those scanners that do not display settings options, you can use the Preferences option in the scanner icon menu and select the Force the TWAIN Scanning Properties dialog option. n To display the TWAIN Scanner Properties dialog box on the remote desktop, click the Preferences option in the scanner icon menu and select the Agent (VMware Scanning Properties dialog) check box. Horizon Client for Linux does not support the Client (Native Scanning Properties dialog, if supported) option. n Scanning too large an image or scanning at too high a resolution might not work. In this case, you might see the scanning progress indicator freeze, or the scanner application might exit unexpectedly. If you minimize the remote desktop, an error message might appear on the local client system, notifying you that the resolution is set too high. To resolve this issue, reduce the resolution or crop the image to a smaller size and scan again.

Using Webcams and Microphones

With the Real-Time Audio-Video feature, you can use the local client system's webcam or microphone in a remote desktop or published application. Real-Time Audio-Video is compatible with standard conferencing applications and browser-based video applications. It supports standard webcams, audio USB devices, and analog audio input.

VMware, Inc. 104 VMware Horizon Client for Linux Installation and Setup Guide

For information about setting up the Real-Time Audio-Video feature on the agent machine, including configuring the frame rate and image resolution, see the Configuring Remote Desktop Features in Horizon document.

Note This feature is available only with the version of Horizon Client for Linux provided by third- party vendors or with the Horizon Client software available from the VMware Product Downloads website.

When You Can Use a Webcam with the Real-Time Audio-Video Feature

If a Horizon administrator has configured the Real-Time Audio-Video feature, you can use a webcam that is built in or connected to the client computer in a remote desktop or published application. You can use the webcam in conferencing applications such as Skype, Webex, or Google Hangouts.

During the setup of an application such as Skype, Webex, or Google Hangouts on a remote desktop, you can select input and output devices from menus in the application.

For remote desktops and published applications, a redirected webcam is named VMware Virtual Webcam in the application.

For many applications, you do not need to select an input device.

When the client computer uses the webcam, the remote session cannot use it at the same time. Also, when the remote session uses the webcam, the client computer cannot use it at the same time.

Important If end users use USB webcams, do not configure the client to forward devices through USB redirection automatically. If the webcam connects through USB redirection, the performance is not usable for video chat.

If more than one webcam is connected to the local client computer, you can configure a preferred webcam to use in remote sessions.

Select a Default Microphone on a Linux Client System

If you have multiple microphones on your client system, only one of them is used on your remote desktop. To specify which microphone is the default, you can use the Sound control on your client system.

With the Real-Time Audio-Video feature, audio input devices and audio output devices work without requiring the use of USB redirection, and the amount of network bandwidth required is greatly reduced. Analog audio input devices are also supported.

This procedure describes choosing a default microphone from the user interface of the client system. Administrators can also configure a preferred microphone by editing a configuration file. See Select a Preferred Webcam or Microphone on a Linux Client System.

VMware, Inc. 105 VMware Horizon Client for Linux Installation and Setup Guide

Prerequisites n Verify that you have a USB microphone or another type of microphone installed and operational on your client system. n Verify that you are using the VMware Blast display protocol or the PCoIP display protocol for your remote desktop.

Procedure

1 In the Ubuntu graphical user interface, select System > Preferences > Sound.

You can alternatively click the Sound icon on the right side of the toolbar at the top of the screen.

2 Click the Input tab in the Sound Preferences dialog box.

3 Select the preferred device and click Close.

Select a Preferred Webcam or Microphone on a Linux Client System

With the Real-Time Audio-Video feature, if you have multiple webcams and microphones on your client system, only one webcam and one microphone can be used on your remote desktop. To specify which webcam and microphone are preferred, you can edit a configuration file.

The preferred webcam or microphone is used on the remote desktop if it is available, and if not, another webcam or microphone is used.

With the Real-Time Audio-Video feature, webcams, audio input devices, and audio output devices work without requiring the use of USB redirection, and the amount network bandwidth required is greatly reduced. Analog audio input devices are also supported.

To set the properties in the /etc/vmware/config file and specify a preferred device, you must determine the values of certain fields. You can search the log file for the values of these fields. n For webcams, you set the rtav.srcWCamId property to the value of the UserId field for the webcam and the rtav.srcWCamName property to the value of the Name field for the webcam.

The rtav.srcWCamName property has a higher priority than the rtav.srcWCamId property. Both properties should specify the same webcam. If the properties specify different webcams, the webcam specified by rtav.srcWCamName is used, if it exists. If it does not exist, the webcam specified by rtav.srcWCamId is used. If both webcams are not found, the default webcam is used. n For audio devices, you set the rtav.srcAudioInId property to the value of the Pulse Audio device.description field.

Prerequisites

Depending on whether you are configuring a preferred webcam, preferred microphone, or both, perform the appropriate prerequisite tasks: n Verify that you have a USB webcam installed and operational on your client system.

VMware, Inc. 106 VMware Horizon Client for Linux Installation and Setup Guide

n Verify that you have a USB microphone or another type of microphone installed and operational on your client system. n Verify that you are using the VMware Blast display protocol or the PCoIP display protocol for your remote desktop.

Procedure

1 Launch the client, and start a webcam or microphone application to trigger an enumeration of camera devices or audio devices to the client log.

a Attach the webcam or audio device you want to use.

b Use the command vmware-view to start Horizon Client.

c Start a call and then stop the call.

This process creates a log file.

VMware, Inc. 107 VMware Horizon Client for Linux Installation and Setup Guide

2 Find log entries for the webcam or microphone.

a Open the debug log file with a text editor.

The log file with real-time audio-video log messages is located at /tmp/vmware- /vmware-RTAV-.log. The client log is located at /tmp/vmware- /vmware-view-.log.

b Search the log file to find the log file entries that reference the attached webcams and microphones.

The following example shows an extract of the webcam selection:

main| I120: RTAV: static void VideoInputBase::LogDevEnum() - 3 Device(s) found main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=UVC Camera (046d:0819) UserId=UVC Camera (046d:0819)#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.4/1-3.4.5 SystemId=/dev/video1 main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=gspca main driver UserId=gspca main driver#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.4/1-3.4.7 SystemId=/dev/video2 main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=Microsoft® LifeCam HD-6000 for Notebooks UserId=Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6 SystemId=/dev/video0 main| W110: RTAV: static bool AudioCaptureLin::EnumCaptureDevices(MMDev::DeviceList&) - enumeration data unavailable

The following example shows an extract of the audio device selection, and the current audio level for each:

vthread-18| I120: RTAV: bool AudioCaptureLin::TriggerEnumDevices() - Triggering enumeration vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=1 'alsa_output.usb- Logitech_Logitech_USB_Headset-00-Headset.analog-stereo.monitor' 'Monitor of Logitech USB Headset Analog Stereo')

vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:65536 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:1 vol:65536 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=2 'alsa_input.usb- Logitech_Logitech_USB_Headset-00-Headset.analog-mono' 'Logitech USB Headset Analog Mono')

vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:98304 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=3 'alsa_output.usb- Microsoft_Microsoft_LifeChat_LX-6000-00-LX6000.analog-stereo.monitor' 'Monitor of Microsoft LifeChat LX-6000 Analog Stereo')

vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:65536

VMware, Inc. 108 VMware Horizon Client for Linux Installation and Setup Guide

Warnings are shown if any of the source audio levels for the selected device do not meet the PulseAudio criteria if the source is not set to 100% (0dB), or if the selected source device is muted, as follows:

vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioSourceInfoCB(pa_context*, const pa_source_info*, int, void*) - Note, selected device channel volume: 0: 67% vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioSourceInfoCB(pa_context*, const pa_source_info*, int, void*) - Note, selected device channel is muted

3 Copy the description of the device and use it to set the appropriate property in the /etc/ vmware/config file.

For a webcam example, copy Microsoft® LifeCam HD-6000 for Notebooks and Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6 to specify the Microsoft webcam as the preferred webcam and set the properties as follows:

rtav.srcWCamName = “Microsoft® LifeCam HD-6000 for Notebooks” rtav.srcWCamId = “Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/ usb1/1-3/1-3.6”

For this example, you could also set the rtav.srcWCamId property to "Microsoft". The rtav.srcWCamId property supports both partial and exact matches. The rtav.srcWCamName property supports only an exact match. For an audio device example, copy Logitech USB Headset Analog Mono to specify the Logitech headset as the preferred audio device and set the property as follows:

rtav.srcAudioInId="Logitech USB Headset Analog Mono"

4 Save your changes and close the /etc/vmware/config configuration file.

5 Log off of the desktop session and start a new session.

Sharing Remote Desktop Sessions

With the Session Collaboration feature, you can invite other users to join an existing remote desktop session. A remote desktop session that is shared in this way is called a collaborative session. The user that shares a session with another user is called the session owner, and the user that joins a shared session is called a session collaborator.

A Horizon administrator must enable the Session Collaboration feature.

For Windows desktops, this task includes enabling the Session Collaboration feature at the desktop pool or farm level. It can also include using group policies to configure Session Collaboration features, such as the available invitation methods. For complete requirements, see Requirements for the Session Collaboration Feature.

VMware, Inc. 109 VMware Horizon Client for Linux Installation and Setup Guide

For information about enabling the Session Collaboration feature for Windows desktops, see the Setting Up Virtual Desktops in Horizon document. For information about enabling the Session Collaboration feature for a farm, see the Setting Up Published Desktops and Applications in Horizon document. For information about using group policy settings to configure the Session Collaboration feature, see the Configuring Remote Desktop Features in Horizon document.

For information about enabling the Session Collaboration feature for Linux desktops, see the Setting Up Linux Desktops in Horizon document.

Invite a User to Join a Remote Desktop Session

With the Session Collaboration feature, you can invite users to join a remote desktop session by sending collaboration invitations by email, in an instant message (Windows remote desktops only), or by copying a link to the clipboard and forwarding the link to users.

You can invite only users that belong to a domain that the server allows for authentication. You can invite up to five users by default. A Horizon administrator can change the maximum number of users that you can invite.

The Session Collaboration feature has the following limitations. n If you have multiple monitors, only the primary monitor is shown to session collaborators. n You must select the VMware Blast display protocol when you create a remote desktop session to share. The Session Collaboration feature does not support PCoIP or RDP sessions. n H.264 hardware encoding is not supported. If the session owner is using hardware encoding and a collaborator joins the session, both fall back to software encoding. n Anonymous collaboration is not supported. Session collaborators must be identifiable through Horizon-supported authentication mechanisms. n Session collaborators must have Horizon Client for Windows, Mac, or Linux installed, or they must use HTML Access. n If a session collaborator has an unsupported version of Horizon Client, an error message appears when the user clicks a collaboration link. n You cannot use the Session Collaboration feature to share published application sessions.

Prerequisites n The Session Collaboration feature must be enabled and configured. n To use the email invitation method, an email application must be installed. n To use the IM invitation method for a Windows remote desktop, Skype for Business must be installed and configured.

Procedure

1 Connect to a remote desktop for which the Session Collaboration feature is enabled.

You must use the VMware Blast display protocol.

VMware, Inc. 110 VMware Horizon Client for Linux Installation and Setup Guide

2 In the system tray in the remote desktop, click the VMware Horizon Collaboration icon, for

example, .

The collaboration icon might look different, depending on the operating system version.

3 When the VMware Horizon Collaboration dialog box opens, enter the user name (for example, testuser or domain\testuser) or the email address of the user that you want to join the remote desktop session.

The first time you enter the user name or email address of a particular user, you must click Look up "user", enter a comma (,), or press the Enter key to validate the user. For Windows remote desktops, the Session Collaboration feature remembers the user the next time you enter the user's user name or email address.

4 Select an invitation method.

Not all invitation methods might be available.

Option Action

Email Copies the collaboration invitation to the clipboard and opens a new email message in the default email application. An email application must be installed to use this invitation method.

IM (Windows remote desktops only) Copies the collaboration invitation to the clipboard and opens a new window in Skype for Business. Press Ctrl+V to paste the link into the Skype for Business window. Skype for Business must be installed and configured to use this invitation method.

Copy Link Copies the collaboration invitation to the clipboard. You must manually open another application, such as Notepad, and press Ctrl+V to paste the invitation.

Results

After you send an invitation, the VMware Horizon Collaboration icon also appears on the desktop and the Session Collaboration user interface turns into a dashboard that shows the current state of the collaboration session and enables you to take certain actions.

When a session collaborator accepts your invitation to join a Windows remote desktop session, the Session Collaboration feature notifies you and a red dot appears on the VMware Horizon Collaboration icon in the system tray. When a session collaborator accepts your invitation to join a Linux remote desktop session, a notification appears in the primary session desktop.

What to do next

Manage the remote desktop session in the VMware Horizon Collaboration dialog box. See Manage a Shared Remote Desktop Session.

VMware, Inc. 111 VMware Horizon Client for Linux Installation and Setup Guide

Manage a Shared Remote Desktop Session

After you send a session collaboration invitation, the Session Collaboration user interface turns into a dashboard that shows the current state of the shared remote desktop session (collaborative session) and enables you to take certain actions.

A Horizon administrator can prevent the hand off of control to a session collaborator. For Windows remote desktops, see the Allow control passing to collaborators group policy setting in the Configuring Remote Desktop Features in Horizon document. For Linux remote desktops, see the collaboration.enableControlPassing parameter in the Setting Up Linux Desktops in Horizon document.

Prerequisites

Start a collaborative session. See Invite a User to Join a Remote Desktop Session.

Procedure

1 In the remote desktop, click the VMware Horizon Collaboration icon in the system tray.

The names of all session collaborators appear in the Name column and their status appears in the Status column.

2 Use the VMware Horizon Session Collaboration dashboard to manage the collaborative session.

Option Action

Revoke an invitation or remove a Click Remove in the Status column. collaborator

Hand off control to a session After the session collaborator joins the session, toggle the switch in the collaborator Control column to On. To resume control of the session, double-click or press any key. The session collaborator can also give back control by toggling the switch in the Control column to Off, or by clicking the Give Back Control button.

Add a collaborator Click Add Collaborators.

End the collaborative session Click End Collaboration. All active collaborators are disconnected. In Windows remote desktops, you can also end the collaborative session by clicking the Stop button next to the VMware Horizon Session Collaboration icon. The Stop button is not available in Linux remote desktops.

Join a Remote Desktop Session

With the Session Collaboration feature, you can click the link in a collaboration invitation to join a remote desktop session. The link might be in an email or instant message, or in a document that the session owner forwards to you. Alternatively, you can log in to the server and double-click the icon for the session in the remote desktop and application selector window.

VMware, Inc. 112 VMware Horizon Client for Linux Installation and Setup Guide

This procedure describes how to join a remote desktop session from a collaboration invitation.

Note In a Cloud Pod Architecture environment, you cannot join a collaborative session by logging in to the server unless you log in to the session owner's pod.

When you join a remote desktop session with the Session Collaboration feature, you cannot use the following features in the remote desktop session. n USB redirection n Real-Time Audio-Video (RTAV) n Multimedia redirection n Client drive redirection n Smart card redirection n Clipboard redirection

You also cannot change the remote desktop resolution in the remote desktop session.

Prerequisites

To join a remote desktop session with the Session Collaboration feature, you must have Horizon Client for Windows, Mac, or Linux installed on the client system, or you must use HTML Access.

Procedure

1 Click the link in the collaboration invitation.

Horizon Client opens on the client system.

2 Enter your credentials to log in to Horizon Client.

After you are successfully authenticated, the collaborative session begins and you can see the session owner's remote desktop. If the session owner transfers mouse and keyboard control to you, you can use the remote desktop.

3 To return mouse and keyboard control to the session owner, click the VMware Horizon Collaboration icon in the system tray and toggle the switch in the Control column to Off, or click the Give Back Control button.

4 To leave the collaborative session, click Options > Disconnect.

Use Multiple Sessions of a Published Application From Different Client Devices

When multi-session mode is enabled for a published application, you can use multiple sessions of the same published application when you log on to the server from different client devices.

VMware, Inc. 113 VMware Horizon Client for Linux Installation and Setup Guide

For example, if you open a published application in multi-session mode on client A, and then open the same published application on client B, the published application remains open on client A and a new session of the published application opens on client B. By comparison, when multi- session mode is disabled (single-session mode), the published application session on client A disconnects and reconnects on client B.

The multi-session mode feature has the following limitations. n Multi-session mode does not work for applications that do not support multiple instances, such as Skype for Business. n If the application session is disconnected while you are using a published application in multi- session mode, you are logged off automatically and any unsaved data is lost.

Prerequisites

A Horizon administrator must enable multi-session mode for the application pool. Users cannot modify the multi-session mode for a published application unless a Horizon administrator allows it. See Setting Up Published Desktops and Applications in Horizon. This feature requires Horizon 7 version 7.7 or later.

Procedure

1 Connect to a server.

2 Click the Settings button (gear icon) in the upper-right corner of the desktop and application selector window and select Multi-Launch.

If no published applications are available to use in multi-session mode, the Multi-Launch setting does not appear.

3 Select the published applications that you want to use in multi-session mode and click OK.

If a Horizon administrator has enforced multi-session mode for a published application, you cannot change this setting.

Using the Seamless Window Feature

With the Seamless Window feature, you can interact with an application that is running on a remote desktop as if it was a locally running application.

The Seamless Window feature is enabled by default and available for all supported Linux systems.

Saving Documents in a Published Application

With certain published applications, such as Microsoft Word or WordPad, you can create and save documents. Where these documents are saved depends on your company's network environment. For example, your documents might be saved to a home share mounted on your local computer.

VMware, Inc. 114 VMware Horizon Client for Linux Installation and Setup Guide

A Horizon administrator can use the RDS Profiles group policy setting called Set Remote Desktop Services User Home Directory to specify where documents are saved. For more information, see the Configuring Remote Desktop Features in Horizon document.

Printing from a Remote Desktop

You can print from a remote desktop to a local or network printer. The VMware Integrated Printing feature allows you to print to a local or network printer without having to install additional printer drivers in the remote desktop. The USB redirection feature provides another way to print from a remote desktop to a USB printer to the local client computer.

For information about the types of remote desktops that support VMware Integrated Printing, see Feature Support for Linux Clients.

Set Printing Preferences for the VMware Integrated Printing Feature

You can set printing preferences in a remote desktop for the VMware Integrated Printing feature. With the VMware Integrated Printing feature, you can use local or network printers from a remote desktop without having to install additional printer drivers in the Windows remote desktop. For each printer available through this feature, you can set preferences for data compression, print quality, double-sided printing, color, and other settings.

In a single-user virtual machine desktop, each virtual printer appears as (vdi) by default. In a published desktop or published application, each virtual printer appears as (v) by default.

Beginning with Horizon Agent 7.12, you can use group policy to modify the printer naming convention for client printers that are redirected. For information, see the Configuring Remote Desktop Features in Horizon document for your Horizon Agent version.

Prerequisites

To use VMware Integrated Printing, a Horizon administrator must install the VMware Integrated Printing feature in the remote desktop. This task involves enabling the VMware Integrated Printing option in the Horizon Agent installer. For information about installing Horizon Agent, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document. For information about configuring the VMware Integrated Printing feature, see the Configuring Remote Desktop Features in Horizon document.

To determine whether the VMware Integrated Printing feature is installed in a remote desktop, verify that the C:\Program Files\Common Files\VMware\Remote Experience\x64\vmware- print-redir-server.exe and C:\Program Files\Common Files\VMware\Remote Experience \x64\vmware-print-redir-service.exe files exist in the remote desktop file system.

This feature requires Horizon Agent 7.9 or later.

VMware, Inc. 115 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 In the Windows remote desktop, go to Control Panel > Hardware and Sound > Devices and Printers.

2 In the Devices and Printers window, right-click the virtual printer and select Printer properties from the context menu.

3 On the General tab, click Preferences.

4 In the Printing Preferences dialog box, select the different tabs and specify which settings to use.

5 To save your changes, click OK.

Printing From a Remote Desktop to a Local USB Printer

A USB printer is a printer that is attached to a USB port on the local client system. You can send print jobs to a USB printer attached to the local client system from a remote desktop.

You can use either the USB redirection feature or the VMware Integrated Printing feature to print to a USB printer from a remote desktop. Redirected USB printers and virtual printers can work together without conflict.

Using the USB Redirection Feature To use the USB redirection feature to attach a USB printer to a virtual USB port in a remote desktop, the required printer drivers must be installed in the remote desktop as well as on the client system.

When you use the USB redirection feature to redirect a USB printer, the USB printer is no longer logically attached to the physical USB port on the local client system and it does not appear in the list of local printers on the local client system. You can print to the USB printer from the remote desktop, but you can no longer print to the USB printer from the local client system.

In a remote desktop, redirected USB printers appear as .

For more information, see Use USB Redirection to Connect USB Devices.

Using the VMware Integrated Printing Feature When you use the VMware Integrated Printing feature to send print jobs to a USB printer, you can print to the USB printer from both the remote desktop and the local client system and you do not need to install printer drivers in the remote desktop.

To use the VMware Integrated Printing feature, the feature must be enabled when you install Horizon Agent. For installation information, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document.

For more information, see Set Printing Preferences for the VMware Integrated Printing Feature.

VMware, Inc. 116 VMware Horizon Client for Linux Installation and Setup Guide

Copying and Pasting Text

You can copy and paste text to and from remote desktops and published applications. A Horizon administrator can configure this feature so that copy and paste operations are allowed only from the client system to a remote desktop or published application, or only from a remote desktop or published application to the client system, or both, or neither.

Copying and pasting from the client system (where Horizon Client is installed) to a remote desktop or published application, and conversely, is the same as copying and pasting between applications on the same system. For example, you can press Ctrl+C to copy text and press Ctrl +V to paste text.

This feature is available if you use the VMware Blast or PCoIP display protocol.

A Horizon administrator can configure the ability to copy and paste by using group policy settings that pertain to Horizon Agent for remote desktops and published applications. For more information, see the Configuring Remote Desktop Features in Horizon document.

You can copy text from Horizon Client to a remote desktop or published application, or the reverse, but the pasted text is plain text.

You cannot copy and paste graphics. You also cannot copy and paste files between a remote desktop and the file system on the client computer.

Configuring the Client Clipboard Memory Size

The clipboard memory size is configurable for both the server and the client.

When a PCoIP or VMware Blast session is established, the server sends its clipboard memory size to the client. The effective clipboard memory size is the lesser of the server and client clipboard memory size values.

To set the client clipboard memory size, add the following parameter to any one of three configuration files: ~/.vmware/config, /usr/lib/vmware/config, or /etc/vmware/config.

mksvchan.clipboardSize=value value is the client clipboard memory size in kilobytes (KB). You can specify a maximum value of 16384 KB. If you specify 0 or do not specify a value, the default client clipboard memory size is 8192 KB (8 MB).

Horizon Client looks for the clipboard memory size in the configuration files in the following order and stops as soon as a non-zero value is found.

1 /usr/lib/vmware/config

2 /etc/vmware/config

3 ~/.vmware/config

VMware, Inc. 117 VMware Horizon Client for Linux Installation and Setup Guide

A large clipboard memory size can negatively affect performance, depending on your network. VMware recommends that you do not set the clipboard memory size to a value greater than 16 MB.

The maximum clipboard memory size for copy and paste operations is 65,535 KB. Because this limit includes metadata and formatting data, the actual data size must be somewhat less than 65,535 KB. To transfer larger amounts of data, use the client drive redirection feature.

Logging Copy and Paste Activity

When you enable the clipboard audit feature, Horizon Agent records information about copy and paste activity in an event log on the agent machine. The clipboard audit feature is disabled by default.

To enable the clipboard audit feature, you must configure the Configure clipboard audit group policy setting.

You can optionally configure the Whether block clipboard redirection to client side when client doesn't support audit group policy setting to specify whether to block clipboard redirection to clients that do not support the clipboard audit feature.

For more information about the group policy settings for clipboard redirection, see the Configuring Remote Desktop Features in Horizon document.

This feature requires Horizon Agent 7.7 or later on the agent machine.

The event log where information about copy and paste activity is recorded is named VMware Horizon RX Audit. To view the event log on the agent machine, use the Windows event viewer. To view the event log from a centralized location, configure VMware Log Insight or Windows Event Collector. For information about Log Insight, go to https://docs.vmware.com/en/vRealize- Log-Insight/index.html. For information about Windows Event Collector, see the Microsoft documentation.

VMware, Inc. 118 Configuring USB Redirection on the Client 6

With the USB redirection feature, you can use a configuration file on the client system to specify which USB devices can be redirected to a remote desktop.

For example, you can restrict the types of USB devices that Horizon Client makes available for redirection, make prevent certain USB devices from being forwarded from a client computer, and specify whether Horizon Client should split composite USB devices into separate components for redirection.

This chapter includes the following topics: n System Requirements for USB Redirection n USB-Specific Log Files n Setting USB Configuration Properties n USB Device Families

System Requirements for USB Redirection

To support USB redirection, the system must meet certain requirements.

For more information about VMware thin-client and zero-client partners, see the VMware Compatibility Guide. To use the USB components available for third-party vendors, certain files must be installed in certain locations, and certain processes must be configured to start before Horizon Client is launched. These details are beyond the scope of this document.

For Horizon Client, the USB redirection feature requires the VMware Blast or PCoIP display protocol.

USB-Specific Log Files

Horizon Client sends USB information to log files.

To specify the USBD log level, add the following parameter in one of the configuration files.

view-usbd.logLevel = "value"

VMware, Inc. 119 VMware Horizon Client for Linux Installation and Setup Guide

Use one of the following values for value. n trace n info n debug n error

The configuration files are in the following locations and processed in the order listed:

1 /usr/lib/vmware/config

2 /etc/vmware/config

3 ~/.vmware/config

For troubleshooting purposes, you can increase the amount of information sent to USB-specific logs by using the following commands:

1 Stop the USB arbitrator daemon.

# sudo /etc/init.d/vmware-USBArbitrator stop

2 Restart the USB arbitrator daemon using the verbose option.

# sudo /usr/lib/vmware/view/usb/vmware-usbarbitrator -verbose

The default USB arbitrator log file is located in /var/log/vmware/vmware-usbarb-.log, where is the process id for the USB arbitrator daemon.

To get a list of usage information, use the following command:

# sudo /usr/lib/vmware/view/usb/vmware-usbarbitrator -h

Setting USB Configuration Properties

You can set USB configuration properties in the /etc/vmware/config, /usr/lib/vmware/config, and ~/.vmware/config configuration files.

Use the following syntax to set USB configuration properties in the configuration files.

viewusb.property1 = "value1"

With USB configuration properties, you can control whether certain types of devices are redirected. Filtering properties are also available to enable you to include or exclude certain types of devices. Properties for splitting composite devices are also provided.

VMware, Inc. 120 VMware Horizon Client for Linux Installation and Setup Guide

Some property values require the VID (vendor ID) and PID (product ID) for a USB device. To find the VID and PID, you can search on the Internet for the product name combined with vid and pid. Alternatively, you can look in the /tmp/vmware-/vmware-view-usbd-*.log file after you plug in the USB device to the local system when Horizon Client is running. To set the location of this file, use the view-usbd.log.fileName property in the /etc/vmware/config file, for example:

view-usbd.log.fileName = "/tmp/usbd.log"

Important When redirecting audio devices, make sure that the kernel version of your Ubuntu system is 3.2.0-27.43 or later. If you cannot upgrade to this kernel version, you can alternatively disable host access to the audio device. For example, you can add the line "blacklist snd-usb- audio" at the end of the /etc/modprobe.d/blacklist.conf file. If your system does not meet either of these requirements, the client system might crash when Horizon Client attempts to redirect the audio device. By default, audio devices are redirected.

The following table describes the available USB configuration properties.

Table 6-1. Configuration Properties for USB Redirection

Policy Name and Property Description

Allow Auto Device Splitting Allow the automatic splitting of composite USB devices. Property: The default value is undefined, which equates to false. viewusb.AllowAutoDeviceSplitting

Exclude Vid/Pid Device From Split Excludes a composite USB device specified by vendor and product IDs from Property: splitting. The format of the setting is vid-xxx1_pid-yyy1[;vid-xxx2_pid- viewusb.SplitExcludeVidPid yyy2]... You must specify ID numbers in hexadecimal. You can use the wildcard character (*) in place of individual digits in an ID. For example: vid-0781_pid-55** The default value is undefined.

Split Vid/Pid Device Treats the components of a composite USB device specified by vendor and Property: product IDs as separate devices. The format of the setting is viewusb.SplitVidPid vid-xxxx_pid-yyyy([exintf:zz[;exintf:ww ]])[;...] You can use the exintf keyword to exclude components from redirection by specifying their interface number. You must specify ID numbers in hexadecimal, and interface numbers in decimal including any leading zero. You can use the wildcard character (*) in place of individual digits in an ID. For example: vid-0781_pid-554c(exintf:01;exintf:02)

Note If the composite device includes components that are automatically excluded, such as mouse and keyboard components, then Horizon does not automatically include the components that you have not explicitly excluded. You must specify a filter policy such as Include Vid/Pid Device to include those components.

The default value is undefined.

VMware, Inc. 121 VMware Horizon Client for Linux Installation and Setup Guide

Table 6-1. Configuration Properties for USB Redirection (continued)

Policy Name and Property Description

Allow Audio Input Devices Allows audio input devices to be redirected. Property: The default value is undefined, which equates to false because the Real- viewusb.AllowAudioIn Time Audio-Video feature is used for audio input and video devices, and USB redirection is not used for those devices by default.

Allow Audio Output Devices Allows audio output devices to be redirected. Property: The default value is undefined, which equates to false. viewusb.AllowAudioOut

Allow HID Allows input devices other than keyboards or mice to be redirected. Property: The default value is undefined, which equates to true. viewusb.AllowHID

Allow HIDBootable Allows input devices other than keyboards or mice that are available at Property: boot time (also known as hid-bootable devices) to be redirected. viewusb.AllowHIDBootable The default value is undefined, which equates to true.

Allow Device Descriptor Failsafe Allows devices to be redirected even if the Horizon Client fails to get the Property: config/device descriptors. viewusb.AllowDevDescFailsafe To allow a device even if it fails the config/desc, include it in the Include filters, such IncludeVidPid or IncludePath. The default value is undefined, which equates to false.

Allow Keyboard and Mouse Devices Allows keyboards with integrated pointing devices (such as a mouse, Property: trackball, or touch pad) to be redirected. viewusb.AllowKeyboardMouse The default value is undefined, which equates to false.

Allow Smart Cards Allows smart-card devices to be redirected. Property: The default value is undefined, which equates to false. viewusb.AllowSmartcard

Allow Video Devices Allows video devices to be redirected. Property: The default value is undefined, which equates to false because the Real- viewusb.AllowVideo Time Audio-Video feature is used for audio input and video devices, and USB redirection is not used for those devices by default.

Disable Remote Configuration Disables the use of Horizon Agent settings when performing USB device Download filtering. Property: The default value is undefined, which equates to false. viewusb.DisableRemoteConfig

Exclude All Devices Excludes all USB devices from being redirected. If set to true, you can use Property: other policy settings to allow specific devices or families of devices to be viewusb.ExcludeAllDevices redirected. If set to false, you can use other policy settings to prevent specific devices or families of devices from being redirected. If you set the value of Exclude All Devices to true on Horizon Agent, and this setting is passed to Horizon Client, the Horizon Agent setting overrides the Horizon Client setting. The default value is undefined, which equates to false.

VMware, Inc. 122 VMware Horizon Client for Linux Installation and Setup Guide

Table 6-1. Configuration Properties for USB Redirection (continued)

Policy Name and Property Description

Exclude Device Family Excludes families of devices from being redirected. The format of the Property: setting is family_name_1[;family_name_2]... viewusb.ExcludeFamily For example: bluetooth;smart-card If you have enabled automatic device splitting, Horizon examines the device family of each interface of a composite USB device to decide which interfaces should be excluded. If you have disabled automatic device splitting, Horizon examines the device family of the whole composite USB device. The default value is undefined.

Exclude Vid/Pid Device Excludes devices with specified vendor and product IDs from being Property: redirected. The format of the setting is vid-xxx1_pid-yyy2[;vid-xxx2_pid- viewusb.ExcludeVidPid yyy2]... You must specify ID numbers in hexadecimal. You can use the wildcard character (*) in place of individual digits in an ID. For example: vid-0781_pid-****;vid-0561_pid-554c The default value is undefined.

Exclude Path Exclude devices at specified hub or port paths from being redirected. The Property: format of the setting is bus-x1[/y1]..._port-z1[;bus-x2[/y2]..._port-z2]... viewusb.ExcludePath You must specify bus and port numbers in hexadecimal. You cannot use the wildcard character in paths. For example: bus-1/2/3_port-02;bus-1/1/1/4_port-ff The default value is undefined.

Include Device Family Includes families of devices that can be redirected. The format of the setting Property: is family_name_1[;family_name_2]... viewusb.IncludeFamily For example: storage The default value is undefined.

Include Path Include devices at a specified hub or port paths that can be redirected. The Property: format of the setting is bus-x1[/y1]..._port-z1[;bus-x2[/y2]..._port-z2]... viewusb.IncludePath You must specify bus and port numbers in hexadecimal. You cannot use the wildcard character in paths. For example: bus-1/2_port-02;bus-1/7/1/4_port-0f The default value is undefined.

Include Vid/Pid Device Includes devices with specified vendor and product IDs that can be Property: redirected. The format of the setting is vid-xxx1_pid-yyy2[;vid-xxx2_pid- viewusb.IncludeVidPid yyy2]... You must specify ID numbers in hexadecimal. You can use the wildcard character (*) in place of individual digits in an ID. For example: vid-0561_pid-554c The default value is undefined.

VMware, Inc. 123 VMware Horizon Client for Linux Installation and Setup Guide

Table 6-1. Configuration Properties for USB Redirection (continued)

Policy Name and Property Description

Exclude Automatic Forwarding of Exclude families of devices from being forwarded automatically. The format Device Families of the setting is family_name_1[;family_name_2]... Property: For example: storage viewusb.ExAutoRedirectFamily The default value is undefined.

Exclude Automatic Forwarding of Excludes devices with specified vendor and product IDs from being Vid/Pid Device forwarded automatically. The format of the setting is vid-xxx1_pid- Property: yyy2[;vid-xxx2_pid-yyy2]... viewusb.ExAutoRedirectVidPid You must specify ID numbers in hexadecimal. You can use the wildcard character (*) in place of individual digits in an ID. For example: vid-0561_pid-554c The default value is undefined.

USB Redirection Examples

Each example is followed by a description of the effect on USB redirection. n Include most devices within the mouse device family.

viewusb.IncludeFamily = "mouse" viewusb.ExcludeVidPid = "Vid-0461_Pid-0010;Vid-0461_Pid-4d20"

The first property in this example tells Horizon Client to allow mouse devices to be redirected to a Horizon desktop. The second property overrides the first and tells Horizon Client to keep two specific mouse devices local and not redirect them. n Turn on automatic device splitting, but exclude one particular device from splitting. For another particular device, keep one of its components local and redirect the other components to the remote desktop:

viewusb.AllowAutoDeviceSplitting = "True" viewusb.SplitExcludeVidPid = "Vid-03f0_Pid-2a12" viewusb.SplitVidPid = "Vid-0911_Pid-149a(exintf:03)" viewusb.IncludeVidPid = "Vid-0911_Pid-149a"

Composite USB devices consist of a combination of two or more devices, such as a video input device and a storage device. The first property in this example turns on automatic splitting of composite devices. The second property excludes the specified composite USB device (Vid-03f0_Pid-2a12) from splitting.

The third line tells Horizon Client to treat the components of a different composite device (Vid-0911_Pid-149a) as separate devices but to exclude the following component from being redirected: the component whose interface number is 03. This component is kept local.

Because this composite device includes a component that is ordinarily excluded by default, such as a mouse or keyboard, the fourth line is necessary so that the other components of the composite device Vid-0911_Pid-149a can be redirected to the Horizon desktop.

VMware, Inc. 124 VMware Horizon Client for Linux Installation and Setup Guide

The first three properties are splitting properties. The last property is a filtering property. Filtering properties are processed before splitting properties.

Important These client configuration properties might be merged with or overridden by corresponding policies set for Horizon Agent on the remote desktop. For information about how USB splitting and filtering properties on the client work in relation to Horizon Agent USB policies, see the topics about using policies to control USB redirection, in the Configuring Remote Desktop Features in Horizon document.

USB Device Families

You can specify a USB device family when you create USB filtering rules for Horizon Client or Horizon Agent.

Note Some devices do not report a device family.

Table 6-2. USB Device Families

Device Family Name Description

audio Any audio-input or audio-output device.

audio-in Audio-input devices such as microphones.

audio-out Audio-output devices such as loudspeakers and headphones.

bluetooth Bluetooth-connected devices.

comm Communications devices such as modems and wired networking adapters.

hid Human interface devices excluding keyboards and pointing devices.

hid-bootable Human interface devices that are available at startup time, excluding keyboards and pointing devices.

imaging Imaging devices such as scanners.

keyboard Keyboard device.

mouse Pointing device such as a mouse.

other Family not specified.

pda Personal digital assistants.

physical Force feedback devices such as force feedback joysticks.

printer Printing devices.

security Security devices such as fingerprint readers.

smart-card Smart-card devices.

storage Mass storage devices such as flash drives and external hard disk drives.

VMware, Inc. 125 VMware Horizon Client for Linux Installation and Setup Guide

Table 6-2. USB Device Families (continued)

Device Family Name Description

unknown Family not known.

vendor Devices with vendor-specific functions.

video Video-input devices.

wireless Wireless networking adapters.

wusb Wireless USB devices.

VMware, Inc. 126 Troubleshooting Horizon Client 7

You can solve most problems with Horizon Client by restarting or resetting remote desktops or published applications, or by reinstalling Horizon Client.

This chapter includes the following topics: n Restart a Remote Desktop n Reset Remote Desktops or Published Applications n Uninstall Horizon Client for Linux n Collect Horizon Client Log Information n Problems with Keyboard Input n Connecting to a Server in Workspace ONE Mode

Restart a Remote Desktop

If the remote desktop operating system stops responding, you might need to restart a remote desktop. Restarting a remote desktop is similar to using the Windows operating system restart command. The remote desktop operating system usually prompts you to save any unsaved data before it restarts.

You can restart a remote desktop only if a Horizon administrator has enabled the restart feature for the remote desktop.

For information about enabling the desktop restart feature, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document.

VMware, Inc. 127 VMware Horizon Client for Linux Installation and Setup Guide

Procedure u Use the Restart command.

Option Action

Restart a remote desktop from Select Connection > Restart Desktop from the menu bar. within the desktop

Restart a remote desktop from the Do one of the following: desktop and application selection n Right-click the remote desktop icon and select Restart Desktop. window n Select the remote desktop icon and select Connection > Restart Desktop from the menu bar.

Horizon Client prompts you to confirm the restart action.

Results

The operating system in the remote desktop restarts and the client disconnects and logs off from the remote desktop.

What to do next

Wait an appropriate amount of time for the system to restart before you attempt to reconnect to the remote desktop.

If restarting the remote desktop does not solve the problem, you might need to reset the remote desktop. See Reset Remote Desktops or Published Applications.

Reset Remote Desktops or Published Applications

You might need to reset a remote desktop if the desktop operating system stops responding and restarting the remote desktop does not solve the problem.

Resetting a remote desktop is the same as pressing the Reset button on a physical PC to force the PC to restart. Any files that are open on the remote desktop are closed and are not saved.

Resetting published applications quits all open applications.

You can reset a remote desktop only if a Horizon administrator has enabled the reset feature for the remote desktop.

For information about enabling the desktop reset feature, see the Setting Up Virtual Desktops in Horizon or Setting Up Published Desktops and Applications in Horizon document.

VMware, Inc. 128 VMware Horizon Client for Linux Installation and Setup Guide

Procedure u Use the Reset command.

Option Action

Reset a remote desktop from within Select Connection > Reset from the menu bar. the desktop

Reset a remote desktop from the Do one of the following: desktop and application selection n Right-click the remote desktop icon and select Reset Desktop. window n Select the remote desktop icon and select Connection > Reset from the menu bar.

Reset published applications from Do one of the following: the desktop and application n Right-click any published application icon and select Settings. Click selection window Reset, and then click Reset again to confirm the operation. n Select any published application icon and click the Settings button (gear icon) in the upper-right corner of the window. Click Reset, and then click Reset again to confirm the operation.

You can also use uniform resource identifiers (URIs) to reset a remote desktop or application. See Using URIs to Configure Horizon Client for information on the syntax and examples.

Results

When you reset a remote desktop, the operating system in the remote desktop restarts and the client disconnects and logs off from the remote desktop. When you reset published applications, the published applications quit.

What to do next

Wait an appropriate amount of time for system to restart before attempting to reconnect to the remote desktop or published application.

Uninstall Horizon Client for Linux

You can sometimes resolve problems with Horizon Client by uninstalling and reinstalling the Horizon Client application.

Prerequisites

Verify that you have root access on the Linux client system.

VMware, Inc. 129 VMware Horizon Client for Linux Installation and Setup Guide

Procedure u In a Terminal window, change to the directory that contains the installer file, and run the installer command with the -u option.

Option Command

For uninstallation, if you have set sudo env VMWARE_KEEP_CONFIG=yes \ executable permissions ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle -u vmware-horizon-client

For uninstallation, if you have not sudo env VMWARE_KEEP_CONFIG=yes \ set executable permissions sh ./VMware-Horizon-Client-YYMM-x.x.x-yyyyyyy.arch.bundle -u vmware-horizon-client

In the installer filename, YYMM represents the marketing version number, x.x.x represents the internal version number, and yyyyyyy represents the build number. arch represents the CPU instruction set architecture.

Note If you are uninstalling version 5.5 or earlier of Horizon Client, the installer filename does not contain the marketing version number YYMM.

Using the VMWARE_KEEP_CONFIG=yes setting means retain the configuration settings when the client is uninstalled. If this environment variable is not set, you are prompted to specify whether to save the configuration settings.

What to do next

You can reinstall the client or install a new version. See Install or Upgrade Horizon Client for Linux from VMware Product Downloads.

Collect Horizon Client Log Information

You can use the Horizon Client log collection script to gather client logs from various locations and package them into a single log file for troubleshooting. To run the log collection script from the command-line terminal, you must have "execute" permission on the Linux client system.

Most Linux-based thin clients typically store Horizon Client logs in one or more of the following locations: n /tmp/vmware- n /tmp/teradici- n /tmp/vmware-root

The log collection script compiles the client logs into a package file named horizon-log.tar.gz by default.

VMware, Inc. 130 VMware Horizon Client for Linux Installation and Setup Guide

Procedure

1 Ensure that you have "execute" permission to the log collection script on the Linux client system. In the command-line terminal, run the following command:

# sudo chmod +x /usr/bin/vmware-view-log-collector

2 To start the log collection script, run the following command:

# sudo /usr/bin/vmware-view-log-collector

By default, the script finds the latest log files generated by Horizon Client and compiles them into a package file named horizon-log.tar.gz, located in the folder from which you ran the script. To customize the name and location of the package file, you can run a command that resembles one of the following examples:

# sudo /usr/bin/vmware-view-log-collector abc.tar.gz

# sudo /usr/bin/vmware-view-log-collector /home/user/Downloads/abc.tar.gz

n The first example compiles client logs into a package file named abc.tar.gz in the folder from which you ran the script.

n The second example compiles client logs into a package file named abc.tar.gz in the / home/user/Downloads/ folder.

Problems with Keyboard Input

When you type in a remote desktop or published application, none of the keystrokes seem to work.

Problem

When you are connected to a remote desktop or published application, no characters appear when you type. Another symptom might be that a single key keeps repeating itself.

Cause

Some security software, such as Norton 360 Total Security, includes a feature that detects keystroke logging software and blocks keystroke logging. This security feature is meant to protect the system against spyware that steals passwords and credit card numbers. This security software might block Horizon Client from sending keystrokes to the remote desktop or published application.

Solution u On the client system, turn off the keystroke logging detection feature of your antivirus or security software.

VMware, Inc. 131 VMware Horizon Client for Linux Installation and Setup Guide

Connecting to a Server in Workspace ONE Mode

You cannot connect to a server directly through Horizon Client, or your remote desktop and published application entitlements are not visible in Horizon Client.

Problem n When you try to connect to the server directly through Horizon Client, Horizon Client redirects you to the Workspace ONE portal. n When you open a remote desktop or published application through a URI or command, the request redirects you to the Workspace ONE portal for authentication. n After you open a remote desktop or published application through Workspace ONE and Horizon Client starts, you cannot see or open other entitled remote desktops or published applications in Horizon Client.

Cause

A Horizon administrator can enable Workspace ONE mode on a Connection Server instance. This behavior is normal when Workspace ONE mode is enabled on a Connection Server instance.

Solution

Use Workspace ONE to connect to a Workspace ONE enabled server and access your remote desktops and published applications.

VMware, Inc. 132