Open-source SSH tunneling server for HTTP(S), WS(S), and TCP tunnels to localhost with no custom client required.
sish is an open-source SSH tunneling server that creates HTTP(S), WS(S), and TCP tunnels to localhost using only standard SSH commands. It solves the problem of securely exposing local development servers or internal services to the internet without requiring custom clients or complex configuration.
Developers, DevOps engineers, and teams who need to share local web apps, expose TCP services, or create private network tunnels while maintaining full control over their infrastructure.
Developers choose sish because it offers a self-hosted, production-ready alternative to commercial tunneling services, uses familiar SSH workflows, supports multiple forwarding types, and provides advanced features like SNI proxying and load balancing.
HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages existing SSH clients and commands, making it easy for users familiar with SSH to create tunnels without additional tools, as highlighted in the README's emphasis on 'no custom client required'.
Handles HTTP(S), WS(S), TCP, and SNI proxying, providing flexibility for various use cases from web apps to backend services, as evidenced by the feature list including HTTP(S)/WS(S) tunneling and SNI proxy support.
Offers Docker and binary releases for full control over infrastructure, ideal for security and compliance requirements, with the README providing detailed Docker setup instructions for production-grade hosting.
Includes load balancing, private TCP aliases, and a service console for monitoring, enhancing production readiness beyond basic tunneling, as noted in the forwarding examples and feature highlights.
Setting up sish requires managing SSL certificates, SSH keys, and domain configurations manually, which can be error-prone and time-consuming, as seen in the Docker run command with multiple volume mounts and flags.
As a self-hosted solution, users must handle server maintenance, updates, and scaling independently, adding to DevOps workload compared to managed services like ngrok that abstract this away.
Out-of-the-box, sish runs as a single instance; achieving redundancy and failover requires additional setup and clustering efforts not detailed in the core documentation, posing a risk for critical deployments.
sish is an open-source alternative to the following products: