Zerox X Atherix

LXC-native · Multi-node · Open source

The Proxmox-grade
VPS panel for LXC

Deploy hard-isolated LXC containers in under 30 seconds. CPU pinning, swap-locked memory, routed public IPs, scheduled snapshots, bandwidth quotas, port forwarding and a browser console — all from one panel.

5-layer
Swap isolation
< 30s
VPS deploy
10+
OS images
REST
Full API
root@my-vps:~
$ free -h
            total  used  free  available
Mem:       3.8Gi  97Mi  2.9Gi  3.7Gi
Swap:      0B    0B    0B     0B
$ swapon -s
  # (empty — no swap visible to container)
$ nproc
2 # pinned CPU cores
$ df -h /
Filesystem  Size  Used  Avail
/dev/loop0  20G  1.4G  18.6G
$
Swap locked
What's in the box

Everything you need to run VPS at scale

From CPU-pinned containers and bulletproof swap isolation to a browser console, file manager and scheduled snapshots — all the tooling of a paid panel, none of the licensing fees.

Instant container deploy

Spin up Ubuntu, Debian, Rocky, Alma, Fedora or Alpine in under 30 seconds with image-fallback to community images. cloud-init defaults preserved — no surprise overrides.

LXC 10+ images Auto-fallback

Proxmox-grade resource limits

Hard memory cap, CPU pinning to dedicated cores, disk quotas enforced at the kernel layer. Containers behave like real VMs — no noisy-neighbor stealing.

CPU pinning RAM hard cap Disk quota

5-layer swap isolation NEW

Containers cannot touch host swap. LXD limit + cgroup v2 cap + in-guest swapoff + /proc/swaps/dev/null + /proc/meminfo Swap zeroed via unshare-namespace patcher.

cgroup-v2 unshare -m systemd unit

Browser root console

Full PTY-backed bash in your browser. xterm.js with proper keybindings, copy/paste, resize-aware. SSH credentials auto-generated and stored encrypted in the panel DB.

xterm.js SSH ready One-click

Web file manager

Browse, upload, download, edit, rename, chmod, compress and extract files inside any VPS — no SSH client required. Full directory tree, in-browser code editor, drag-and-drop uploads.

Upload Edit chmod Archive

Snapshots & backups

Point-in-time container snapshots. Restore in seconds, download as tarball, upload to migrate between nodes. Optional cron-style scheduled snapshots with auto-rotation.

Scheduled Restore Migrate

Routed public IPs + port forwards

Attach a real routed public IPv4 to any container, or hand out TCP/UDP port forwards from a host pool. Bulk port ranges, per-user port quotas, automatic NAT rule lifecycle.

Routed NIC TCP & UDP Bulk ranges

Bandwidth quotas

Per-VPS monthly bandwidth quotas with rolling tracking, dashboard graphs and auto-suspend at limit. Quota resets, manual overrides and granular admin reporting all included.

Monthly quota Auto-suspend Live tracking

Multi-node cluster

Distribute VPS across multiple LXD hosts. Per-node API-key auth, circuit-breaker for unhealthy nodes, live health dashboard, per-node console relay, transparent failover.

Circuit breaker Live health SSH-less

Real-time monitoring

Live CPU, RAM, disk and network graphs polling via Socket.IO. Per-VPS history with sparklines, per-node aggregates, instant browser notifications when something changes.

Socket.IO Sparklines Push alerts

Nested KVM virtualization

Opt-in /dev/kvm passthrough so VPS users can run their own KVM/QEMU VMs inside the container. Cgroup-v1 + v2 device rules auto-merged with the rest of your raw.lxc config.

/dev/kvm Opt-in VMs in VPS

Discord OAuth + REST API

Sign in or register with Discord, link existing accounts, automate everything via the per-user REST API key. Built-in rate limits and audit logging for every endpoint.

OAuth2 REST API Audit log
Engineering deep dive

Containers literally cannot use swap

