github MHSanaei/3x-ui v3.7.0

5 hours ago

πŸš€ Native AmneziaWG, Calendar-Day Renewals, Scoped API Tokens & Node-Sync Hardening

  • πŸ›‘οΈ Native AmneziaWG 3.1 β€” AmneziaWG inbounds run in-process on an embedded userspace device with a reconcile manager, so DPI-resistant peers need no kernel module, no Docker and no second panel.
  • 🌐 More outbound and routing reach β€” PIA WireGuard outbounds added by login, remote routing URLs, a client picker inside user rules, and geosite/geoip categories browsable straight from a routing rule.
  • πŸ“… Client lifecycle you can actually bill against β€” renewals that step whole calendar months, a per-client traffic reset cycle, a cap on auto-renewals, single-device HWID removal, per-client subscription HWID limits and per-client external-link controls.
  • πŸ”‘ Credentials that can be scoped and revoked β€” API tokens now carry scopes and an optional expiry, node API tokens can be encrypted at rest, replacing the TOTP secret requires a 2FA code, and the CLI stopped quietly accumulating admin-equivalent tokens.
  • πŸ”— Subscription output β€” client-side balancers in the JSON format, template variables in subscription metadata, an exposed last-fetch time, and a neutral copy-only page when a subscription URL is opened in a browser.
  • πŸ•ΈοΈ Multi-node hardening β€” the sync adopts a matching deployed inbound instead of recreating it, keeps disabled inbounds a snapshot cannot report, stops undoing client extensions, validates every certificate in the mTLS trust bundle, and applies a rotated master certificate without a panel restart.
  • 🧱 Transactional correctness β€” bulk client pushes, traffic maintenance side effects and group moves now fire only after the commit lands, and a half-applied startup migration can no longer commit silently.
  • 🧰 Toolchain and supply chain β€” Go 1.27, TypeScript 7 on the oxc toolchain, provenance plus SBOM attestations on published images, and release binaries stamped with their source revision.
  • πŸ–₯️ Panel polish β€” a pinnable sidebar, network-only PWA installability, virtualized tables, real loading spinners, and localized log levels, access events and calendar labels.

ℹ️ Heads-up: First start runs automatic schema migrations (client reset-cycle and last-fetch columns, node sync orphan columns, a lowercase client-email index, API token scope/expiry, external-link normalization) β€” take a database backup before upgrading. Two defaults changed for existing setups: importing a database now keeps this machine's own listen addresses, ports, base path, certificate paths and node identity (clear the new checkbox to restore the old whole-file clone), and opening a subscription URL in a browser returns a copy-only page unless you append html=1 or view=html. x-ui setting -getApiToken now rotates a single cli-fallback token instead of minting a new one, so previously printed CLI fallback tokens stop working; calendar renewal is opt-in per client, so clients left on day 0 keep the old rolling interval. Building from source now requires the Go 1.27 toolchain.

πŸ†• New

⚑ Update & improvement

🐞 Bug fixed

Reports

Total Download

New Contributors

Full Changelog: v3.6.0...v3.7.0

Don't miss a new 3x-ui release

NewReleases is sending notifications on new releases.