Skip to content

Security: gtfol/bin

Security

SECURITY.md

Security

bin is an authenticated single-node storage recipe. It is not a storage provider with redundancy, isolation between hostile tenants, or an availability SLA.

  • S3 keys grant access to one app/environment bucket. Never give an app the RPC secret, node identity, administration tokens, or bucket-owner privileges.
  • The sharing-only SMB account has access only to files/, no shell or admin rights. Use a different non-admin identity for the Garage process.
  • Garage's S3 listener binds to loopback on the host. No web/administration server is enabled. RPC remains loopback/private to the container. Administer over SSH through Tailscale; never tunnel RPC or an admin endpoint publicly.
  • macOS File Sharing listens beyond Tailscale unless restricted by the host firewall. Tailnet access rules alone do not block ordinary LAN access.
  • Cloudflare terminates HTTPS and can observe S3 traffic. Tunnel transport protects the hop to the Mac; local loopback HTTP is intentional. End-to-end content secrecy requires application-side encryption before upload.
  • A presigned URL is a bearer credential until it expires. Avoid logging query strings, Authorization headers, or object names. Keep debug logging off normally.
  • Filesystem ownership must be enabled on the external volume. The unmounted mountpoint must be root-owned and unwritable by service/share users.
  • Keep recovery secrets in a password manager or encrypted independent backup. Losing the HDD or Mac must not also lose the only usable recovery material.

Report suspected vulnerabilities through GitHub's private vulnerability reporting feature when available. Do not post real credentials, file contents, or production logs in public issues. For an exposed key, revoke it, replace it in its consumer, and examine access before considering any history cleanup sufficient.

See networking and acceptance checks.

There aren't any published security advisories