Commit Graph

378 Commits

Author SHA1 Message Date
LukeGus 0fe3f8d126 feat: sidebar saves state across mobile swtich, guacd hosts not migraitng passwords, terminal wrong size 2026-05-26 17:48:19 -05:00
LukeGus 5c2c9c179e feat: seperated out sharing, improved host/credential loading, reduced host manager bloat 2026-05-26 16:57:35 -05:00
LukeGus 4df71e77cb feat: add CA-signed certificate authentication for SSH credentials (#812) 2026-05-26 15:44:37 -05:00
Marc Reinke 698a5648ec feat: add CA-signed certificate authentication for SSH credentials
Support OpenSSH certificate-based authentication (-cert.pub files) in
the Credentials manager. When a CA-signed certificate is stored alongside
a private key, Termix uses it during SSH connection establishment so that
servers relying on certificate-based authorization work out of the box.

Changes:
- db/schema.ts: add cert_public_key column to ssh_credentials table
- db/index.ts: auto-migration via addColumnIfNotExists
- routes/credentials.ts: expose certPublicKey in create/update/get endpoints
- ssh/auth-manager.ts: include certPublicKey in ResolvedCredentials
- ssh/host-resolver.ts: propagate certPublicKey when resolving credentials
- ssh/opkssh-cert-auth.ts: refactor shared logic into _applyCertToConnection;
  export new setupCACertAuth() with optional passphrase support
- ssh/terminal.ts: call setupCACertAuth() when a certificate is present
- utils/ssh-key-utils.ts: detect all OpenSSH cert types in public key parser
- types/index.ts: add certPublicKey to Credential, CredentialBackend,
  CredentialData interfaces
- CredentialAuthenticationTab.tsx: new CA Certificate section with file
  upload, paste editor and automatic cert-type badge
- CredentialEditor.tsx: certPublicKey wired into form schema and submit
- CredentialViewer.tsx: show certificate status in security tab
- locales/en.json: add i18n strings for new UI elements
2026-05-26 15:44:08 -05:00
Luke Gustafson d3a2992898 Update sha256 checksum for Termix cask 2026-05-26 15:42:18 -05:00
LukeGus 57d9e0c035 fix: jump hosts failing 2026-05-26 15:30:22 -05:00
LukeGus 0a3517f9b0 fix: jump hosts failing 2026-05-26 15:28:44 -05:00
LukeGus 3011de6abb fix: guacd hosts not migarting password 2026-05-22 17:16:39 -05:00
LukeGus 6b9784c8fc feat: improve sentinel system 2026-05-22 16:56:53 -05:00
LukeGus ee4520a1e0 fix: guacd connec tions migrating incorrectly from allowing all protocls in one host migration 2026-05-22 16:36:54 -05:00
LukeGus 4c2a317f24 fix: electron backend not starting 2026-05-22 16:16:14 -05:00
LukeGus 3bb305bc38 fix: websocket auth error electron 2026-05-22 15:55:03 -05:00
LukeGus b82111c273 fix: overalpping guacd ui 2026-05-22 00:14:33 -05:00
LukeGus a9f82a5a45 feat: readd mange mode for host manager, guacd toolbar improvements, connection issues, etc. 2026-05-22 00:02:50 -05:00
LukeGus 6bcbadcc25 feat: guacd improvements, created tool bar 2026-05-21 22:35:58 -05:00
LukeGus 23a0160ef0 fix: auth failed electron 2026-05-21 14:22:25 -05:00
LukeGus 170080399b feat: seperated host manager into 2 rail tabs, electron fixes for auth, shared credential fixes 2026-05-20 22:55:16 -05:00
LukeGus 15e815a632 chore: continued redesign readme 2026-05-20 17:11:37 -05:00
LukeGus 162a512729 chore: continued redesign readme 2026-05-20 17:10:28 -05:00
LukeGus 22ff064c96 chore: continued redesign readme 2026-05-20 17:06:16 -05:00
LukeGus df6fe0430b chore: continued redesign readme 2026-05-20 17:03:43 -05:00
LukeGus 5bb1cfc03c chore: continued redesign readme 2026-05-20 17:01:31 -05:00
LukeGus 4710b6507a chore: continued redesign readme 2026-05-20 16:58:50 -05:00
LukeGus aa71183d08 chore: continued redesign readme 2026-05-20 16:56:02 -05:00
LukeGus a045d660fc chore: continued redesign readme 2026-05-20 16:53:10 -05:00
LukeGus b91c8c3dd4 chore: continued redesign readme 2026-05-20 16:48:42 -05:00
LukeGus 2c5f7d1e66 chore: continued redesign readme 2026-05-20 16:45:12 -05:00
LukeGus 5b890e9538 chore: continued redesign readme 2026-05-20 16:44:27 -05:00
LukeGus 0bb127737c chore: remove unneeded npm packages and redesign readme 2026-05-20 16:38:29 -05:00
LukeGus fb882b9ce5 fix: build failure 2026-05-20 15:17:02 -05:00
LukeGus cf27e02b23 fix: build failure 2026-05-20 15:12:58 -05:00
LukeGus 7192a0fc82 fix: build failure 2026-05-20 15:04:37 -05:00
LukeGus d04ecc74ed fix: build failure 2026-05-20 15:01:09 -05:00
LukeGus ebeb9ede17 fix: build failure 2026-05-20 14:58:35 -05:00
LukeGus bc713aca7d feat: terminal theme improvemnts, file manager improvements, host manager improvements (ready for initial user testing?) 2026-05-20 14:55:41 -05:00
LukeGus 9f0aaa16a5 fix: no db entry for connection protocols 2026-05-20 14:02:26 -05:00
LukeGus dca2222689 Merge remote-tracking branch 'origin/dev-2.3.0' into dev-2.3.0 2026-05-20 13:58:28 -05:00
LukeGus ec69c338da feat: host manager improvements and added over electron files 2026-05-20 13:58:15 -05:00
TomyJan 3375733789 fix: resolve backend build errors, preserve sudo file read buffers, and format code (#798)
* fix: resolve backend TypeScript build errors and preserve sudo file read buffers

* style: format code

* fix: ssh2 ESM import failure

---------

Co-authored-by: LukeGus <bugattiguy527@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-20 13:18:42 -05:00
ZacharyZcR 21f24a8386 feat: add OIDC auto-provision setting independent of registration toggle (#795)
Allows OIDC-authenticated users to be auto-provisioned even when
"Allow new account registration" is disabled. Adds an admin UI toggle
and corresponding API endpoints (GET/PATCH /users/oidc-auto-provision).
Falls back to OIDC_ALLOW_REGISTRATION env var if the setting is unset.
2026-05-20 13:16:05 -05:00
ZacharyZcR ecb7f4f2c5 fix: add 3-way horizontal split variant and fix file manager overflow in split view (#796)
Adds a "3-Way (H)" layout option (2 top + 1 bottom) alongside the
existing "3-Way (V)" (1 left + 2 right).

Fixes file manager content overflowing its split pane by adding
min-h-0 to nested flex containers that were missing it.
2026-05-20 13:15:59 -05:00
TomyJan 5971bcfe88 feat(auth): add silent OIDC sign-in (#799) 2026-05-20 13:15:08 -05:00
LukeGus d3fa8c4420 feat: host manager bug fixes, i18n improvements, general tab fixes 2026-05-20 13:13:56 -05:00
ZacharyZcR a966cc930b fix: load Caskaydia Cove Nerd Font via @font-face declarations (#794)
The default terminal font was configured but never loaded via CSS,
causing browsers to fall back to generic monospace. This broke column
alignment and TUI rendering (ncurses menus, box-drawing chars).
2026-05-18 14:51:56 +08:00
ZacharyZcR 63c8d601b5 feat: add confirmation prompt before closing active session tabs (#793)
Shows a toast confirmation when closing terminal, RDP, VNC or telnet
tabs to prevent accidental session loss from misclicks.
2026-05-18 05:53:15 +08:00
ZacharyZcR 3d42642e94 fix: flush in-memory database to disk on graceful shutdown (#792)
SIGTERM/SIGINT handlers previously called process.exit(0) immediately
without persisting the in-memory SQLite database. This caused session
data loss on container restart, forcing users to re-authenticate.
2026-05-18 05:30:13 +08:00
ZacharyZcR 65d67e6f79 fix: host connections failing with "Authentication failed" (#791)
Co-authored-by: LukeGus <bugattiguy527@gmail.com>
2026-05-18 05:17:10 +08:00
ZacharyZcR a354a45b1c Merge pull request #765 from ZacharyZcR/feat/ctrl-alt-delete-button
feat: add ctrl+alt+delete button for rdp/vnc sessions
2026-05-18 04:47:35 +08:00
ZacharyZcR c488f92e00 Merge pull request #767 from ZacharyZcR/feat/clone-host
feat: implement clone host functionality
2026-05-18 04:47:30 +08:00
ZacharyZcR 125ba1e82c Merge pull request #770 from ZacharyZcR/fix/default-session-persistence
fix: enable terminal session persistence by default
2026-05-18 04:47:26 +08:00