Skip to content

Beacon

v0.6.6-remote-tty-ha-os-tunnel Security

This release includes 1 security fix for security teams reviewing exposed deployments.

βœ“ No known CVEs patched
Read the diff β†’ Tool health β†’ What is this tool? β†’
This release patches 1 known CVE

Topics

home-lab home-lab-dashboard home-security hosting-deployment iot iot-application
+3 more
monitoring monitoring-automation self-hosted

Affected surfaces

auth breaking_upgrade

Summary

AI summary

Updates ✨ Highlights, πŸ› οΈ What's included, and πŸ“‹ What's next across a mixed release.

Changes in this release

Breaking High

Renames command `beacon master` to `beacon start`; alias retained for compatibility.

Renames command `beacon master` to `beacon start`; alias retained for compatibility.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Feature Medium

Adds remote terminal capability to Beacon dashboard.

Adds remote terminal capability to Beacon dashboard.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Feature Low

Adds "Deploy" button on device detail page for project deployment.

Adds "Deploy" button on device detail page for project deployment.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Feature Low

Implements stale session reaper cleaning abandoned terminal sessions every 60β€―seconds.

Implements stale session reaper cleaning abandoned terminal sessions every 60β€―seconds.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Feature Low

Introduces structured logging (zerolog) for all terminal events.

Introduces structured logging (zerolog) for all terminal events.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Bugfix Medium

Fixes gosec G702 vulnerability by restricting shell to allow‑list.

Fixes gosec G702 vulnerability by restricting shell to allow‑list.

Source: llm_adapter@2026-05-28

Confidence: high

β€”
Full changelog

πŸš€ Beacon Release β€” Remote Terminal & Command Rename

This release adds remote terminal to Beacon β€” open a shell on any device from your browser, through BeaconInfra. No SSH port, no VPN, no port forwarding. Also renames beacon master to beacon start.


✨ Highlights

πŸš‡ Tunneling on HA OS

With the beacon home-assistant OS addon you can now enable tunneling (remote access).

πŸ–₯️ Remote Terminal

Open a PTY shell session on your device directly from the BeaconInfra dashboard. Traffic relays through BeaconInfra's WebSocket hub β€” no SSH daemon, no port 22, no inbound connections needed.

How it works:

  1. Click "Open Terminal" on a device in the dashboard (Remote Access tab or the Remote Access page)
  2. BeaconInfra creates a session and sends a terminal_open piggyback command to the device
  3. The Beacon agent picks it up on the next heartbeat, dials back to the cloud via WebSocket, and spawns a local shell
  4. Browser ↔ Cloud Hub ↔ Agent PTY β€” bidirectional relay, binary-safe

Security:

  • One-time btt_ tokens per session β€” SHA-256 hashed, only the hash stored server-side
  • Sessions auto-expire after 15 minutes (max duration) or 5 minutes idle
  • Shell restricted to an allow-list (/bin/bash, /bin/zsh, /bin/sh, /bin/ash, /bin/dash, /usr/bin/bash, /usr/bin/zsh, /usr/bin/fish)
  • The agent runs the shell as its own OS user β€” no privilege escalation
  • A stale session reaper runs every 60s to clean up abandoned sessions

⌨️ beacon start (was beacon master)

The command to start the agent is now beacon start. More intuitive, less jargon. beacon master still works as an alias for backward compatibility β€” existing scripts and systemd units are unaffected.

πŸš€ Deploy from beaconinfra dashboard

The device detail page now has a prominent "Deploy" button that opens a dialog where you can enter a project name. Triggers the same deploy flow as a new tag detection.


πŸ› οΈ What's included

  • Remote terminal: terminal_open piggyback command, agent-side PTY spawner, cloud WebSocket relay hub
  • Browser terminal UI (xterm.js) with resize support and session status feedback
  • Terminal session API: POST /api/terminal/sessions, GET .../sessions/:id, POST .../sessions/:id/terminate
  • Browser and agent WebSocket endpoints with JWT and btt_ token auth
  • Shell allow-list (gosec G702 fix) β€” rejects arbitrary $SHELL values
  • Stale session reaper with ExpireStale storage method
  • Structured logging (zerolog) for all terminal events: session create, browser connect, agent connect, relay start, close
  • beacon master β†’ beacon start rename across both repos (agent + cloud), master kept as Cobra alias
  • Deploy dialog on device detail page with project name input
  • Terminal accessible from Remote Access page (device dropdown) and device detail Remote Access tab

πŸ“‹ What's next

  • Agent binary rebuild required β€” devices must run this version for terminal to work. Older agents silently ignore the terminal_open command.
  • Terminal sessions are single-user, single-device for now. Multi-tab and session sharing are future work.
  • The deploy dialog currently triggers a device-level deploy. Project-targeted deploy via piggyback commands is planned.

Full Changelog: https://github.com/Bajusz15/beacon/compare/v0.6.3-remote-ssh...v0.6.4-remote-ssh-access

Full Changelog: https://github.com/Bajusz15/beacon/compare/v0.6.3-remote-ssh...v0.6.5-remote-tty

Breaking Changes

  • Renames `beacon master` command to `beacon start`; existing scripts must update, though an alias preserves backward compatibility.

Security Fixes

  • Shell allow‑list (Gosec G702 fix) restricts executed shells to a safe whitelist.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Beacon

Get notified when new releases ship.

Sign up free

Related context

Earlier breaking changes

Beta — feedback welcome: [email protected]