# Netmaker Desktop Installation

## Netmaker Desktop

Netmaker Desktop is the revamped Remote Access Client, offering a simple GUI for connecting to a Netmaker network from an offsite device. Available on Windows, Mac, and Linux.

### Download / Installation

You can download the netmaker-desktop-installer.exe installer and run it to install on your Windows machine. You can then launch Netmaker Desktop, sign in and connect to your Netmaker network!

Download link: <https://fileserver.netmaker.io/releases/download/latest/netmaker-desktop-installer.exe> (netmaker-desktop-installer.exe)

For PowerShell silent installation: /netmaker-desktop-installer.exe quiet

Mac installers:

* <https://fileserver.netmaker.io/releases/download/latest/Netmaker-Desktop-Intel.pkg>
* <https://fileserver.netmaker.io/releases/download/latest/Netmaker-Desktop-M1.pkg>

Install the appropriate version, then open Netmaker Desktop, sign in to your server, and join your Netmaker network!

Ubuntu/Debian

{% code title="Ubuntu / Debian" %}

```shell
curl -sL 'https://apt.netmaker.org/netmaker-desktop/gpg.key' | sudo tee /etc/apt/trusted.gpg.d/netmaker-desktop.asc
curl -sL 'https://apt.netmaker.org/netmaker-desktop/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/netmaker-desktop.list
sudo apt update
sudo apt search netmaker-desktop  # to see available versions
sudo apt install netmaker-desktop
```

{% endcode %}

Fedora/RedHat/CentOS/Rocky

{% code title="Fedora / RHEL / CentOS / Rocky" %}

```shell
curl -sL 'https://rpm.netmaker.org/netmaker-desktop/gpg.key' | sudo tee /tmp/gpg.key
curl -sL 'https://rpm.netmaker.org/netmaker-desktop/netmaker-desktop-repo' | sudo tee /etc/yum.repos.d/netmaker-desktop.repo
sudo rpm --import /tmp/gpg.key
sudo dnf check-update
sudo dnf install netmaker-desktop
```

{% endcode %}

Following the above instructions, you can run Netmaker Desktop from your Linux desktop environment launcher or from the command line using the netmaker-desktop command.

Netmaker Desktop is supported on Ubuntu 22.04+ (glibc version 2.32+).

### Getting Started with Netmaker Desktop

To use Netmaker Desktop, you will need to have a Netmaker server running and have a user account on that server. You will also need to have a gateway set up on the server. Remote devices connect to the network through the gateway.

RAC is best suited for non-admin users who want to gain remote access to the network; this also gives net admins fine-grained control by granting users access only to the networks or gateways they need. Admins can also use Netmaker Desktop to gain remote access to the network with a different machine.

Check <https://docs.netmaker.io/docs/features/users-management-pro> on how to create a non-admin user.

#### Launching Netmaker Desktop

* Find the Netmaker Desktop shortcut on your desktop and double-click to launch it.
* Or click Start or the Windows Icon then go to All Apps and find Remote Access Client. Click it to launch.
* Find Netmaker Desktop in the Application Folder and click to launch it.
* Find the Remote Access Client shortcut and click to launch it.

#### Using Netmaker Desktop

Once a service/platform user has been given access to the network, they can connect to that network using the desktop client. To do this, they will first need to log in using the credentials that were provided to them. Social login is also supported.

