| Reading time: | 30 min |
| Last updated: | 28 Apr 2026 |
| Reading time: |
| 30 min |
| Last updated: |
| 28 Apr 2026 |
This guide shows you how to install and use the tool with the most common configuration. For advanced options and complete reference information, see the official documentation. Some install guides also include optional next steps to help you explore related workflows or integrations.
NoMachine is a client-server application that you can use to connect to a remote Linux desktop, including Arm servers and cloud instances. The NoMachine server runs on the remote machine. The client runs on the local machine and connects to the remote server.
During development, it might be useful to quickly create a remote desktop on an Arm server.
In this guide, you’ll learn how to set up NoMachine on a remote Arm Linux machine running Ubuntu.
To connect to a remote desktop, you need to install desktop software. You can use xfce4 for a minimal install with good performance.
Install the desktop software.
sudo apt update; sudo apt upgrade -y
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils xfce4-terminal -y
Create two files on the server in the home directory $HOME. Use a text editor to copy and paste this script into a file on the remote machine at $HOME/nx-key.sh. The contents of the files are as follows:
#!/bin/bash
if [ -f $HOME/.ssh/authorized_keys ]; then
[ -d $HOME/.nx/config ] || mkdir -p $HOME/.nx/config
cp $HOME/.ssh/authorized_keys $HOME/.nx/config/authorized.crt
else
echo "No .ssh/authorized_keys file found"
fi
Use a text editor to copy and paste this script into a file on the remote machine at $HOME/install-nomachine.sh:
The following commands use NoMachine version 9.0.188. The same commands work with other versions. Replace the file used in these steps with the file for your version of choice. To download the latest version, see NoMachine downloads .
#!/bin/bash
# install NoMachine for remote desktop
wget https://download.nomachine.com/download/9.0/Arm/nomachine_9.0.188_11_arm64.deb
sudo dpkg -i nomachine_9.0.188_11_arm64.deb
if [ $? != 0 ]; then
exit 1
fi
# user of the AMI must run the nx-key.sh to copy their key for NX
echo "$HOME/nx-key.sh" >> /home/$USER/.bashrc
sudo systemctl set-default multi-user
exit 0
Give both scripts executable permission:
chmod +x nx-key.sh install-nomachine.sh
On the remote machine, run the install script:
./install-nomachine.sh
For NoMachine to work, it’s best to have a user account on the remote machine with a password. Many cloud instances have accounts without passwords and use only ssh keys to connect.
If the user account already has a password, you can skip this step.
To enable passwords, edit the file /etc/sshd_config and set PasswordAuthentication to yes.
To enable it in a script or from the command line, run:
sudo sed -i '/PasswordAuthentication no/c\PasswordAuthentication yes' /etc/ssh/sshd_config
Restart the SSH daemon:
sudo systemctl restart ssh
Set a password for the user account. The example shows ubuntu. Change the username as needed.
sudo passwd ubuntu
Enter a new password.
Remember the password for later when the client is connected.
The default port for NoMachine is 4000. If needed, open this port in the security group. Make sure to open ports only from your IP address, not from anywhere.
Download and install NoMachine on the client you want to connect from. There are options for most operating systems including Android and iOS.
Start NoMachine on the client computer by following these steps:
4000.
NoMachine connection profile
NoMachine login
Create a new display
4. NoMachine will resize the remote desktop to fit in the client window. Change the remote display resolution to match the client window size.
Set display resolution

You’re now ready to use NoMachine.
How would you rate this tool quick-install guide?
What is the primary reason for your feedback ?
Thank you! We're grateful for your feedback.