DGX Spark/Guides/NVIDIA Sync and remote access
Guide · November 2026

DGX Spark remote access: NVIDIA Sync, the DGX Dashboard, Tailscale and plain SSH (November 2026)

By Samuel Seidel · Published November 7, 2026 · Sources checked November 7, 2026

NVIDIA Sync is a tray app for Windows, macOS and Ubuntu that takes a DGX Spark's hostname, username and password once, swaps the password for a Sync-managed SSH key, and then keeps an SSH tunnel open so you can launch VS Code, Cursor, Codex, AI Workbench, the DGX Dashboard (port 11000) and your own scripts from the tray. NVIDIA's release notes list version 0.148.0-153 as current (docs updated 30 October 2026, read 7 November 2026); it adds a beta Model Launcher that runs Qwen3.8 27B NVFP4 in a vLLM container on the Spark. For access from outside your network Sync has Tailscale built in, and a plain ~/.ssh/config with port forwards does everything else Sync does. On a rented GPUwerk Spark none of the Spark-side setup applies: you get a browser terminal or root SSH with your own key, and no Tailscale inside the container.

What gets set upWhereDetailSource
NVIDIA Sync appLaptopWindows .exe, macOS .dmg, or the nvidia-sync apt package on UbuntuSync getting started
One managed key pair for all Sync devicesLaptop, public half on the SparkYour password is used once to install it; Sync then uses key-based SSHAI Workbench: Use NVIDIA Sync
SSH aliasLaptop SSH configUsable from your own terminal and other SSH toolsAdding and connecting devices
Custom app scripts, logs, port recordsSpark, ~/.config/NVIDIA/Sync/One port-<port>.bash script per custom appSync applications
Docker group membership (optional)SparkAsked after you add a device; NVIDIA warns it can grant root-level controlAdding and connecting devices
Tailscale client (optional)SparkInstalled with an auth key you create; the laptop side is built into SyncSync Tailscale
Model, vLLM image, OpenCode, skills (optional)Spark, model-launcher/ and ~/opencodeQwen3.8-27B-NVFP4 with eugr/spark-vllm:nightly-20261002 on a SparkModel Launcher

Read 7 November 2026 from NVIDIA's Sync and AI Workbench documentation (Sync pages last updated 30 October 2026). Sync does not install Docker and does not change Docker socket permissions; it only offers to add your user to an existing docker group.

What does NVIDIA Sync install, and what does it change on the Spark?

On the laptop it installs one app; on the Spark it adds an SSH key and, only if you use those features, some files, a Docker group membership and a Tailscale client. NVIDIA's connection guide describes the add-device flow: Sync finds the Spark over mDNS (a name like spark-abcd.local) or takes a hostname or IP, logs in once with your password, sets up key-based access and writes an SSH alias. The AI Workbench docs add that Sync creates and manages a single key pair for all its devices. If you already have key access, you skip the password and import an existing alias from your main SSH config instead.

On Ubuntu the app comes from NVIDIA's Workbench repository, per the Sync getting-started page:

curl -fsSL https://workbench.download.nvidia.com/stable/linux/gpgkey | sudo tee -a /etc/apt/trusted.gpg.d/ai-workbench-desktop-key.asc
echo "deb https://workbench.download.nvidia.com/stable/linux/debian default proprietary" | sudo tee -a /etc/apt/sources.list
sudo apt update
sudo apt install nvidia-sync

Three limits matter before you rely on it. Sync does not support jump or bastion hosts. Custom apps run from your home directory as your user, and the port you assign is bound locally until you stop the app or disconnect. On Windows, Sync writes to the Windows SSH config while AI Workbench may look inside WSL, and NVIDIA's Workbench page warns that a location added through Sync may then not find its SSH entry.

Which NVIDIA Sync version is current, and what changed?

Version 0.148.0-153 is current; NVIDIA's release notes carry no dates, so the dates below come from the forum posts where each version first shows up.

