Repolode
nirui

nirui/sshwifty

A web-based SSH and Telnet client that lets you open terminal sessions to remote servers directly from a browser.

Open-source alternative to:Termius

Stars
3,128
Forks
397
Open issues
39
Last commit
26 days ago

What is it?

Sshwifty is a self-hosted SSH and Telnet client that runs in the browser, so you can reach remote shells without installing a local terminal application. It ships as a single Go backend with a JavaScript front end, and can be run as a prebuilt executable, a Docker container, or compiled from source.

The server can be configured through a JSON file or environment variables. Options include optional access password protection, TLS certificates, a SOCKS5 proxy for outbound connections, and timeouts for connections and heartbeats. Operators can define presets for common hosts so users don't have to fill in connection forms, and can restrict connections to presets only.

Sshwifty also supports server-side hooks that run external commands before a connection is made, with the ability to abort the connection on failure. Its wire protocol encrypts traffic between the browser and the server, and it requires an accurate clock and a secure context such as HTTPS for the browser's crypto features to work.

Key features

  • 01Connect to SSH and Telnet hosts from any modern web browser.
  • 02Run as a prebuilt binary, a Docker container, or built from source.
  • 03Configure via a JSON file or environment variables.
  • 04Define host presets so users can connect without manual entry.
  • 05Route outbound connections through a SOCKS5 proxy.
  • 06Run server-side hooks before connecting, with the option to abort on failure.

Use cases

  • Accessing servers from a computer or device where no SSH client is installed.
  • Providing browser-based terminal access to a team's pre-defined hosts.
  • Reaching internal network devices through a proxy or reverse proxy setup.
  • Offering Telnet access to legacy equipment from a web browser.

Quick start

  1. 1

    Run the Sshwifty Docker container

    docker run --detach --restart unless-stopped --publish 8182:8182 --name sshwifty niruix/sshwifty:latest
  2. 2

    Open the web interface in your browser at port 8182

Things to know

  • The README warns that prebuilt executables are generated automatically and the authors cannot guarantee they are tested.
  • Exposing it publicly requires a reverse proxy or TLS setup, and presets are sent to clients without protection.

In collections

Topics

FAQ

What is sshwifty?
A web-based SSH and Telnet client that lets you open terminal sessions to remote servers directly from a browser. Sshwifty is a self-hosted SSH and Telnet client that runs in the browser, so you can reach remote shells without installing a local terminal application. It ships as a single Go backend with a JavaScript front end, and can be run as a prebuilt executable, a Docker container, or compiled from source.
Is sshwifty free to use? What license does it have?
sshwifty is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is sshwifty still maintained?
Actively maintained. The last commit to sshwifty was on Oct 12, 2026.
What can I use sshwifty for?
Accessing servers from a computer or device where no SSH client is installed. Providing browser-based terminal access to a team's pre-defined hosts. Reaching internal network devices through a proxy or reverse proxy setup. Offering Telnet access to legacy equipment from a web browser.
How do I install sshwifty?
Run the Sshwifty Docker container: docker run --detach --restart unless-stopped --publish 8182:8182 --name sshwifty niruix/sshwifty:latest Open the web interface in your browser at port 8182
Where can I get sshwifty?
The source code and installation instructions are on GitHub: https://github.com/nirui/sshwifty

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects