Skip to content

RDP browser client button not shown for Linux peers running xrdp #616

@renne

Description

@renne

Describe the problem

The RDP button in the peer detail view is only rendered for Windows peers. Linux peers running xrdp never see the button, even though the underlying RDP page works fine for Linux targets.

src/modules/remote-access/rdp/RDPButton.tsx gates rendering on:

const isWindows = getOperatingSystem(peer?.os) === OperatingSystem.WINDOWS;
return (isWindows && (  ));

The RDP page (src/app/(remote-access)/peer/rdp/page.tsx) is fully OS-agnostic and successfully connects to a Linux xrdp server when navigated to directly.

The official docs state: "For RDP: The RDP server must be enabled on the target machine" — no OS restriction mentioned.

To Reproduce

  1. Register a Linux peer with xrdp installed and running.
  2. Open the peer detail page in the dashboard.
  3. Observe: only the SSH button is present; RDP is absent.
  4. Manually navigate to https://<management-url>/peer/rdp?id=<peer-id> → RDP session connects successfully.

Expected behavior

The RDP button should appear for Linux peers (and any peer that may have an RDP server running), matching the docs which place no OS restriction on the feature.

Suggested fix: extend the condition in RDPButton.tsx to also render for OperatingSystem.LINUX, or show the button for all peers and let the connection fail naturally if no RDP server is listening.

Workaround

Navigate directly to /peer/rdp?id=<peer-id> — the page works without the button.

Are you using NetBird Cloud?

Self-hosted.

NetBird version

Dashboard: v2.36.0 — Management: 0.68.1 — Client: 0.68.3

Additional context

Related upstream issue: netbirdio/netbird#4534

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions