MCPSERV.CLUB
ShellHub

ShellHub

Self-Hosted

Centralized SSH gateway for edge and cloud devices

Active(100)
1.8kstars
0views
Updated 1 day ago
ShellHub screenshot

Overview

Discover what makes ShellHub powerful

ShellHub is a self‑hosted, centralized SSH gateway designed to simplify remote access for edge and cloud environments. From a developer’s perspective, it functions as an *SSH relay* that abstracts the complexities of network routing, key management, and device discovery. Clients (OpenSSH, PuTTY, web terminals) connect to the ShellHub API or WebSocket endpoint; the gateway then establishes an SSH session with the target device using the stored agent credentials. This model eliminates the need for jump hosts, VPNs, or static IP addresses, enabling secure, audited access across thousands of heterogeneous devices.

Device Management

SSH Session API

Audit & Compliance

Key & Policy Management

Overview

ShellHub is a self‑hosted, centralized SSH gateway designed to simplify remote access for edge and cloud environments. From a developer’s perspective, it functions as an SSH relay that abstracts the complexities of network routing, key management, and device discovery. Clients (OpenSSH, PuTTY, web terminals) connect to the ShellHub API or WebSocket endpoint; the gateway then establishes an SSH session with the target device using the stored agent credentials. This model eliminates the need for jump hosts, VPNs, or static IP addresses, enabling secure, audited access across thousands of heterogeneous devices.

Technical Stack & Architecture

ShellHub is built on a micro‑service architecture written primarily in Go for the core agent and gateway services, leveraging Go’s concurrency primitives to handle high‑volume concurrent SSH sessions. The front‑end is a SPA written in React with TypeScript, communicating over REST and GraphQL APIs secured by OAuth2/JWT. Data persistence is handled by PostgreSQL for relational metadata (device inventory, users, audit logs) and Redis for session caching and rate‑limiting. The agent component is a lightweight daemon that registers itself with the gateway, pushes its public key to the central store, and listens for inbound SSH requests. All communication is TLS‑encrypted, with optional mutual TLS support for added security.

Core Capabilities & APIs

Developers can interact with ShellHub through a rich set of REST endpoints and WebSocket streams:

  • Device Management – CRUD operations on device records, bulk imports via CSV/JSON, and automated discovery through SNMP or custom scripts.
  • SSH Session API – Initiate, monitor, and terminate SSH sessions; retrieve session logs and recordings.
  • Audit & Compliance – Export audit trails in JSON or CSV; integrate with SIEM tools via webhooks.
  • Key & Policy Management – Upload SSH public keys, define per‑device or per‑group firewall rules, and enforce two‑factor authentication.
  • Webhooks & Events – Subscribe to device status changes, session starts/ends, and policy violations for real‑time integrations.

The agent exposes a REST endpoint locally (default 8080) for health checks and configuration, while the gateway exposes a GraphQL endpoint for advanced querying of device metadata.

Deployment & Infrastructure

ShellHub is container‑first, with official Docker images for the gateway, agent, and database services. Helm charts are available for Kubernetes deployments, enabling horizontal scaling of the gateway pods to support thousands of concurrent sessions. For bare‑metal or VM deployments, a single binary can be run with minimal dependencies (Go runtime). The architecture supports auto‑scaling via Kubernetes HPA or custom scripts that spin up additional gateway replicas based on session load. Persistent storage is managed through StatefulSets for PostgreSQL, ensuring data durability across node failures.

Integration & Extensibility

The platform is designed for extensibility:

  • Plugin System – Custom Go plugins can be loaded into the gateway to add new authentication backends or protocol handlers.
  • Webhooks – Trigger external services (Slack, PagerDuty, custom APIs) on device events.
  • OAuth/OIDC Providers – Integrate with corporate identity providers for single‑sign‑on.
  • CLI SDKs – A Go client library is available to script device provisioning and session automation.

These hooks make ShellHub a natural fit for DevOps pipelines, IaC workflows (Terraform provider), and CI/CD systems that need programmatic SSH access.

Developer Experience & Community

The project offers comprehensive documentation, including API references, deployment guides, and a developer‑contributing section. The codebase follows Go best practices, with unit tests covering 80%+ of core logic and a CI pipeline that runs linting, security scans, and end‑to‑end tests. Community support is active via Gitter, GitHub Discussions, and a growing contributor base of 23 members. Licensing is permissive (MIT), allowing unrestricted commercial use and modification.

Use Cases

  • Edge Device Management – IoT gateways, industrial controllers, and remote sensors can be centrally managed without VPNs.
  • Hybrid Cloud Operations – Seamless SSH access to on‑prem servers, cloud VMs, and containerized workloads from a single web console.
  • Compliance Auditing – Session recording and audit logs enable SOC 2, PCI‑DSS, or HIPAA compliance.
  • DevSecOps Automation – Terraform providers and CI pipelines can provision devices, deploy keys, and run ad‑hoc SSH commands.

Advantages Over Alternatives

ShellHub’s combination of native SSH support, built‑in audit logging, and agentless device discovery gives developers a lightweight yet powerful alternative to commercial bastion hosts. Its open‑source nature removes licensing costs, while the Go micro‑service stack delivers low latency and high concurrency. The extensive API surface and plugin architecture empower teams to integrate ShellHub into existing toolchains, making it an attractive choice for enterprises that require secure, scalable remote access without vendor lock‑in.

Open SourceReady to get started?

Join the community and start self-hosting ShellHub today