figcraft/packaging/server
bflatastic 7edc61b8d2 M9: harden open hosting against resource exhaustion
Fixes from the security review of the public server:
- team libraries only in key-published files on open servers; unpacking
  bounded by the file cap (zip bombs refused)
- byte-bounded send queues per connection and in all, a bound on bytes
  waiting for the hub, per-address and global download budgets
- batches checked against the file, per-address and total caps as files
  grow (refused with a Reject the app rolls back); the core's recent-batch
  memory bounded in bytes; nothing confirmed when a log can't be written
- usage reports kept in memory; per-kind message caps checked while read
- layered IPv6 limits (/64, /56, /48), a global publish rate, connections
  reserved for sessions, short idle timeout for one-shot requests
- revoked links and removed files cut library connections
- data directory 0700, server key 0600 from creation
- install.sh: SSH ports from sshd, ufw left off when other services
  listen, unprivileged builds of the latest tag, settings checked before
  use, own Caddy snippet; systemd memory and network caps; backups check
  free space and say they hold the key
- linger reads raw bytes after an oversized frame (tungstenite asserted)
2026-10-12 11:40:03 +07:00
..
Caddyfile M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
Dockerfile M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
Dockerfile.dockerignore M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
figcraft-backup.service M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
figcraft-backup.timer M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
figcraft-server.service M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
install.sh M9: harden open hosting against resource exhaustion 2026-10-12 11:40:03 +07:00
nginx.conf M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00
package.sh M9: install.sh, backup timer and docs for a public figcraft-server 2026-10-12 11:40:03 +07:00