Description
ShellHub répond à un problème précis : comment administrer en SSH des milliers de devices éparpillés (IoT, kiosques, Raspberry Pi, edge gateways, conteneurs) sans ouvrir de port ni maintenir un VPN par site ? Le serveur ShellHub joue le rôle de reverse SSH : les devices s'y connectent en sortie, et l'opérateur se connecte ensuite au serveur pour atteindre n'importe quel device de sa flotte.
C'est le même principe que les Cisco et leurs "SSH gateways", mais en self-hosted moderne, avec UI web, multi-tenant, namespaces par projet, et une couche d'authentification centralisée. L'agent sur le device est un binaire unique (shellhub-cli) ou un container Docker.
Cas d'usage typiques : gérer un parc de Raspberry Pi déployés sur des sites clients, administrer un cluster de kiosques, superviser des edge devices industriels, ou remplacer une solution propriétaire (CloudMQTT, Balena).
Installation
Via Docker Compose (Community)
# docker-compose.yml
services:
shellhub:
image: ghcr.io/shellhub-io/shellhub/v2/community:latest
container_name: shellhub
restart: unless-stopped
privileged: true
ports:
- "22:22" # SSH
- "80:80" # Web UI
- "443:443" # HTTPS
volumes:
- ./data:/var/lib/shellhub
Sur l'edge device
# Enregistrer le device curl -sSf https://shellhub.example.com/install.sh | \ SERVER_ADDRESS=https://shellhub.example.com \ TENANT_ID=your-tenant sh
Configuration
- Namespaces : isoler les flottes par client/projet.
- Authentification : locale, OIDC, LDAP, SAML.
- Firewall intégré : règles par namespace.
- Sessions SSH partagées entre plusieurs opérateurs.
- MFA TOTP, device fingerprinting.
- API REST pour provisionner automatiquement des devices.
Alternatives
- Balena Cloud — équivalent commercial, orienté fleet management complet.
- Tailscale / Headscale — VPN mesh SSH-able, sans UI de gestion de flotte.
- MeshCentral — couvre le use case avec une approche plus "remote desktop".
- remote.it / ngrok — reverse tunnels commerciaux avec binaire par device.
Sécurité
- Pas de port exposé côté devices : connexion sortante uniquement.
- MFA native (TOTP) et SSO via OIDC/SAML.
- Audit log complet de qui a ouvert quel device à quel moment.
- Chiffrement E2E SSH standard, certificats par device.
Ressources
- Site officiel : https://www.shellhub.com
- Documentation : https://docs.shellhub.io
- Tutoriel Community : https://docs.shellhub.io/getting-started
