github shellhub-io/shellhub v0.28.0

5 hours ago

This release adds opt-out usage telemetry, confirms new Cloud accounts with an emailed code, and records port forwards as session events.


Usage telemetry, on by default

The server now sends an "instance started" event at boot, then a daily heartbeat at 05:30 UTC, to telemetry.shellhub.io (#7653). The heartbeat carries counts and fixed labels only: sessions by kind, namespaces by mode, devices by platform and agent version, access policies, API keys, and which login methods are on (#7666). Free-text values the agent reports, such as the OS ID, are bucketed into a fixed list before they leave, and anything outside it counts as "other". The documentation lists every field sent.

SHELLHUB_TELEMETRY=false turns it off, and the server then opens no connection to the collector. On Enterprise, the admin console also has a switch under Settings > Telemetry and previews the exact payload.

Upgrading? A new migration gives each instance an ID and stores the telemetry setting, with telemetry enabled. Set SHELLHUB_TELEMETRY=false before upgrading if the instance must never reach telemetry.shellhub.io.

Confirm a new account with a code

A new Cloud account is confirmed by typing the six-digit code from the email, and confirming it signs the user in (#7695, #7720). An account with MFA, or one awaiting approval, still signs in with its password after confirming, so the code never replaces the second factor.

API change. POST /api/user/confirm_account replaces GET /api/user/validation_account, and resend_email takes a username or an email. Confirmation links emailed before the upgrade stop working. The console sends their users to the login, where a pending account can request a new code.

Port forwards in the session log

A session now records each port forward it opens as a session event (#7665).


Also in this release

Fixes

  • Agent forwarding starts once per connection, and each forwarded use is relayed on its own (#7706)
  • A tag attaches only to devices in its own namespace
  • The console hands over the sign-out before the request that revokes the token, including when an admin changes their own password (#7710, #7711)

Enterprise and Cloud

  • The heartbeat reports firewall rules, MFA and web endpoints, and Cloud sends one heartbeat per namespace
  • Deleting a session recording also deletes its output events, and an active session's recording can no longer be deleted

Under the hood

  • The console no longer generates zod schemas from the OpenAPI spec (#7707)
  • CI pulls Docker Hub images through a registry cache and runs on GitHub-hosted runners (#7716, #7719)
  • Dependency updates via Dependabot and Renovate

Full Changelog: v0.27.4...v0.28.0

Don't miss a new shellhub release

NewReleases is sending notifications on new releases.