mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-08 21:03:46 +00:00
Remote Desktop
RDP, VNC and Telnet sessions in the browser, with clipboard, file transfer, recording and sharing.
Features
- Connect to hosts over RDP, VNC or Telnet from any browser.
- Clipboard sync and file transfer through RDP drive redirection.
- Session recording and session sharing, when those plugins are on.
- Jump host support.
- Opens the Windows Remote Desktop client from the desktop app.
Setup
This plugin needs guacd, the Apache Guacamole proxy that speaks RDP, VNC and Telnet. The Docker compose file runs it as its own guacamole/guacd container. This plugin never starts guacd itself.
Set where guacd runs with the guacd URL admin setting. The GUACD_URL, or GUACD_HOST and GUACD_PORT, environment variables override that setting.
Other environment variables:
| Variable | What it sets |
|---|---|
GUACD_TUNNEL_HOST |
The name guacd uses to reach Termix for a jump host tunnel. Defaults to termix. |
GUACD_RECORDING_PATH |
Where guacd writes recordings, as guacd sees it. |
GUACD_RECORDING_BACKEND_PATH |
The same folder, as Termix sees it. |
GUACD_DRIVE_PATH |
The root of each user's RDP drive folder on the guacd host. |
GUACAMOLE_ENCRYPTION_KEY |
The connection token key. Made from JWT_SECRET when not set. |
Settings
Admin
- Enable Remote Desktop: turn remote desktop on or off.
- guacd URL: where guacd runs, as
host:port. Changes apply without a restart.
User
- RDP defaults: color depth, resize method, wallpaper, font smoothing, audio, printing, drive redirection and clipboard. A host's own values win over these.
Host
- RDP, VNC and Telnet: turn each protocol on and set its port.
- RDP security mode and Ignore certificate errors.
- guacd settings: every other guacd option.
- Remote desktop toolbar: show the toolbar in the session.
Permissions
remote-desktop.sessions: Let session sharing and recording reach your remote desktop sessions. Admins and users have it by default.
Services
Provides to other plugins:
sessions.liveasrdp,vncandtelnet: find a live session so it can be shared.
Uses from other plugins:
recordings.writerto record sessions. Optional.tunnels.accessfor single-hop jump host tunnels. Optional.
Development
npm run build # build into dist/
npm run test # run this plugin's tests
npm run typecheck # type-check this plugin