![](https://1465744049-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSqMcN3gvfPLhO0hh4agC%2Fuploads%2FVQuvW0Y0nexI3aK1pe5K%2Fq1.png?alt=media\&token=d5df7fa4-cfb5-4a0e-a330-3d8f0d522197)

**Where to find your Tenant ID / Server URL**

* To connect to a SaaS tenant, you will need to provide your tenant ID, which can be found in the Download Netmaker Desktop modal of your tenant NMUI or from the tenants interface.

![](https://1465744049-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSqMcN3gvfPLhO0hh4agC%2Fuploads%2FhxAHF18SgsYzMC5hsTU8%2Fq2.png?alt=media\&token=dd0de8ce-a1b2-49ea-840e-dac990caf563)

* Connecting to a self-hosted (on-premises) instance is straightforward. You only need the server URL, which typically follows the format: .domain.com. For example, if your dashboard is accessible at dashboard.example.com, the default server URL would be api.example.com.

Enter the Tenant ID / server URL in the settings screen

![](https://1465744049-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSqMcN3gvfPLhO0hh4agC%2Fuploads%2F8Z9tDKDjdF7leRM8ySrd%2Fq3.png?alt=media\&token=30fc3ac3-4338-4a57-b0d3-46a765c02929)

After successful login you will be shown all the networks and gateways you have been given access to, so you will be able to connect/disconnect/refresh your connection to a gateway.

Internet gateways are depicted with a globe icon. An internet gateway can be used to route all your traffic through the gateway, this is useful if you want to access the internet without exposing your public IP address. This behaves like a traditional VPN.

![](https://1465744049-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSqMcN3gvfPLhO0hh4agC%2Fuploads%2FY4i4ZI3pPoE0Y7dam1RY%2Fq4.png?alt=media\&token=f0058b7a-d9c6-4d0d-ba03-bd442205e3ce)

The remote access client also has the following features:

* Connect / Disconnect to network: Networks you have access to are listed after a successful login. Under these networks, you will also see a list of gateways you can use to connect to the network. If there are multiple, select the gateway you prefer by clicking on it. Click on the switch to the right of the network name to connect to (or disconnect from) the network.
* Reload: Reloads the network data on the page, which can be useful if an admin has changed network or gateway settings or access from the dashboard.
* Logout: Disconnects any active network connection and logs you out of the desktop client.
* Info boxes: Show a glimpse of network statistics (when connected to a network) and gateway details.

#### Using Netmaker like a “normal VPN”

Some remote access gateways, specifically internet gateways (depicted by globe icon) can route all your traffic through them. This can be useful if you want to access the internet without exposing your public IP address. This behaves like a traditional VPN. Internet gateways is a Pro-only feature.

<figure><img src="https://1465744049-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSqMcN3gvfPLhO0hh4agC%2Fuploads%2FaGAptqbbQB9hKTGV5Tb1%2Fq5.png?alt=media&#x26;token=c2ddf7e6-d549-42ee-9069-712ab1859c11" alt=""><figcaption></figcaption></figure>

![](https://docs.netmaker.io/docs/client-installation/Base64-Image-Removed)Internet Gateways (depicted by the globe icon) allow a user to use Netmaker like a normal VPN service

### (Re)Starting the service / daemon process

On very few occasions, the Netmaker Desktop daemon may not be running and will need to be restarted manually. There are two ways to resolve this:

{% stepper %}
{% step %}

### Restart the computer

The daemon starts automatically on boot so restarting the computer will start the daemon on next startup.
{% endstep %}

{% step %}

### Manual restart on Windows

* Open Task Manager.
* Go to the “Services” tab.
* Look for the “netmaker-desktop-daemon” service.
* Right-click on the service and select “Restart” or “Start”.
  {% endstep %}

{% step %}

### Manual restart on macOS (launchd)

Netmaker Desktop daemon relies on launchd to manage the service. Restart via launchctl:

{% code title="macOS" %}

```shell
sudo launchctl stop com.gravitl.netmaker-desktop
sudo launchctl start com.gravitl.netmaker-desktop
```

{% endcode %}
{% endstep %}

{% step %}

### Manual restart on Linux (systemd)

Netmaker Desktop daemon relies on systemd to manage the daemon. Restart via systemctl:

{% code title="Linux" %}

```shell
sudo systemctl stop netmaker-desktop
sudo systemctl start netmaker-desktop
```

{% endcode %}
{% endstep %}
{% endstepper %}

### Controlling Netmaker Desktop user sessions

On pro servers/tenants, the duration of a non-admin user’s remote session can be controlled by setting RAC\_AUTO\_DISABLE (to true) and JWT\_VALIDITY\_DURATION (to an integer in seconds) environment variables on the server.

With RAC\_AUTO\_DISABLE set to true, a non-admin user’s remote sessions will be disabled after the duration specified in JWT\_VALIDITY\_DURATION has elapsed. The user will have to relogin to enable their remote session again.

NOTE: The JWT\_VALIDITY\_DURATION environment variable also configures all JWT token validity duration for all users, regardless of whether RAC\_AUTO\_DISABLE is set to true or not.

On newer servers (v0.90.0+), there is the option to restrict users from connecting to multiple networks simultaneously with the RAC\_RESTRICT\_TO\_SINGLE\_NETWORK environment variable. Setting this to true will allow users to only connect to one network and gateway at a time. Any other value will not restrict the user; they will be able to connect to multiple networks at the same time.

### FAQs

<details>

<summary>Q: I am getting an error when trying to connect to a gateway.</summary>

A: Make sure that the gateway is running healthily and that you have access to it. Also try to “Refresh” and see if that fixes the issue. Otherwise “Reset” all connections and try again.

</details>

<details>

<summary>Q: Other WireGuard-based VPNs interfere with Netmaker RAC.</summary>

A: This is a known issue. If you have other WireGuard-based VPNs running on your machine, they may interfere with Netmaker RAC. You can try to disable them and see if that fixes the issue. Pro-tip: Netmaker Pro offers internet gateway functionality, so you can use it just as a traditional VPN. For more information, explore the Remote Access gateway feature: <https://www.netmaker.io/features/remote-access-gateway>

</details>

### Uninstalling Netmaker Desktop

If the app is currently open, logout from the app, and quit the app before continuing.

{% stepper %}
{% step %}

### Uninstall on Windows

* Open Control Panel.
* Under Programs, click Uninstall a program.
* Find Netmaker Desktop Installer and Netmaker Desktop.
* Click Uninstall.
  {% endstep %}

{% step %}

### Uninstall on macOS

* Drag Netmaker Desktop from the application folder to the trash bin.
  {% endstep %}

{% step %}

### Uninstall on Debian / Ubuntu

{% code title="Debian / Ubuntu" %}

```plaintext
sudo apt remove netmaker-desktop
```

{% endcode %}
{% endstep %}

{% step %}

### Uninstall on Fedora / RedHat / CentOS / Rocky

{% code title="Fedora / RHEL / CentOS / Rocky" %}

```plaintext
sudo dnf remove netmaker-desktop
```

{% endcode %}
{% endstep %}
{% endstepper %}

***

## Remote Access Client (RAC)

Note: Starting from v0.90.0, Netmaker Desktop will be the preferred client for Windows, Mac, and Linux users.

### Overview of Remote Access Client (RAC)

The Remote Access Client (RAC) is a graphical user interface (GUI) tool designed to help users connect to a Netmaker network from an offsite machine or device. It is ideal for remote users who need access to the network but do not need full administrative control.

Key Features:

* VPN-like functionality: RAC allows mobile users to connect to a Netmaker network and route their internet traffic through a remote access gateway, similar to traditional VPNs.
* Simple and secure connection: Once a user has been granted access to a Netmaker network, they can log in and easily connect using RAC.
* Social login support.
* No administrative access required for typical remote users.

### Download / Installation

You can download the remoteclientbundle.exe bundle (recommended—it installs WireGuard and other dependencies) or remote-access-client\_86.msi installer (MSI doesn't install dependencies) and run it to install on Windows.

Download link: <https://fileserver.netmaker.io/releases/download/v0.30.0/remoteclientbundle.exe>

For PowerShell silent installation: /remoteclientbundle.exe quiet

Mac installers:

* M1: <https://fileserver.netmaker.io/releases/download/v0.30.0/remote-access-client-M1.pkg>
* Intel: <https://fileserver.netmaker.io/releases/download/v0.30.0/remote-access-client-intel.pkg>

Ubuntu / Debian

{% code title="Ubuntu / Debian" %}

```shell
curl -sL 'https://apt.netmaker.org/remote-client/gpg.key' | sudo tee /etc/apt/trusted.gpg.d/remote-client.asc
curl -sL 'https://apt.netmaker.org/remote-client/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/remote-client.list
sudo apt update
sudo apt search remote-client  # to see available versions
sudo apt install remote-client
```

{% endcode %}

Fedora / RedHat / CentOS / Rocky

{% code title="Fedora / RHEL / CentOS / Rocky" %}

```shell
curl -sL 'https://rpm.netmaker.org/remote-client/gpg.key' | sudo tee /tmp/gpg.key
curl -sL 'https://rpm.netmaker.org/remote-client/remote-client-repo' | sudo tee /etc/yum.repos.d/remote-client.repo
sudo rpm --import /tmp/gpg.key
sudo dnf check-update
sudo dnf install remote-client
```

{% endcode %}

Following the above instructions, you can run RAC from your Linux desktop environment launcher or from the command line using the remote-client command.

Google Play Store (Android):

![Netmaker RAC on Google Play Store](https://content.gitbook.com/content/SqMcN3gvfPLhO0hh4agC/blobs/tKSQIJdCfjk9ufdq3AJW/z0cRyuZULpPiG7QJMvnhI.png)

Or use: <https://play.google.com/store/apps/details?id=com.net.netmaker\\&pli=1\\&utm\\_source=docs>

Apple App Store (iOS):

![Netmaker RAC on Apple App Store](https://content.gitbook.com/content/SqMcN3gvfPLhO0hh4agC/blobs/o4wXsCqFocIeQ5ftB74B/erDzmh3PIvjU1FkGRntxY.png)

Or use: <https://apps.apple.com/us/app/netmaker-rac/id6479694220?itsct=apps\\_box\\_badge\\&itscg=30200>

You can download the latest version of RAC from the file server: <https://fileserver.netmaker.io/releases/download/latest> — search for remote client and download the appropriate version for your OS.

### Using RAC

{% stepper %}
{% step %}

### Login

Open the RAC app on your device. Enter the Tenant ID and Server URL (if using a self-hosted instance) to log in. You will then be prompted to enter your credentials. If social login is supported, you can log in with your social account.
{% endstep %}

{% step %}

### Connecting to the Network

Once logged in, you will see a list of networks and gateways you have access to. Select a network and a gateway to establish a connection. Some gateways, especially internet gateways (depicted with a globe icon), allow you to route your traffic through the gateway, providing VPN-like functionality.
{% endstep %}

{% step %}

### Refreshing the Connection

If you're facing any issues with connectivity, you can refresh your connection to the gateway using the "Refresh" option in the RAC interface.
{% endstep %}

{% step %}

### Disconnecting

You can disconnect from the network at any time by selecting the Disconnect option.
{% endstep %}
{% endstepper %}

#### Internet Gateways (Pro-Only Feature)

Some remote access gateways, especially internet gateways, allow users to route all traffic through them, providing VPN-like functionality. This is useful for maintaining privacy and security by masking your public IP address. The internet gateway feature is a Pro-only feature and requires a Netmaker Pro subscription.

### Controlling User Sessions

On Pro-level servers, network admins can control user sessions for non-admin users. Admins can set the session expiration time using these environment variables:

* RAC\_AUTO\_DISABLE: Set to true to automatically disable remote sessions after a certain duration.
* JWT\_VALIDITY\_DURATION: Specifies the session duration in seconds. Once elapsed, the user will need to log in again.

Admins can also restrict users to a single network connection at a time using RAC\_RESTRICT\_TO\_SINGLE\_NETWORK.

### Troubleshooting

* Issue connecting to a gateway: Ensure the gateway is online and accessible. Try refreshing the connection or resetting all connections if needed.
* Conflicts with other VPNs: Other WireGuard-based VPNs may interfere with RAC. Disable them temporarily to see if the issue is resolved.

### Uninstalling RAC

If the app is currently open, logout from the app, and quit the app before continuing.

{% stepper %}
{% step %}

### Uninstall on Windows

* Open Control Panel.
* Under Programs, click Uninstall a program.
* Find Remote Access Client Installer and Remote Access Client.
* Click Uninstall.
  {% endstep %}

{% step %}

### Uninstall on macOS

* Drag Remote Access Client from the application folder to the trash bin.
  {% endstep %}

{% step %}

### Uninstall on Debian / Ubuntu

{% code title="Debian / Ubuntu" %}

```plaintext
sudo apt remove remote-client
```

{% endcode %}
{% endstep %}

{% step %}

### Uninstall on Fedora / RedHat / CentOS / Rocky

{% code title="Fedora / RHEL / CentOS / Rocky" %}

```plaintext
sudo dnf remove remote-client
```

{% endcode %}
{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.netmaker.io/getting-started/server-and-client-management/client-installation/netmaker-desktop-installation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
