远程桌面、终端、文件管理等能力来自插件,需在 Plugins 标签页单独安装或启用;每个插件有独立仓库,插件问题要到对应仓库反馈;若 Termix 与被管服务器在同一网络,宿主机故障时可能无法访问,README 建议放到 VPS。
Termix
Termix-SSHApache-2.0活跃维护自托管的插件式服务器管理平台,把 SSH 终端、SFTP 文件传输、RDP/VNC 远程桌面集中到一个网页界面里,方便统一管理多台服务器和家庭实验室设备。
Self-hosted, plugin-based server management.
docker compose up -d(使用 README 示例 compose,镜像 ghcr.io/termix-ssh/termix:latest,端口 8080:8080,数据卷 termix-data:/app/data)README 未说明 CPU、内存或显存要求;提供 Docker 镜像,可自托管运行,未提及 GPU 型号或厂商。
自托管、插件化的服务器管理平台,可当作免费版 Termius 用
自托管的插件式服务器管理平台,把 SSH 终端、SFTP 文件传输、RDP/VNC 远程桌面集中到一个网页界面里,方便统一管理多台服务器和家庭实验室设备。
核心能力
- 核心只保留主机、凭据、用户、共享和会话
- SSH 终端、远程桌面、文件管理、Docker 等按插件装卸
- 主机支持嵌套文件夹、标签、批量编辑与导入导出
- 共享与角色分连接、查看、编辑、管理四级权限
- 默认 SQLite,也支持 PostgreSQL 和 MySQL
容易踩的坑
- v26.11.1Termix v26.11.1最新正式版2026-11-09 · 2026-11-09 03:59 UTC
[!TIP] Termix is free and always will be. If it's useful to you, consider donating to support development.
Added
- Plugins in the desktop app can drag files out to Explorer or Finder
- Termix actions: plugins can declare what they do once, and it works from the API with permission checks, dry runs, run history and approvals
- API keys can be limited to reading or running actions, when an admin makes them
- A click on a host can open its host page, when a plugin offers one
- Plugins can build pages of tiles you drag and resize, and add many copies of one dashboard card, each with its own settings
- A plugin a newer release ships is downloaded on its own when your image does not have it, and tried again on the next start when offline
- Plugins can decide who may connect to a host, so a host can need approved access before an SSH or remote desktop session opens
- When more than one plugin flags a host, its row shows one status dot with every reason in its tooltip
- Plugins that issue SSH certificates can save them on the SSH key login they were issued for
- Cmd+B shows or hides the sidebar, and can be changed in keybindings
- The macOS menu bar icon can be monochrome (the default), in color or hidden, from the Termix menu
- Browser back and forward, and the mouse back and forward buttons, move between the tabs you used instead of leaving Termix
- Closing a tab goes back to the tab you used before it
- Admin setting to stop anyone saving passwords and keys on hosts and credentials. Termix asks for them when connecting (#1753)
- A signed in user can prove a second factor again, for plugins that ask before something sensitive
- Desktop app: a credential can be kept on this device only, and used as a personal login for a shared host or folder. It is never sent to the server (#1749)
Changed
-
Inputs, selects, tab groups and menus share one fill and one border color
-
Plugin cards and pages use the dashboard look everywhere, with shared lines between sections instead of separate boxes with gaps
-
The Plugins tab and plugin pages use the same look
-
List rows in plugins follow the host list status colors: accent for good, dark for offline or bad
-
Line charts that cover a few minutes show seconds in their times
-
Plugins a new release adds to the image start on only when they are recommended. The rest are installed and left off for an admin to turn on
-
Session tokens are stored as hashes, so a database copy holds no working logins (#1753)
-
Host status, import and export, and credential tools now start on for new installs
-
Sync now starts on in a new desktop app, so it can link to a server
-
The first run plugin picker leaves plugins you did not choose off instead of removing them
-
The Linux Flatpak now installs from flatpak.termix.site on x86_64 and arm64, and
flatpak updatekeeps it current -
Dropdowns and text areas are the same size as the text fields next to them
-
A page's own tabs sit above its search bar
-
A plugin view that is still starting shows the same loading spinner as the rest of Termix
Fixed
- Exporting hosts keeps each host status check setting and interval (#1787)
- A linked desktop app now updates a plugin that came with the app when the server has a newer copy (#1785)
- The first run plugin picker no longer sets the default layout and themes to Remove. They always stay on
- Alerts with no icon no longer squeeze their text to one word per line
- Password fields with the show button are the same height as the other fields next to them
- Button groups next to tabs no longer touch the lines of the tab row
- The Secure your account setup step no longer shows up empty when no passkey or authenticator plugin is on
- An installed plugin update older than the copy in a newer image is removed at startup instead of logging an error every boot
- Canceling a download to the desktop app right as it starts no longer leaves a partial file behind
- Changing two interf
- sdk-v1.1.4Plugin SDK v1.1.42026-11-08 · 2026-11-08 19:19 UTC
查看更新说明
Plugin API 1.17.0.
Added
contributes.settings.host.enablePermissionlimits who may change a plugin's host switch
- sdk-v1.1.3Plugin SDK v1.1.32026-11-07 · 2026-11-07 05:10 UTC
查看更新说明
Plugin API 1.16.0.
Fixed
generateSshKeyPairno longer hands out an unreadable key. ssh2 broke about 1 in 256 ed25519 keys
- sdk-v1.1.2Plugin SDK v1.1.22026-11-07 · 2026-11-07 04:50 UTC
查看更新说明
Plugin API 1.16.0.
Added
- Sync entities take
matchOn, columns that identify a row besides its syncId, so a row made on both sides (one per host) is merged instead of failing PluginHostRecordhashasPasswordandhasSudoPassword, so a plugin knows a saved password exists without seeing itctx.credentials.setSshKeyCertificatestores an OpenSSH certificate on one of the acting user's SSH key credentials, or clears it withnull/uiexportsToolbarBand(a toolbar row outside the PanelShell toolbar),ToolbarSelect(a small select for those rows) andTOOLBAR_FIT(the classes that make every control in a row 32px)PANEL.section, the one inner layout for a SectionCard bodyTextAreaFieldtakesfill, so a config or log editor uses the rest of the heightregisterHostBadgetakesuseDot. Every plugin's dots merge into one dot on the host row, with the worst tone and each reason in its tooltip./uiexportsHostDotGroupfor layouts that draw host rows/uiexportsgetCredentialStorageandupdateCredentialStorage, andHostPolicyhascredentialStorageLoginMethodUIPropshasview, the login page a method is drawn onctx.auth.identitieslists, links and unlinks a user's external identities- Connect policy input has
stepUpAt, and arequestdecision can setrequestKind: "verify" /uiexportslistStepUpFactors,challengeStepUp,verifyStepUpanduseSecondFactors, to ask a signed in user for a second factor/uiexportsgetHostDeviceAuth,setHostDeviceAuth,getFolderDeviceAuthandsetFolderDeviceAuthfor logins kept on a desktop
Changed
- Controls in the PanelShell toolbar, tab band and footer are all 32px, so small buttons line up with search boxes and selects
SegmentedandViewTogglematch the height of inputs and buttons, andSegmentedkeeps its natural widthFormFooterbuttons are full heightPANEL.bodyisp-3, the same paddingInlineViewgives a form- A body with a pinned footer no longer draws a closing line just above the footer's own line
- The placeholder for a plugin view that is still starting uses
LoadingState termix-plugin validatewarns about UI drift: raw loading spinners, small back buttons, native selects, stretched filters, filled headers, capped log views and footers that scroll away- A
ToolbarBandright inside aTileStackleaves the line under it to the stack ListBadgeandStatusBadgekeep their own width in a table cell instead of filling it
Fixed
parseCpuLineno longer counts guest and guest_nice twice, so CPU percent on hosts running VMs is no longer too high
- Sync entities take
- sdk-v1.1.1Plugin SDK v1.1.12026-11-06 · 2026-11-06 04:48 UTC
查看更新说明
Plugin API 1.15.0.
Added
ctx.hosts.connectPolicy.provideand thehosts:connect-policycapability, so a plugin can allow, deny or ask for an access request before an SSH or remote desktop session opens- SSH prepare outcomes can carry the error codes
access-deniedandaccess-requiredwith arequestTab
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Overview
Termix is a free, open source, self-hosted server management platform built on plugins. The core keeps your hosts, credentials, users, sharing and sessions. Everything else, like the SSH terminal, remote desktop, file manager, Docker and metrics, is a plugin you can turn on, off or remove.
It runs on web, desktop and mobile. Think of it as a free, self-hosted Termius.
Try the Demo
Try it at demo.termix.site. Any username and password works.
Core
What every install has, with or without plugins:
- Hosts: Save hosts in nested folders with tags and parent hosts, bulk edit, import and export, and use Quick Connect for one-off connections
- Credentials: Reuse saved passwords and keys across hosts, with host defaults you can set for the server, a user or a folder
- Sharing and Roles: Share hosts, credentials and folders with users or roles at four levels: connect, view, edit and manage
- Accounts: Local accounts, sessions you can see and revoke, trusted devices, API keys and an audit log
- Security: Passwords, keys and other secrets are encrypted per user, and the database can be encrypted on disk
- Desktop Sync: The desktop app runs on its own and can link to a Termix server to keep an offline copy of your account
- Interface: Tabs and split screen, a command palette (double tap left shift), rebindable shortcuts, themes, branding and around 30 languages
- Databases: SQLite by default, with PostgreSQL and MySQL supported too
Plugins
Plugins add everything else. The official ones ship with Termix, and admins can install, update or remove plugins from the Plugins tab. Each plugin has its own repo.
| Plugin | What it does |
|---|---|
| ACME Certificates | Gets the Termix HTTPS certificate from Let's Encrypt or any ACME provider and renews it for you. |
| AI Assistant | An AI assistant that reads your setup and proposes changes for you to approve. |
| Alerts | One inbox for every alert in Termix, with delivery to webhooks, ntfy, Discord and email. |
| Audit Tools | Send the audit log to your SIEM and export it as CSV or NDJSON. |
| Automations | Run steps on your hosts on a schedule or when something happens. |
| Classic Layout | The classic Termix layout with an icon rail, sidebar, tab bar and dock. |
| Classic Themes | Light, dark and seven more color themes for Termix. |
| Cloud Providers | Add hosts from AWS, Azure, Google Cloud, DigitalOcean, Hetzner and other clouds, and keep them in sync. |
| Credential Tools | Generate SSH keys, check them and copy a public key to a host. |
| Databases | Browse and edit MySQL, MariaDB, PostgreSQL and SQLite databases on your hosts from one tab. |
| Docker | Manage Docker and Podman containers on your hosts over SSH, with logs, stats and a console. |
| File Manager | Browse, edit and move files over SFTP, including straight from one server to another. |
| Fleets | Group hosts into fleets and run commands, package actions and file transfers on all of them at once. |
| HashiCorp Vault | Connect to hosts with short-lived SSH certificates signed by HashiCorp Vault. |
| Homepage | A drag and drop widget page for your servers and services, plus service links for the dashboard. |
| Host Metrics | Live CPU, memory, disk, network and GPU stats, plus tools to manage your hosts. |
| Host Status | Shows if each host is online with a dot in the host list, checked by connecting to its port. |
| Hosts Config | Keep hosts, folders and sharing in a YAML or JSON file. Termix loads them as read only hosts and reloads when the file changes. |
| Import and Export | Import hosts from a JSON file or an SSH config file and export them to share or back up. |
| Kubernetes | Manage Kubernetes clusters from your hosts over SSH, with logs, metrics, YAML and a shell. |
| LDAP | Sign in with your LDAP or Active Directory username and password. |
| Login Security | Sign people out when idle, limit session length, turn off remember me and require a second factor at login. |
| Network Topology | Draws your hosts and the links between them as a live, interactive graph. |
| OPKSSH | Connect to hosts with short-lived OpenPubkey SSH certificates after signing in with your identity provider. |
| Passkeys | Sign in with a passkey or security key instead of a password. |
| Proxmox | Import Proxmox VE guests as hosts, keep them in sync and watch node stats. |
| Remote Desktop | RDP, VNC and Telnet sessions in your browser, with clipboard, file transfer, sharing and recording. |
| Reverse Proxy | Reverse proxy for TCP, UDP, HTTP and HTTPS with free certificates and Termix login, managed per host. |
| Samba Shares | Create and manage Samba (SMB) file shares, users and permissions on your hosts from one tab. |
| Secret Sources | Pull host passwords and keys from 1Password when you connect instead of storing them in Termix. |
| Serial | Open a serial console to a router, switch or other device plugged into your computer. |
| Services | Manage services, timers and logs on your hosts over SSH. |
| Session Recording | Record terminal and remote desktop sessions and play them back or download them later. |
| Session Sharing | Share live sessions by link or with another user, and present sessions to a group in meeting rooms. |
| Simple Layout | A simple Termix layout for small setups with a top bar, a Home screen and only the basics. |
| Single sign-on | Sign in with any OpenID Connect provider, GitHub or Google. |
| Snippets | Save the commands you run often and run them in a terminal or on many hosts in one click. |
| SSH Terminal | SSH terminal sessions with tabs, split screen, history, macros and a local terminal in the desktop app. |
| Step CA | Connect to hosts with short-lived SSH certificates from a smallstep step-ca server. |
| Sync | Sync the desktop app with one or more servers, and manage other Termix servers as remote sites from a master. |
| Tailscale | Add tailnet devices as hosts and connect with Tailscale SSH. |
| Termix Identity | Publish your SSH public keys under a public handle and run your own SSH certificate authority. |
| Tmux Monitor | Browse and control tmux sessions, windows and panes across your hosts. |
| TOTP | Two-factor sign in with a code from an authenticator app, with backup codes. |
| Tunnels | SSH port forwarding that reconnects on its own, plus client tunnels from the desktop app. |
| Usage Statistics | Sends a small anonymous daily report so we can see how Termix is used. |
| Wake-on-LAN | Wake sleeping machines by sending a Wake-on-LAN packet to their MAC address. |
| Warpgate | Connect to hosts through a Warpgate SSH bastion. |
| Web Endpoint | Open a host's web UI inside Termix, directly or over an SSH tunnel. |
| Workspaces | Save your open tabs and split layouts and reopen them in one click. |
Want to build your own? Start from the plugin template. Plugins you can install are listed in the registry. Turn on the community registry in Plugins, Registries to install plugins made by other people, or add your own registry. See submitting a plugin and hosting your own registry.
Platform Support
Installation
See the docs for install steps on every platform.
Sample Docker Compose file. Remote desktop (RDP, VNC and Telnet) is built in, so nothing else needs to run next to it:
services:
termix:
image: ghcr.io/termix-ssh/termix:latest
container_name: termix
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- termix-data:/app/data
environment:
PORT: "8080"
volumes:
termix-data:
driver: local
Cloud Hosting
If Termix runs on the network it manages, an outage takes it down right when you need it. A VPS keeps it reachable, gives you a static IP and works from anywhere without a VPN or port forward.
GINERNET sponsors Termix and the docs have a setup guide for their VPS.
Donate
Termix has no paid plans. Donations cover servers, domains and development time.
Sponsors
For a paid sponsor spot, email [email protected].
Support
Bugs and ideas for Termix itself (login, hosts, credentials, sharing, sync, the app and desktop app) go in this repo: report a bug or request a feature.
Every plugin has its own repo, so a problem with the terminal, file manager, Docker, remote desktop or any other plugin goes in that plugin's repo (see the table above, or use Report an issue on the plugin's page in the app, which fills in your versions for you). Not sure where it goes? Open it here and it will be moved.
You need a GitHub account. Add as much detail as you can, in English if possible.
For discussions and questions, join the Discord server. Update videos are on YouTube.
License
Apache License 2.0. See LICENSE.