Features · Security · SSH Gatekeeper
Enterprise Just-in-time SSH access

Persistent SSH keys are the
quiet supply-chain risk.

SSH Gatekeeper replaces them with short-lived, CA-signed certificates issued on demand — optionally behind an approval gate, always with the full audit trail your compliance reviewer is looking for.

Get early access See the flow →
STEP 01 · ENGINEER

Request access

Engineer asks for a short-lived cert via the CLI or the web UI. Reason can be required.

$ hostatlas ssh keywest --reason "p1 disk"
STEP 02 · GATE

Self-serve or approval

Per-server policy. Self-service mode hands out the cert immediately. Approval mode pages the right person.

STEP 03 · CA

Cert is signed

Signed against your tenant's dedicated CA — embeds key-id, principals, source-IP, TTL.

ttl=15m · max=4h · scoped
STEP 04 · SHELL

SSH happens

Standard ssh — no proxy, no agent in the loop. The cert authenticates the user against the host's sshd.

STEP 05 · CLOCK

Cert expires

No revocation needed for happy paths. For incidents, KRL push reaches every host inside ~30 seconds.

— Per-server modes

Match the policy to the host.

Production gets the gate. Dev gets out of the way. Same audit trail either way.

Mode A Self-service

Engineer requests, cert issued immediately.

For development, staging, or environments where unblocking matters more than four-eyes. Still bounded by TTL, principals, source-IP and full audit log.

  • Instant cert < 1s
  • TTL 5–60 min
  • Reason can still be required
  • Every login logged + recordable
Mode B Approval-required

Approver gets paged. They click. Cert flows.

For prod, regulated systems, anywhere a human should look first. Approval lands as in-app notification, fan-out to your channels, and signed 1-click email link.

  • Approval link with 10-min expiry
  • Tenant + approver scoped, signed
  • Pending count badge in header
  • Break-glass override flagged loudly
— Controls

Per-server, per-policy.

The CA and the agent do the heavy lifting. The settings stay legible.

TTL

Cert lifetime

Default 15 minutes. Max ceiling per server. Engineers can request shorter; they cannot request longer.

15m default · max 4h
Principals

Allowed SSH users

Pin which Unix users a cert may authenticate as. Multi-user (root + deploy + app) supported.

root, deploy, www-data
Source-IP

Cert scoped to the requester's IP

Optional. When on, the cert refuses to authenticate from anywhere else — mitigates lift-and-shift.

scope · 198.51.100.42/32
Reason

Require a justification

Free-text, but mandatory. Surfaces in the audit log and in the approval email so the approver knows why.

“p1 disk · ticket INC-4218”
KRL

Revoke in 30 seconds

Revoke any active cert from the audit log. Hosts pull the Key Revocation List every 30 s — there's no waiting on a human to log in and clean up.

Break-glass

Detected, not blocked

If someone bypasses the Gatekeeper and logs in via a trusted_keys fallback, the agent flags it within seconds — auth.log + journalctl scanned, event raised.

— Session Recording Enterprise

When the cert isn't enough proof.

Optional per server. The cert carries a force-command that runs the recording wrapper before the shell — failure-tolerant, replayable, retained as long as you need.

Enterprise

Replay any session, line by line.

Interactive shells captured as asciinema casts. Non-interactive commands logged with full stdout / stderr. Both replayable in the browser; both pruneable by retention rules.

  • Per-server toggle, per-session opt-in possible
  • Default retention 90 days, max 10 years
  • Encrypted at rest
  • Fail-open: if the recorder breaks, SSH still works
  • Filter by server, user, date range
recording · jane@keywest · 2026-04-22 14:18
jane@keywest:~$ df -h /var
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 50G 47G 2.1G 96% /var
jane@keywest:~$ sudo journalctl --vacuum-size=500M
Vacuuming done, freed 3.4G of archived journals.
jane@keywest:~$ df -h /var
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 50G 44G 5.5G 88% /var
jane@keywest:~$ exit
▶ 00:38 01:42
— Compliance

Built for the auditor in the room.

The artefacts the framework asks for, generated automatically and exportable.

Access Trail

Every cert, every login, every revoke

Audit page with filters by user, server, status, date range. Stream-export to CSV for evidence packs.

Identity

Engineer keys, never private keys

Engineers register their public SSH key once — like adding a key on GitHub. The platform never sees the private half.

Tenant CA

Your own dedicated authority

Each tenant gets a dedicated ed25519 CA, encrypted at rest. Hosts trust only your CA — there is no shared signer.

Stop handing out keys you can't take back.

Short-lived, scoped, audited — without making engineers wait.

Talk to us All features