1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 11:16:47 +00:00
webvirtcloud/computes/tests
catborise 2dab23cd9e fix(gstfsd): only the panel, with the host's key, can change a VM's disk
gstfsd, the root service on each compute that rewrites a shut-off VM's
/etc/shadow and authorized_keys, did what any client on its port asked.
Now it needs GSTFSD_KEY (64 hexadecimal characters, in the unit's
/etc/default/webvirt-gstfsd) and does not start without it. Each
connection gets a new challenge; the panel signs its request for it
with HMAC-SHA256 and gstfsd checks the signature before any change, so
a request recorded on one connection is refused on another. gstfsd
signs its reply for the same challenge and the panel's nonce, and the
panel accepts only that reply.

Each compute has a gstfsd key, the host's GSTFSD_KEY: the compute forms
and the API take it and never show it, and an empty value on an edit
keeps it. The bootstrap script makes the key file once, readable by
root only; the README shows how to make it and where the panel takes
it. The traffic is still not encrypted: a remote panel's port stays
open to the panel's address only.
2026-10-31 01:53:43 +03:00
..
__init__.py test: each app keeps its tests in a tests package 2026-10-12 15:17:30 +03:00
test_api_security.py refactor(computes): the lock helpers take claims instead of file locks 2026-10-14 23:27:57 +03:00
test_audit_rows.py feat(logs): admin changes and logins are recorded on the Logs page 2026-10-23 10:30:48 +03:00
test_capacity.py feat(computes): the Computes list on Bootstrap's cards, badges, bars and menus 2026-10-27 21:52:08 +03:00
test_compute_password.py fix(api): host API checks what the web forms check 2026-10-26 17:47:18 +03:00
test_cpu_graph.py fix(storages): pools are measured when shown, and only on a host's own pages 2026-10-27 21:30:14 +03:00
test_gstfsd_key.py fix(gstfsd): only the panel, with the host's key, can change a VM's disk 2026-10-31 01:53:43 +03:00
test_host_nav.py style(computes): the host's sections on one line in every theme 2026-10-29 15:50:31 +03:00
test_migration_address.py feat(instances): migrate a VM with its disks copied into pools of the destination 2026-10-29 19:46:31 +03:00
test_operation_locks.py refactor(computes): the lock helpers take claims instead of file locks 2026-10-14 23:27:57 +03:00
test_overview.py feat(storages): the storage pages on Bootstrap's tables, cards, badges and menus 2026-10-28 19:27:21 +03:00
test_overview_status.py feat(computes): the Computes list on Bootstrap's cards, badges, bars and menus 2026-10-27 21:52:08 +03:00
test_ownership.py fix(admin): Removed VMs shows the host a VM left and confirms a delete 2026-10-26 11:48:40 +03:00
test_ownership_race.py fix(computes): a VM moved between computes keeps its owners on PostgreSQL 2026-10-23 15:31:04 +03:00
test_quota_down_host.py test: each app keeps its tests in a tests package 2026-10-12 15:17:30 +03:00
test_reconciliation.py test: each app keeps its tests in a tests package 2026-10-12 15:17:30 +03:00
test_validators.py test: each app keeps its tests in a tests package 2026-10-12 15:17:30 +03:00
test_views.py fix(computes): host pages survive a down host and a vTPM secret 2026-10-26 15:36:57 +03:00