VersionMain changesSourceDate
0.41.22The version an NVIDIA moderator told owners to run; launching AI Workbench from Sync on Windows failed until a patch owners reported on 3 December 2025forum 3491592025-10-29
0.64.24Tailscale integration, SSH service discovery, DGX Dashboard auto-detection, import of existing SSH configsforum 3655762026-04-03
0.97.6Cluster Assistant for ConnectX-7 clusters, several devices connected at once, local port collision handlingrelease notesJune 2026
0.100.18Update notifications in the DGX Dashboard app, session logging, updates no longer overwrite the default SSH configrelease notesnot stated
0.100.19-18Build of 28 July 2026 bundles Tailscale v1.92.5, reported by an owner; NVIDIA replied on 13 August that the next release updates itforum 3794132026-08-07
0.117.3-9Resource Monitor for CPU, memory and GPU; SSH aliases for ConnectX-7 addresses; same host with several user accountsrelease notesnot stated
0.148.0-153Model Launcher (beta), OpenCode set up against the local model, Docker group prompt, Codex remote foldersrelease notesdocs of 2026-10-30

The 0.97.6 month is from NVIDIA's DGX Spark June 2026 release notes, which introduce the Cluster Assistant, and from a forum thread about 0.97.6 opened on 2 June 2026. Versions between those listed exist; these are the ones with notes I could read.

The October 2026 DGX Spark release also routes DGX Spark Skills through Sync: per NVIDIA's Sync page in the Spark user guide, from late October the skills for troubleshooting, clustering and maintenance are available in the local OpenCode instance that Sync configures. Model Launcher setup installs skills under ~/opencode/.opencode/skills/. What else changed in that release is on the DGX Spark software updates page.

How do I open the DGX Dashboard and its JupyterLab remotely?

Tunnel port 11000 for the dashboard and your own JupyterLab port for the notebook; Sync does both when you click DGX Dashboard. The dashboard docs say it shows system metrics, applies updates, changes some settings and starts JupyterLab, and that updates and renaming need a sudo account. Each user account gets its own JupyterLab port, listed in a YAML file. NVIDIA's dashboard playbook gives the manual version:

cat /opt/nvidia/dgx-dashboard-service/jupyterlab_ports.yaml
ssh -L 11000:localhost:11000 -L <ASSIGNED_PORT>:localhost:<ASSIGNED_PORT> <USERNAME>@<SPARK_DEVICE_IP>

Then open http://localhost:11000 and log in with your Linux username and password. If several people share the Spark, an administrator can switch the dashboard's update button off with /opt/nvidia/dgx-dashboard/settings.json ("update": {"enabled": false}), which NVIDIA documents on the same page. That stops a teammate from rebooting a shared server into a new kernel. JupyterLab itself is covered in the AI Workbench and JupyterLab guide.

How do I reach my Spark from outside my network?

Use Sync's built-in Tailscale, and set it up before you leave the building. The Sync Tailscale page says the laptop needs no Tailscale app because Sync embeds it; you sign in through the browser, create an auth key with default settings in the Tailscale admin console, paste it into Sync, and a terminal on the Spark installs and signs in the Tailscale client. After that Sync picks direct or Tailscale on its own and switches when you change networks. Removing a device from the tailnet needs a direct connection again, so do not plan to clean up from a café.

Without Sync, NVIDIA's older standalone Tailscale playbook (last updated 7 November 2025) installs the client from Tailscale's Ubuntu 24.04 repository:

curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.noarmor.gpg | \
  sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg > /dev/null
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.tailscale-keyring.list | \
  sudo tee /etc/apt/sources.list.d/tailscale.list
sudo apt update
sudo apt install -y tailscale
sudo tailscale up

That playbook's old address on build.nvidia.com now redirects to Tailscale's own knowledge base (checked 7 November 2026); NVIDIA folded the Sync route into the "Enable Tailscale" tab of its Connect Remotely playbook. One reason to prefer the standalone client: it updates through apt, while Sync's embedded copy updates only with Sync. An owner found Tailscale v1.92.5 inside Sync 0.100.19-18 in August, with advisories open against it (forum thread 379413).

Can I skip NVIDIA Sync and use plain SSH?

Yes, and on a network you control I would. Apart from the Cluster Assistant, Model Launcher and the Tailscale wizard, every Sync feature is an SSH login plus a port forward. NVIDIA's manual SSH tab starts with ssh <user>@spark-abcd.local and falls back to the IP from your router when mDNS is blocked. Put the forwards in your config so one word opens them; LocalForward and ServerAliveInterval are standard OpenSSH options:

Host spark
    HostName spark-abcd.local
    User you
    IdentityFile ~/.ssh/id_ed25519
    ServerAliveInterval 60
    LocalForward 11000 localhost:11000

