Repository navigation
v0.7.7
Termlet v0.7.7 🛡️
Termlet v0.7.7 introduces enterprise-grade SSH Host Key Verification & MitM Protection, a dedicated SSH Security & Known Hosts Manager Tab (termlet://known-hosts), and modernized build infrastructure powered by TypeScript 7.0 & Bundler resolution.
✨ What's New & Highlights
🛡️ SSH Host Key Verification & MitM Attack Protection
- Dual-Layer Known Hosts Store:
- Automatically queries both the standard OpenSSH
~/.ssh/known_hostsfile and Termlet's dedicated application store (~/.config/termlet/known_hosts/%APPDATA%\termlet\known_hosts). - Automatically records newly trusted hosts with SHA256 cryptographic fingerprints, host keys, and port numbers without mutating standard system files unless configured.
- Automatically queries both the standard OpenSSH
- Trust On First Use (TOFU) Verification:
- When connecting to an unknown host for the first time, an interactive modal presents the host address, key type (e.g.,
ssh-ed25519,ecdsa-sha2-nistp256,rsa-sha2-512), and full SHA256 fingerprint. - Allows you to inspect and confirm the remote server's identity before any authentication tokens or credentials are transmitted over the network.
- When connecting to an unknown host for the first time, an interactive modal presents the host address, key type (e.g.,
- Strict Host Key Mismatch Detection:
- If a server's host key changes unexpectedly, Termlet flags a high-priority security warning to prevent Man-in-the-Middle (MitM) eavesdropping and spoofing attacks.
- Displays side-by-side comparison of the expected fingerprint versus the incoming fingerprint, requiring explicit confirmation before proceeding.
🗂️ Dedicated SSH Security & Known Hosts Manager (termlet://known-hosts)
- Full Workspace Tab Experience:
- Moved out of general settings into a dedicated, first-class workspace tab (
termlet://known-hosts) featuring a shield icon, tab state persistence, and responsive full-width layout. - Quick-access button added directly to the bottom status bar (
Known Hosts) and from the Security section in Settings.
- Moved out of general settings into a dedicated, first-class workspace tab (
- Search & Source Filtering:
- Real-time search across hostnames, key algorithms, and fingerprints.
- Filter chips to quickly narrow entries between All, Termlet Store, and System Store (
~/.ssh/known_hosts).
- Hashed Hostname Privacy Support:
- Cleanly handles OpenSSH HMAC-SHA1 hashed host entries (
|1|...), displaying an informative[Hashed Host]badge with privacy tooltips instead of raw cryptic hashes.
- Cleanly handles OpenSSH HMAC-SHA1 hashed host entries (
- Key Inspection & Revocation:
- 1-click SHA256 fingerprint copying with visual confirmation.
- Instant host revocation and bulk cache clearing directly from the UI.
⚡ Core Engine & Build Modernization
- TypeScript 7.0 Upgrade:
- Upgraded frontend build pipeline to
typescript@7.0.2.
- Upgraded frontend build pipeline to
- Modern Bundler Module Resolution:
- Migrated
tsconfig.jsonfrom legacynoderesolution to modern Vitebundlerresolution (moduleResolution: "bundler",allowImportingTsExtensions,isolatedModules: true). - Streamlined type checking and reduced development build latency.
- Migrated
📦 Artifacts Included
- Linux:
termlet-linux-amd64.deb(Debian, Ubuntu, Linux Mint, Pop!_OS)termlet-linux-amd64.rpm(Fedora, RHEL, CentOS, openSUSE)termlet-linux-amd64.tar.gz(Portable Linux archive)
- Windows:
termlet-windows-amd64.zip(Portable 64-bit Windows archive)
- macOS:
termlet-darwin-universal.dmg(Intel & Apple Silicon)
What's Changed
- chore(deps-dev): bump @vitejs/plugin-react from 5.2.0 to 6.1.2 in /frontend by @dependabot[bot] in #2
- chore(deps-dev): upgrade typescript to 7.0.2 and migrate tsconfig to bundler resolution by @Amanbig in #20
- feat(ssh): add SSH host key verification and visual known hosts manager by @Amanbig in #21
- chore(release): bump version to 0.7.7 and move known hosts to dedicated tab by @Amanbig in #23
- fix(ssh): prevent text wrapping and align filter tabs in known hosts view by @Amanbig in #24
Full Changelog: v0.7.6...v0.7.7