About this project
Termix is a free, open-source, self-hosted server management platform positioned as a self-hosted alternative to Termius. It brings SSH terminals, remote desktops, file transfers, tunnels, container management, metrics, and automations into a single interface available on web, desktop, and mobile.
Core capabilities described in the README:
- SSH terminal with browser-like tabs and split screen (up to six panels), theme/font/color customization, and a per-session toolbar showing live CPU, memory, and disk plus links to that host's files, Docker, tunnels, and metrics.
- Remote desktop support for RDP, VNC, and Telnet in the browser, with tabs and split screen, an RDP drive file browser with drag-and-drop upload, and native RDP client launching on Windows desktop.
- SSH tunnels: local, remote, and dynamic SOCKS forwarding with auto reconnect and health checks; client-to-server tunnels stored locally on desktop, with presets that can be saved server-side.
- File manager over SFTP: browse, edit, upload, download, rename, move, delete, with sudo support and previews for code, images, audio, and video. Server-to-server transfers run in a dedicated tab with integrity checks. The desktop app offers side-by-side local and remote views.
- Docker and Podman container management: start, stop, pause, remove, stats, and shell access. The README explicitly notes it is not intended to replace Portainer or Dockge.
- Host manager with tags, nested colorable folders, reusable credentials, automatic SSH key deployment, parent-host grouping, bulk edit/export, and Quick Connect for unsaved one-off connections.
- Host metrics: CPU, memory, disk, network, temperature, NVIDIA GPU, uptime, processes, ports, logins, and system info on most Linux servers, with history graphs. Manager cards cover services, cron jobs, packages, users, firewall rules, WireGuard, Tailscale, SSL certs, logs, and health checks.
- Automations: triggers include metric thresholds, host up/down, health check changes, schedules, container events, and incoming webhooks. Steps can run commands and snippets, control containers and tunnels, wake hosts, call URLs, wait, branch on conditions, run other automations, and notify via ntfy, Discord, or webhook. Test runs are supported.
- Fleets: group hosts manually or by tag rules so new hosts join automatically; run one command across all hosts, push/pull files, install packages, and collect OS/kernel/arch/uptime inventory.
- Optional AI assistant, off by default. Supports OpenAI, Anthropic, Gemini, Ollama, or any OpenAI-compatible endpoint. It reads hosts, fleets, snippets, and alerts and proposes changes for approval rather than applying them; it cannot access credentials, users, or settings. Admins can disable it instance-wide.
- Authentication and users: local accounts plus OIDC, LDAP, GitHub, and Google sign-in, with TOTP 2FA, WebAuthn passkeys, and trusted devices. Admins can manage users, map OIDC groups to roles, view and revoke active sessions, link local and OIDC accounts, and read an audit log.
- Roles and sharing: roles can be shared with users or roles at four levels (connect, view, edit, manage), across auth types and protocols, with credential overrides for shared hosts.
- Alerts on host metrics such as CPU, memory, and disk, delivered via ntfy, Discord, or webhook, with a firing/resolved history log.
- Homepage: a drag-and-drop widget grid with widgets for host status, pings, service links, bookmarks, search, clocks, calendars, countdowns, notes, RSS, weather, images, iframes, Docker, tunnels, metrics charts, custom APIs, and a live terminal.
- Snippets and tools: saved commands with host and custom variables, one-click execution, running a command across all open terminals, and searchable command history with autocomplete.
- Session sharing: share live terminal, RDP, VNC, or Telnet sessions via account-free links or with specific Termix users, in read-only or read-write mode, with expiry and revocation, and global or per-host disabling.
- Session recording and logs for terminal, RDP, and VNC sessions with playback, plain-text log download, and connection logs.
- Serial connections for routers, switches, and microcontrollers with configurable baud rate, data bits, stop bits, and parity, using the Web Serial API or a native desktop backend.
- Tailscale integration: import tailnet devices as hosts and connect via Tailscale SSH so ACLs govern access without stored credentials; Headscale and custom endpoints are supported.
- Proxmox integration: import hosts from a Proxmox instance and view node and guest CPU, memory, and storage stats.
- Workspaces and tabs: save tab sets with split layouts and reopen them; last session is remembered across refreshes and devices.
- A `termix` CLI installable via `npm install -g @termix-cli/cli` or a standalone binary, for opening terminals, running commands on one host or a fleet, moving files over SFTP, and managing hosts, snippets, and credentials.
- Security: per-user encryption of passwords and keys, with optional on-disk database encryption.
- Around 30 built-in languages managed through Crowdin.
Additional features listed include a dashboard, network graph, tmux monitor, user-scoped API keys with expiry, export/import, automatic SSL with HTTPS redirects or bring-your-own certificates, SQLite by default with PostgreSQL and MySQL support, a React UI with light/dark/Dracula themes and full-screen URLs, a command palette (double-tap left shift), rebindable keyboard shortcuts, Wake-on-LAN, trusted proxy auth, white labeling, embedded web endpoints, collaboration rooms, and extensive SSH features (jump hosts, Warpgate, TOTP prompts, SOCKS5, host key verification, OPKSSH, tmux, port knocking, agent forwarding, Bitwarden SSH agent, HashiCorp Vault SSH signing, Step CA, 1Password Connect). Termix ID provides a built-in sshid.io-style handle with public key publishing and certificate issuance from a built-in CA. The desktop app can run standalone with a local backend and database and optionally sync with a Termix server.
Platform support covers web browsers with PWA support; Windows (portable, MSI, Chocolatey); Linux (portable, AUR, AppImage, Deb, Flatpak); macOS (App Store, DMG, Homebrew); iOS/iPadOS; and Android (Play Store, APK). Installation documentation is at docs.termix.site/install, with a Helm chart in `charts/termix` for Kubernetes. A sample Docker Compose file runs the Termix image alongside guacd for remote desktop features.
Telemetry: an anonymous daily ping includes a random instance ID, user and host counts, app version, and features used in the last 24 hours; it excludes usernames, hostnames, IP addresses, and credentials. It is on by default and can be disabled in Admin Settings or via `ENABLE_TELEMETRY=false`.
Licensed under the Apache License 2.0. The project is donation-supported with no subscriptions or paid plans.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.