Copy your public key with ssh-copy-id and turn off password logins, as in the setup guide. Sync can import this same alias later, so the two approaches coexist. VS Code and Cursor read the file through their Remote-SSH extensions.

How do I expose a model API without leaving it open?

Bind the server to localhost and reach it through a tunnel; publish it on the LAN only behind authentication you trust. NVIDIA's own Model Launcher docs spell out the trade-off: Localhost mode keeps the endpoint behind Sync's SSH tunnel, while LAN mode listens on every network the Spark is attached to, including VPNs, is open to anyone who can reach it unless you generate an API key, and uses unencrypted HTTP even with a key. The model also keeps running when Sync disconnects, so a LAN endpoint stays reachable while your laptop sleeps.

Ranked from safest:

vllm serve <model> --host 127.0.0.1 --port 8000 --api-key "$VLLM_API_KEY"
ssh -N -L 8000:localhost:8000 spark

Also think twice about the Docker group prompt. NVIDIA's own wording is that membership "can grant root-level control of the device", which is fine for the owner and wrong for a teammate who only needs the API; the multi-user access guide covers the gateway pattern for that case.

What is different on a rented Spark?

Almost all of the Spark-side setup in this guide does not apply, because a rental is a container, not a DGX OS host. Per the tenant environment page, you are root inside a Docker container with the GPU passed through, there is no systemd, no NET_ADMIN (so no Tailscale or kernel VPN), and no Docker socket. You connect with the browser terminal or with root SSH on port 22 using your own key, as the SSH key guide shows; password logins are off.

What follows from that, feature by feature:

The in-container hardening checklist is in security hardening a rented GPU.

What I would set up

For one owner on a home or office LAN: plain SSH with a key, the config block above, and the standalone Tailscale client if you travel. Add Sync if you want one-click editor launches or the Cluster Assistant for two or more Sparks; nothing it sets up is hard to undo. Leave Model Launcher in Localhost mode unless the whole LAN is people you would hand a root shell. If the Spark is headless from day one, the headless setup guide covers getting it onto the network before any of this.

FAQ

What is NVIDIA Sync for DGX Spark?

NVIDIA Sync is a tray app for Windows, macOS and Ubuntu that connects to a DGX Spark over SSH. You give it the Spark's hostname, username and password once; it sets up key-based SSH, an SSH alias and a managed tunnel, then launches VS Code, Cursor, Codex, AI Workbench, the DGX Dashboard and your own scripts. Its release notes list version 0.148.0-153 as current, read on 7 November 2026.

How do I open the DGX Dashboard remotely without NVIDIA Sync?

Open an SSH tunnel to port 11000 and browse to http://localhost:11000, as NVIDIA's DGX Dashboard docs describe: ssh -L 11000:localhost:11000 [email protected]. For the dashboard's JupyterLab, add a second -L for your per-user port, which is listed in /opt/nvidia/dgx-dashboard-service/jupyterlab_ports.yaml on the Spark.

Do I need Tailscale to reach my DGX Spark from outside my home network?

You need some tunnel; Tailscale is the one NVIDIA documents. NVIDIA Sync has Tailscale built in on the laptop and installs the Tailscale client on the Spark using an auth key you create. Set it up while you are still on the same network, because Sync needs a direct connection to install it and to remove it later.

Is the NVIDIA Sync Model Launcher LAN mode safe?

Only on a network you trust. NVIDIA's Model Launcher docs say LAN mode listens on every network the Spark is connected to, including VPNs, uses unencrypted HTTP even when you set an API key, and is open to anyone who can reach it if you set no key. Localhost mode keeps the endpoint behind Sync's SSH tunnel instead.

Does NVIDIA Sync work with a rented DGX Spark?

Partly at best. A rented GPUwerk Spark is a container you reach by root SSH with your own key or a browser terminal. Sync can import an existing SSH alias, but its Tailscale, Docker and Model Launcher features need things the container does not allow, and the DGX Dashboard is a host service. Plain SSH with port forwards does the same job there.

Sources

Every figure above is attributed to its source in the sentence or table where it appears. Pages were read on 7 November 2026 unless a date says otherwise.

Own the Spark you connect to.

Every NVIDIA Sync feature in this guide needs a GB10 machine of your own; the GPUwerk store ships them from Czechia, or hosts one for you.

GB10 machines shipped by DHL Express from Czechia, or hosted in GPUwerk's EU datacenter and rented out for you.

Browse machines SSH into a rented Spark instead