DevOps

Multi-Server Session Management
for DevOps Teams

Manage your entire fleet from a single daemon. Per-server connection pooling, parallel operations, and mandatory audit trails.

The problem

DevOps engineers manage fleets of servers. Multiple environments, multiple services, multiple teams. OpenSSH ControlMaster leaves stale sockets after crashes. Paramiko leaks connections under high concurrency. There is no centralized session management that pools connections, prevents conflicts, and traces every operation to the agent that initiated it.

Multi-server pain points

  • - Stale ControlMaster sockets break automation silently
  • - No connection pooling — each tool call reconnects from scratch
  • - Two agents hitting the same server cause race conditions
  • - No centralized audit trail across servers
  • - Connection lifecycle management is manual and fragile

How sshDCommander solves it

The daemon manages a SessionPool — one SSH connection per server, up to 10+ simultaneous sessions. Each server has its own lock. Two agents can work on different servers in parallel. Same-server access is serialized with SESSION_BUSY. Every operation is traced via mandatory --client-id.

Session Pool

One SSH connection per server, managed by the daemon. Auto-connects on first request using server profiles. Up to 10+ concurrent servers.

Per-Server Locking

Each server has its own lock. Two agents can work on different servers in parallel. Same-server access serialized with SESSION_BUSY.

Auto-Reconnect

Dead connection detection via keepalive packets (30s interval). Automatic reconnection with exponential backoff and jitter.

Traceable Operations

Mandatory --client-id on every request. Full audit trail: which agent ran which command on which server, and when.

In practice

multi-server operations
# Define your fleet
$ sshdctl server add --name web1 -H 10.0.1.5 -u deploy --store
$ sshdctl server add --name web2 -H 10.0.1.6 -u deploy --store
$ sshdctl server add --name db -H 10.0.2.10 -u dbadmin --store
# Work across servers — connections are pooled
$ sshdcmd --client-id ops --server web1 "systemctl status nginx" --connect
Connected to 10.0.1.5:22
$ sshdcmd --client-id ops --server web2 "systemctl status nginx" --connect
Connected to 10.0.1.6:22
$ sshdcmd --client-id ops --server db "pg_isready" --connect
Connected to 10.0.2.10:22
/var/run/postgresql:5432 - accepting connections
# All three connections remain active for subsequent commands

Manage your fleet from a single daemon

5-day free trial. No credit card required.

Start Free Trial