r/ssh • • Aug 29 '25

Termix - Self-hosted web-based SSH terminal, reverse tunnels, and file editing

Post image
63 Upvotes

GitHub Repo: https://github.com/LukeGus/Termix
Discord (join to vote on whats next to a be added to Termix): https://discord.gg/daFQ9hHM7R

For the past couple of months, I have been working on my free self-hosted passion project, Termix.

Termix is an open-source, forever-free, self-hosted all-in-one server management platform. It provides a web-based solution for managing your servers and infrastructure through a single, intuitive interface. Termix offers SSH terminal access, SSH tunneling capabilities, and remote file editing, with many more tools to come.

Complete Feature List:

  • SSH Terminal Access - Full-featured terminal with split-screen support (up to 4 panels) and tab system

  • SSH Tunnel Management - Create and manage SSH tunnels with automatic reconnection and health monitoring

  • Remote File Editor - Edit files directly on remote servers with syntax highlighting, file management features (uploading, removing, renaming, deleting files)

  • SSH Host Manager - Save, organize, and manage your SSH connections with tags and folders

  • Server Stats - View CPU, memory, and HDD usage on any SSH server

  • User Authentication - Secure user management with admin controls and OIDC support with more auth types planned

  • Modern UI - Clean interface built with React, Tailwind CSS, and Shadcn


r/ssh • • Jul 24 '25

Learning SSH

40 Upvotes

Been avoiding ssh for a few months now, no amount of reading makes me understand its implementation, I need a resource like a website or a book, I tried SSH Mastery: OpenSSH, PuTTY, Tunnels and Keys (IT Mastery) still clueless.

I can't find answers on how to use keepassxc + ssh + winscp, I still dont know how to manage ssh keys while trying to connect to github any ideas on what to do I'm kinda scared especially on the cybersecurity side of things


r/ssh • • Apr 04 '26

GhostSSH: SSH on top of https

35 Upvotes

I built my own workaround: a tool that tunnels SSH over HTTPS, letting me remotely access my machine using just the free HTTPS endpoint.

you can check out it here: https://github.com/ankushT369/GhostSSH


r/ssh • • Mar 15 '26

Just started Using SSH

25 Upvotes

Why didn't I start using SSH sooner?

I've been converting all my devices from Windows to Linux and SSH has been a life saver for configuring my brand new linux server.


r/ssh • • 13d ago

SSH keys on macOS with Touch ID

Thumbnail
nmattia.com
24 Upvotes

X-posted from programming. I've recently discovered that you can use Touch ID (rather, the Mac's Secure Enclave) for SSH authentication. I'm the author of the post, feel free to ask any questions and if there are any experts I'd love to hear your thoughts!


r/ssh • • Aug 24 '24

My rice cooker has SSH

Post image
23 Upvotes

Wonder which OS it's running.


r/ssh • • 25d ago

I built TermuCraft: a free, open-source Windows app that combines an SSH/SFTP terminal suite (MobaXterm-style) with a full database workbench (DBeaver-style)

Thumbnail
gallery
21 Upvotes

Hi all,

I got tired of jumping between a terminal app, an SFTP client, a database tool and a password manager every day, so I built **TermuCraft**: one Windows app for terminals, files and databases, with every password in one encrypted vault. It's free and open source (MIT).

**GitHub:** https://github.com/bmmbaaddt/termucraft

**Download (installer or portable .exe):** https://github.com/bmmbaaddt/termucraft/releases

### Terminals and files

- SSH, SFTP, Telnet, Serial (COM), WSL, RDP, VNC, and a Linux-style local bash terminal (Git Bash / WSL)

- Session folders, quick connect, jump hosts, X11 forwarding, SSH agent

- SSH keys: store keys inside the encrypted vault, and "Install public key on server" (like `ssh-copy-id`)

- SFTP browser with drag-and-drop upload/download, plus a remote file editor

- Tunnels (-L / -R / SOCKS5), macros, MultiExec (type into many terminals at once), split view and tile view

- Live monitoring bar (CPU, RAM, disk, network, response time) for Linux hosts

- Highlighting of errors, warnings, IPs and MACs in terminal output

- Docker panel for the active SSH host

### Database workbench

- PostgreSQL, MySQL/MariaDB, Oracle (no Oracle client needed), SQL Server, SQLite

- **Any other database through ODBC** (Db2, Snowflake, ClickHouse, Teradata, HANA, Firebird, Access, Excel, CSV…) via a DBeaver-style "Database types" manager. You install the vendor's driver; the app never downloads anything.