Five independent enforcement layers guarantee a VPS user cannot push the host into swap pressure, leak swap usage, or even see that the host has swap.

1

LXD config

limits.memory.swap = false + limits.memory.enforce = hard. LXD refuses to allow swap accounting against this instance.

2

cgroup v2 kernel cap

lxc.cgroup2.memory.swap.max = 0. Linux kernel itself enforces zero swap pages from this container — no userspace bypass.

3

Guest OS lockdown

Inside the container: swapoff -a, vm.swappiness=0, swap entries stripped from /etc/fstab, persistent systemd unit re-applies at every boot.

4

/proc/swaps masked

mount --bind /dev/null /proc/swaps. swapon -s, cat /proc/swaps and every swap-status tool sees an empty file.

5

/proc/meminfo overlay

unshare -m-based patcher refreshes /run/hvm-meminfo with Swap*=0 while keeping memory/buffer/cached fields live — free, top, htop all show 0 swap.

Result

No container process can swap. No tool inside the container shows any swap. The host stays clean even under malicious workload.

Operating systems

Run anything Linux

Official Canonical images and the full Linux Containers community catalogue. Automatic image fallback — if the primary alias is missing on a node, the panel retries with the community build before failing the install.

Ubuntu 20.04 Ubuntu 22.04 LTS Ubuntu 24.04 LTS Debian 11 Debian 12 Debian 13 Rocky Linux 9 AlmaLinux 9 Fedora Alpine 3.18/3.19 CentOS Stream openSUSE Arch Linux  more
For administrators

Run a real hosting business

Multi-tenant out of the box: per-user resource quotas, suspension on quota breach, email + Discord notifications, scheduled DB backups, full audit trail, maintenance mode, and a license/activation system.

User management

Roles, quotas, suspend / unsuspend, expiry dates, audit log

Node fleet

API-key auth, live health, console relay, key rotation

Backup & restore

One-click panel DB backups + restore, scheduled rotation

Maintenance mode

Lock the panel for upgrades, allow-list admin IPs

Email + Discord alerts

SMTP wired, Discord webhook on critical events

License system

Optional activation + tier enforcement

White-label

Logo, favicon, panel name, custom theme colors

Live migration

Move a VPS between nodes with progress tracking

For end users

Self-service everything

Reinstall the OS in seconds, change passwords, configure SSH, swap public IPs, manage port forwards and snapshots — without ever opening a support ticket.

One-click reinstall

Wipe and rebuild the container on a different OS — preserves routed public IP, port forwards, bandwidth quota and SSH password generation.

SSH out of the box

Auto-generated 24-char strong root password, sshd_config written and validated by the panel, password rotatable from the dashboard without ever opening a shell.

Live notifications

Real-time browser toasts via Socket.IO — install complete, snapshot ready, bandwidth limit hit, suspension applied, IP changed, password rotated.

Personalized profile

Profile pictures (upload or Discord-synced), per-user API key for automation, preferences for light/dark theme and timezone.

Snapshot timeline

See every snapshot with size + timestamp, restore in one click, download as tarball, upload a snapshot from another host to migrate workloads.

Expiry awareness

Per-VPS expiry dates with warning banner, auto-suspend on expiry, admin reports for "expiring in N days", manual renewals from the dashboard.

How it works

Lean by design

Python + Flask + Socket.IO panel talks to a tiny Flask agent on each LXD node via API key. No SSH, no shared filesystems, no Redis — just HTTPS and a single SQLite DB.

Panel

Flask + Socket.IO + Jinja templates, single SQLite DB, runs on any Linux box (or even Windows for the panel itself).

Node agent

Tiny Flask service per LXD host. API-key authenticated, executes LXC commands locally, exposes stats + console PTY relay.

LXC nodes

Stock LXD ≥ 4.0 (snap or apt). lxcfs for per-VPS /proc/meminfo. iptables / nftables for port forwards.

Ready when you are.

Create a free account in seconds. Your first VPS spins up in under thirty.