Commit Graph
70 Commits
Author SHA1 Message Date
redtea 86cb0226ab feat: machine status page, speed test, live presence, forwards without ufw (0.0.5)
Status page per machine: CPU load, RAM and disk of the client, sampled
by the agent only while the page is open and visible (one reading
serves every open tab), plus a button that has the agent measure its
link to the host: ping, down and up.

Online/offline now comes from the control polls the hub holds open, so
a dropped agent shows offline at once instead of 45 s later, and the
dashboard keeps the status column live.

A forward rule can be created "without ufw": the panel opens nothing in
ufw for it and so revokes nothing when it is deleted. The checkbox is
shown only while the ufw integration is on.

Dashboard row actions are icons; a status action is added.
2026-10-13 18:56:15 +03:00
redtea 7f4d645f19 fix: keep the machine row buttons on one line 2026-10-13 16:57:54 +03:00
redtea f3cb7701f2 fix: remove an agent's forward rules with the agent (0.0.4)
Deleting a machine left its forward rules behind: the host ports stayed
bound and "busy" with no page to remove them from. The rules, their
listeners and ufw rules now go with the agent, and rules orphaned by
older versions are dropped on start.

A host port equal to the direct tunnel port gets its own message.
0.0.4
2026-10-13 16:30:53 +03:00
redtea 328ade651c fix: fix ufw 0.0.3 2026-10-13 16:16:31 +03:00
redtea 5e6e0b8a3a chore: run the server unit as root from /opt/lpra
The panel's ufw integration needs root; the database now lives next to
the binary in /opt/lpra.
2026-10-13 14:55:37 +03:00
redtea bcfe909aaa feat: tunnel host and port in the panel settings, ufw kept in sync
The direct tunnel port (8446 by default) and the host agents dial for
it can be set in Settings. The server moves its listeners at once and
agents pick the address up from the panel: on connect and with every
poll, unless TUNNEL_ADDR / TUNNEL_PORT pin it locally.

ufw: run with a C locale (the output is translated), do not adopt rules
that existed before the panel, skip loopback-only listeners, re-open
what saved forwards need on start and when the integration is turned
on, move the shared tunnel rule with the port and drop it when no
direct forward is left. The last ufw error is shown in Settings.

The forwards page shows the real tunnel and panel ports.
2026-10-13 14:50:50 +03:00
redtea 08fc2d79a8 fix: take the file edit limit in the panel from the agent's read cap
The limit was repeated in the page; a file of exactly the cap is read
in full, so it is editable too.
2026-10-13 14:50:49 +03:00
redtea 7cb9da8569 chore: take the version from VERSION.txt only (0.0.3)
VERSION.txt is embedded into the server and the agent, so a plain
go build reports the real version and build.sh no longer injects it.
2026-10-13 14:50:49 +03:00
redtea 93673d3570 style: match the user select to the panel buttons 0.0.2 2026-10-13 01:43:24 +03:00
redtea 3dde07f403 feat: terminal as a chosen OS user, create users from the panel (0.0.2)
- agent reports the OS user it runs as (enroll + poll header)
- per-machine terminal user on the edit page; defaults to the agent's own user (root on Linux)
- create a new user from the panel: name, password, optional sudo group
- show the reason in the terminal when a shell fails to start
- bump version to 0.0.2
2026-10-13 01:28:57 +03:00
Denis Istratov be7fbabd9e chore: Delete dist directory 0.0.1 2026-10-13 00:54:38 +03:00
Denis Istratov a180c8da0a chore: Delete bin directory 2026-10-13 00:54:23 +03:00
redtea 6e10b9f60b chore: Remove .DS_Store files 2026-10-13 00:41:31 +03:00
redtea efb311d447 chore: update gitignore 2026-10-13 00:36:19 +03:00
Denis Istratov 38c36d8204 chore: Delete .DS_Store 2026-10-13 00:34:05 +03:00
Denis Istratov 6a5d6facf1 chore: update README.md
Updated installation commands to use localhost instead of remote host.
2026-10-13 00:32:58 +03:00
redtea e652ec35d9 chore: update gitignore 2026-10-13 00:28:41 +03:00
redtea 0bd729babf chore: remove dev db files 2026-10-13 00:27:52 +03:00
redtea c6852c6f1b feat: initial commit 2026-10-13 00:25:29 +03:00
Denis Istratov 353f62e257 Initial commit 2026-10-13 00:24:16 +03:00