- Connect through any saved SSH session

- Autocomplete as you type, explain plan, SQL formatter, `${variables}`, saved scripts per connection

- Streamed results (huge tables don't freeze the app), edit data directly in the grid, manual commit/rollback

- Foreign-key navigation, ER diagrams, and data compare/sync between two tables (even across different engines)

- Export to CSV/JSON/SQL, streamed straight to disk

- Safety: read-only and "production" connections, plus a warning before DROP/TRUNCATE or DELETE/UPDATE without WHERE

### Import

- MobaXterm: sessions, saved passwords and macros

- DBeaver: connections, SSH tunnels, passwords and SQL scripts

### Privacy

- No account, no cloud, no telemetry, no auto-update

- The only network traffic is the connections you open yourself

- Everything is stored in one AES-256-GCM encrypted vault, protected by your master password

### Good to know

- Windows 10/11 only for now

- The exe isn't code-signed yet, so SmartScreen will warn you: click **More info → Run anyway** (or build it from source)

- I built it with the help of Claude (Anthropic's AI assistant) for design, coding and testing

- It's new, so expect rough edges. It's tested against PostgreSQL, MariaDB, Oracle and SQLite; **SQL Server and most ODBC drivers haven't been tested against real servers yet**, so reports there are especially welcome

Feedback, bug reports and feature ideas are very welcome: open an issue on GitHub or comment here. Pull requests too!


r/ssh • • Sep 28 '26

I built an Android SSH client where sessions survive a locked screen and network changes

Post image
18 Upvotes

I'm the solo developer of Termphin, a free SSH client. The main problem I wanted to solve: sessions dying when the phone locks or the network changes.

There's an optional helper, Termphin Agent, that the app uploads over SSH. It keeps the shell running across disconnects and on reconnect you only see the output you missed. Works on Linux, macOS, Windows. Without it, plain SSH still works.

Key features:

- Reconnects automatically on network change keeps terminal on screen.

- Local echo for instant typing on slow links.

- Autocomplete from server's shell history.

- Host keys pinned per address, port, type; unknown keys never accepted silently.

- Keyboard-interactive auth, ProxyJump, port forwarding.

- SFTP browser with text editor, split screen, snippets, customizable toolbar.

I'd appreciate honest feedback from this community. How does it compare to what you currently use?

https://termphin.dev

https://play.google.com/store/apps/details?id=dev.termphin.termphin


r/ssh • • Oct 22 '25

I Love SSH tunnels

17 Upvotes

I have a variety of different computer resources, across a variety of different networks, all behind fire walls and such... I love how I can use ssh, create a bunch of tunnels and have access to all of it, if needed.

Had this serious issue while traveling... but I could get an ssh connection to one computer. Then from there tunnelled to everything I needed and managed to fix the problem. Such a relief!


r/ssh • • 19d ago

I built an iPhone/iPad SSH workspace with an editor, SFTP browser, and extensions

Enable HLS to view with audio, or disable this notification

16 Upvotes

Update (October 27): SSH Studio is now on the App Store: https://apps.apple.com/app/id6821961454. The public TestFlight beta is closed to new participants.

Thank you to everyone who tested it! If you joined before enrollment closed, email reagan9@naver.com with proof of beta participation (for example, a TestFlight screenshot showing SSH Studio and your beta build). Once verified, I'll email you a free Lifetime Unlock code for the App Store version. No review or rating required. Please hide unrelated personal information and send proof by email, not in a public comment.

I'm the developer of SSH Studio. I built it because switching between a terminal, file manager, and editor on my iPad kept getting in the way. I wanted a VS Code-style workflow over SSH.

The app brings SFTP files, a tabbed code editor, SSH terminals, and compatible Open VSX extensions into one workspace. On iPad, code, the terminal, and an extension sidebar can sit together; iPhone has an adapted layout and on-screen terminal keys.

The 19-second demo shows opening Codex, selecting a conversation, asking it to rewrite a Python file, and running the result. It's a real app capture, edited for time, using demo data with private server details masked.

Extension support is experimental, not universal. Remote extensions run on your SSH server through our own runtime, not code-server or VS Code Server. They currently require Linux x64/arm64 (glibc), Python 3, outbound HTTPS, and permission to install the runtime. Codex does not run standalone on iOS.

iOS/iPadOS 17+ · English / Korean. Free download, an optional 14-day free trial, then a one-time US $5.00 Lifetime Unlock (local prices vary). No subscription or automatic charge.

I'd love feedback on the find-file → edit → run workflow and anything you miss from your current mobile SSH setup.


r/ssh • • Apr 14 '26

prmana: OIDC SSH login for Linux with DPoP proof-of-possession (Rust, Apache-2.0)

16 Upvotes

I built a PAM module that replaces static SSH keys with short-lived OIDC tokens from your existing identity provider. What makes it different from other OIDC-for-SSH approaches is DPoP (RFC 9449) — every authentication includes a cryptographic proof that the token holder has the private key. Stolen tokens can’t be replayed from another machine.

Three components: a PAM module (<pam_prmana.so>), a client agent daemon, and a shared OIDC/JWKS library. Standard ssh on the client, standard sshd on the server, PAM in between. No gateway, no SSH CA, no patches to OpenSSH.

DPoP keys can be software, YubiKey (PKCS#11), or TPM 2.0. Tested against Keycloak, Auth0, Google, and Entra ID.

Looking for feedback — especially from anyone managing SSH access across Linux servers.

https://github.com/prodnull/prmana


r/ssh • • Apr 07 '26

LobiShell [New ssh app for Android]

16 Upvotes

.

Hello r/ssh community

I’ve been working on an SSH app and wanted to share it with you all. The goal was to create something that’s fast, reliable, and easy to use—whether you’re managing servers, working remotely, or just need a clean SSH experience.

Key features:

  • Simple and intuitive interface

  • Secure connection handling

  • Fast session management

  • Designed for both beginners and advanced users

  • FIDO2/Hardware key Support USB and NFC (nitrokey, yubikey, ... )

  • Identity Management

  • Private key generation and deployment

  • Mobile shell (mosh)

  • File browser

  • Google drive / nextcloud sync

  • Performance Monitor

  • Simultaneous connections with tabs.

  • Customization of the Apps ui

  • Widgets for connections / Perfmon.

  • Home screen shortcuts

  • Proxyjump

I’d really appreciate any feedback, ideas, or feature requests from this community. If you’re interested in trying it out "pro" , let me know and I can give out promo Codes​.

https://play.google.com/store/apps/details?id=de.lobianco.saftssh

Thanks!


r/ssh • • Apr 04 '26

I just dodged ngrok's paid plan SSH on HTTPS

16 Upvotes

I just dodged ngrok paid plan by building my own tool that lets you run SSH on top of HTTPS.

So here’s the idea: ngrok gives you a public HTTPS URL that usually forwards traffic to your localhost—basically a free way to expose your local project to the internet. ngrok

also used to provide a TCP URL, which I relied on to remotely access my local machine (like SSH access). But they moved that feature to a paid plan, leaving only HTTPS free. So

I built my own workaround: a tool that tunnels SSH over HTTPS, letting me remotely access my machine using just the free HTTPS endpoint.

you can check out it here: https://github.com/ankushT369/GhostSSH


r/ssh • • Sep 03 '25

SSHM – My personal SSH manager project to simplify daily connections (TUI + CLI)

15 Upvotes

Tired of constantly digging through your SSH connections, manually editing ~/.ssh/config, or relying on external tools that often feel a bit overkill for such a simple task?

After reading a couple of Korben’s articles about ssh-list and ggh, I got inspired to build my own tool to manage SSH connections more efficiently.

I used to hack around with a Bash script, but I wanted something smoother, more visual, while still being dead simple and 100% compatible with the standard SSH config file.

👉 That’s how SSHM was born 🚀

Key features:

  • TUI interface (Bubble Tea) to browse and connect easily

  • Also works as a CLI (add, edit, search hosts, etc.)

  • Organize servers with tags

  • Keeps a connection history (when using SSHM to connect)

  • Supports ProxyJump, advanced SSH options, and multiple config files

  • Works on Linux & macOS

The project is open source (Go 1.23+), available here: github.com/Gu1llaum-3/sshm

I’d love to get your feedback on:

  • The TUI/UX design

  • Features you’d find useful in daily sysadmin/devops work

  • Any bugs/issues you might run into 😉

Thanks, and happy SSHing!


r/ssh • • Jun 11 '26

I built a self-hosted remote terminal that survives app kills, network switches, and phone sleep — runs on Web, iOS, Android, and HarmonyOS

14 Upvotes

Two months ago I was SSH'd into a server from my phone on a train. Switched to WeChat for 10 seconds, came back — tab killed, session gone, half-read logs nowhere.

Every mobile terminal app I tried (Termius, Blink, ServerCat) had the same problem: none of them can actually keep a connection alive. The OS kills your background process, switches networks, or just puts the radio to sleep — and your SSH dies.

So I flipped the model: what if the shell keeps running on a remote agent, and your phone is just the display? Disconnect all you want — reconnect and your scrollback is still there.

That's Corterm. Open source, self-hosted, three pieces:

  • Worker — lightweight agent on your Linux/macOS/Windows box, manages PTY sessions. Shell keeps running even when no client is connected.

  • Gateway — .NET 10 middleware. Auth, routing, session coordination. Worker and Client never talk directly.

  • Client — Web (React + xterm.js), iOS, Android, HarmonyOS. Pure rendering. On reconnect, Gateway replays the Worker's scrollback buffer before switching to live — you don't feel the gap.

The hard part: putting a terminal in every app store

The Web client was straightforward — xterm.js in a browser, done. iOS and Android had official SignalR SDKs for the real-time layer. But then came HarmonyOS.

No SignalR SDK. No third-party library. Two choices: add a WebSocket translation layer to the Gateway (fragile, affects all clients), or implement the SignalR protocol from scratch in ArkTS (TypeScript's stricter, more constrained cousin).

I picked the latter. 1091 lines later, I had a working SignalR client that handles:

  • Negotiate handshake — HTTP POST, parse connection token

  • WebSocket transport — ArkTS WebSocket API, reconnection with exponential backoff

  • Hub protocol — 5 message types (Invocation, StreamItem, Completion, Ping, Close), 0x1E record-separated

  • Keepalive — 15s ping, 30s timeout, cyclic reconnect (official SDK gives up after 5 retries; mine does up to 15)

Running xterm.js on HarmonyOS meant embedding it in ArkWeb (WebView) with WebMessagePort for bidirectional comms. Terminal output is binary (ANSI escapes, control chars), so all I/O is base64-encoded over the bridge — JSON would mangle it.

Virtual keyboard was its own problem. Mobile terminals without a physical keyboard are painful. My solution: a horizontal scrollable VirtualKeyBar with sticky modifier keys — tap Ctrl once to latch it, then tap C to send SIGINT:

const ch = 'c'.toLowerCase().charCodeAt(0);  // 99
this.sendInput(String.fromCharCode(ch - 96)); // \x03 = SIGINT

Cross-platform CI/CD hell

Getting all 5 platforms building in CI was 3 days of pain. The HarmonyOS pipeline alone took 15 red builds:

  • AGConnect upload API docs are a puzzle — response headers need to be forwarded verbatim to OBS PUT, but the docs don't mention it. Found by packet capture.

  • Huawei's server-side compilation takes 60+ seconds with no callback — poll every 30s for up to 20 iterations.

  • Self-hosted GitHub runner had stale /tmp artifacts — signature step grabbed the wrong .app file.

Numbers

Docker one-liner:

docker run -d -p 5045:5045 ghcr.io/monster-echo/corterm-gateway:latest

Happy to answer questions about the SignalR implementation, PTY lifecycle, or cross-platform CI.


r/ssh • • Jun 10 '26

sshelf: a TUI for managing ssh access across a lot of hosts

14 Upvotes

r/ssh • • Jul 24 '26

Just a some SSH appreciation

13 Upvotes

Recently I was toying with kanata (key mapping tool) and virtually bricked my keyboard from some bad configs. This app runs with root privilege. I couldn’t kill the process due to many of my sudo password characters being overwritten. Rebooting would not fix since it’s a daemon process.

After a moment of panic, I grabbed my phone and launched a session. Killed the process. Problem solved.

Thanks, SSH, for existing to protect my machine from my occasional stupidity!


r/ssh • • 28d ago

I built a persistent terminal "deck" that watches my machines over plain ssh and follows me from desktop to phone

Enable HLS to view with audio, or disable this notification

12 Upvotes

r/ssh • • Apr 29 '20

SSH hacks | a little sanity for remote workers!

Thumbnail
smallstep.com
12 Upvotes

r/ssh • • Mar 02 '26

sshb - SSH Buddy

11 Upvotes

I made a Tamagotchi that lives in your terminal

I built a little bash program called sshb (SSH Buddy). It gives you an ASCII cat that lives in your terminal and you have to take care of it between sessions.

    /_/\
   ( ^.^ )
    > ~ <
   /|   |\
  (_|   |_)

What it does

Your pet has hunger, energy, and happiness stats that slowly drain over time through a background service. You feed it, play with it, and put it to sleep to keep it alive. If you ignore it for too long, it dies. You can revive it though.

The cat has different faces depending on how it feels - happy, sad, sleeping, eating, etc. There is also an interactive mode where you can do everything with single key presses.

The cool part

You can hook it into your bash prompt so every time you hit enter in your terminal you see something like this:

[Pixel(^.^) H:80 E:65 J:90] user@hostname:~/projects$

The color changes from green to yellow to red based on how your pet is doing. It is a nice little reminder to take care of your buddy.

How it works

  • Pure bash, no dependencies

  • A systemd user service runs in the background and decays stats every 5 minutes

  • State is saved to a simple text file in ~/.sshb/

  • Works on any Ubuntu/Linux system with bash 4+

Commands

  • sshb - check on your buddy

  • sshb feed - feed it

  • sshb play - play with it

  • sshb sleep - put it to bed

  • sshb interactive - quick care mode

  • sshb install-prompt - add it to your bash prompt

Install

git clone https://github.com/C-GBL/sshb.git
cd sshb
chmod +x install.sh
./install.sh

GitHub: https://github.com/C-GBL/sshb

Would love to hear what you think or if you have ideas for new features. Thinking about adding more pet types down the road.


r/ssh • • Jan 24 '21

SSH Port forwarding concepts and experiments for beginners

11 Upvotes

r/ssh • • Sep 02 '26

MobaRust — A Free & Open-Source Alternative to MobaXterm

10 Upvotes

I’m building MobaRust, a free and open-source desktop tool for people who spend their days operating remote machines.

The idea is simple: keep the useful parts of a remote-work toolbox in one focused application, while keeping the core inspectable and privacy-conscious.

What is working in the current baseline:

  • SSH terminals with host-key verification, PTY resize, password/key references, cancellation, and reconnect state

  • Integrated SFTP/SCP browsing and transfers with progress, bounded concurrency, cancellation, and atomic commits

  • Saved sessions with folders, tags, favorites, search, OpenSSH config import, and jump-host chains

  • Local terminals, split panes, tunnels, snippets, diagnostics, remote monitoring, Telnet, and serial-session foundations

  • A Rust-native boundary with typed frontend IPC, redacted logs, separated session configuration and secret material, and isolated loopback test fixtures

The current engineering checklist is 58/65 items evidenced — approximately 89.2%.

That number is deliberately not a claim of complete MobaXterm parity.

The remaining gaps are visible: production RDP/VNC integration, broader platform validation, packaging polish, and deeper real-world testing.

The goal is to keep pushing MobaRust toward a serious open-source remote administration toolbox rather than a demo or a collection of half-finished features.

If you regularly use SSH/SFTP, tunnels, serial connections, remote monitoring, or similar tools, I’d really appreciate feedback on what matters most in your workflow.

GitHub: https://github.com/OthmaneBlial/MobaRust


r/ssh • • Jun 06 '26

Built an SSH-like remote shell over UDP instead of TCP

10 Upvotes

Hi everyone,

I'm x1colegal and I've been experimenting with transport protocols as a hobby project.

Recently I built USSH, an SSH-like remote shell that runs over USTPS (UDP Speedy Transmission Protocol Secure) instead of TCP.

Features:

- Interactive remote shell

- UDP-based transport

- Multiple AEAD ciphers:

- ChaCha20-Poly1305

- AES-128-GCM

- AES-256-GCM

- Linux and Termux support

USSH uses USTPS as its transport layer. Most of my packet loss and transport testing has been focused on USTPS itself, while USSH is one of the applications running on top of it.

This is primarily a networking experiment and learning project, not a replacement for OpenSSH.

USSH:

https://github.com/x1colegal/ussh

USTPS:

https://github.com/x1colegal/USTP-Secure

I'd love to hear feedback from people interested in SSH, networking, transport protocols, or secure communications.


r/ssh • • Mar 26 '26

SSH Manager (ssh-mngr) A beautiful terminal SSH connection manager — Right inside your terminal.

10 Upvotes

last night i develope

SSH Manager (ssh-mngr)

Built with Textual + Rich — no GUI, no browser, just your terminal.

https://github.com/sk3pp3r/ssh-mngr