Linux VDA Setup Instructions

In this document, we will look at how to install and configure a Linux VDA for your Citrix Virtual Apps and Desktops environment. For some context, the environment that I have configured and tested this in is hosted in Azure. I have chosen to use a Linux Ubuntu 2004 server. Now let’s have a look at the steps to get your Linux VDA up and running.

  1. First ensure that your Virtual Network is pointing to the DNS of your domain controller
  1. Create a Linux Ubuntu 2004 server from scratch and ensure that it is located in the same region as your other VM’s in your Domain environment.
  2. In your jump box or Bastion host create a Notepad file with the following information related to your Domain environment:
  3. Subnetwork:
  4. DNS internal name server IP:
  5. DNS internal name server FQDN:
  6. Domain (just domain not .com):
  7. REALM (
  8. Domain controller FQDN:
  9. Cloud connector FQDN: CC-
  10. LDAP_LIST=‘ :389’

Domain admin user (Linux domain join VM):

  • Domain name :
  • Password :

Linux VM local login details

  • Name:
  • Password:
  1. In your jump box or Bastion host download PuTTY and WinSCP, as well as the Linux VDA which can be found here. PuTTY will be used to SSH into the Linux server to run commands and WinSCP will be used to copy the VDA software using /tmp/ as a destination.
  1. Open PuTTY and login into the Linux VM.
  2. Run nslookup emmet.lab (Domain) to ensure the VM can resolve your domain.
  1. Next, you want to ping your Domain Controller and your Cloud Connectors using the following commands ping CC-KildareDC1.emmet.lab and ping CC-Kildarecc.Emmet.Lab
  2. Once your VM can ping both you can start the process of setting up your Linux VDA.
  3. Firstly, we need to update and upgrade Ubuntu: sudo apt update.
  4. Next, we upgrade:  sudo apt-get upgrade.
  5. If there is any prompt press ‘Y’.
  6. Then we are going to install the perquisites one by one, again if there is any prompt press ‘Y’.

sudo wget

sudo dpkg -i packages-microsoft-prod.deb

sudo apt update

sudo apt install apt-transport-https -y

sudo apt install dotnet-sdk-3.1

sudo apt update

sudo apt install apt-transport-https -y

sudo apt install dotnet-runtime-3.1

  1. Using the WinSCP upload and copy the VDA file into the /tmp folder.
  1. Run the following command to start downloading and installing the file:

sudo dpkg -i /tmp/xendesktopvda_21.12.0.30-1.ubuntu20.04_amd64.deb

  1. It should state that dependencies are missing to fix this run the following command: 

sudo apt --fix-broken install and press ‘Y’ when prompted.

  1. After which you will need to run the following commands:

sudo locale-gen en_US.UTF-8   This will take a few seconds.

sudo apt update

sudo apt-get upgrade

If you see ‘0’ then it has worked.

  1. Next run:

sudo locale-gen en_US.UTF-8

sudo /opt/Citrix/VDA/sbin/ 

This is where you will use the notepad file you created with information related to your Domain environment.

  1. Configure DNS just press enter, n by default
  1. If your Hostname is too long for AD change it to Ubuntu or Linux
  1. The next step is the IP of NTP which is your DNS IP (
  2. Then you will be prompted for your domain name (emmet)
  3. Your Realm domain controller (emmet.lab)
  4. Following this it will ask for your domain controller FQDN (CC-KildareDC1.emmet.lab)
  1. Chose option 1 for Winbind and enter your AD administrator credentials (admin123)
  2. You may get a prompt for the .Net Core Runtime path: the path is /usr/bin
  1. Press enter until you hit until LDAP list
  1. Enter your (CC-KildareDC1.emmet.lab:389)
  1. It will then prompt you to enter your domain password
  2. Once you have done that use the command: tail -f /var/log/xdl/vda and press the tab button to autocomplete
  1. This will render a response. Once complete you can then go into your domain controller and check to see if it is added the verify

Once the Linux VM is domain joined and the VDA is installed, you can set up the machine catalogue multisession and delivery group and test user access using the same way you would a Window server.


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.