LibreAuth

Users & Machines

Track every PC that logs in — HWID, CPU, PC name, IP geolocation, and scoped machine bans from the panel.

Panel path

Select an application → sidebar Users → user card → Machines button. Click a row for full hardware and network details.

Per HWID CPU & PC name IP geolocation Ban from detail

What It Does

LibreAuth records each unique HWID per user in the user_devices table when the client authenticates (login, license, or register). The panel merges this with session data and the user’s bound HWID so you see every machine tied to an account — including multiple PCs on one license key.

TIP
Send cpu and pcuser on login for readable machine names in the table. HWID alone works, but the CPU column shows until metadata is sent.

Using the Panel

Machines table

ColumnSource
Machinepcuser / PC name, else truncated HWID. Sub-line shows short HWID.
CPUcpu from last login with that HWID
IPLast seen IP for that device record or session
Last seenLatest of last_seen, last_login, or active session time

Machine detail view

User search

The Users search box matches username, license key, HWID, CPU, PC name, and IP from stored devices — useful when investigating abuse without opening each card.

Client Fields (login / license / register)

All fields are optional except hwid when Force HWID is enabled. Sent on the same POST as authentication:

ParameterStored asNotes
hwidDevice keyRequired for HWID Lock and machine bans
cpuuser_devices.cpuCPU model string, max 255 chars
pcuseruser_devices.pc_nameWindows username or hostname (aliases: hostname, computername)
os / platformuser_devices.os_nameOS label
device, model, manufacturer, hardware, product, brand, board, fingerprintmeta_jsonShown in machine detail when present
POST https://libreauth.nutexe.dev/api/1.3/type=login
name=MyApp
ownerid=XXXXXXXXXX
sessionid=...
username=user123
pass=secret
hwid=c93a25c9aae4b2f44d631077a...
cpu=Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz
pcuser=DESKTOP-GAME
os=Windows 11

API reference: login · license · register

Database & Upgrade

Device rows live in user_devices (schema revision 11). Run install/upgrade.php once on existing installs if the table is missing — the panel still shows HWIDs from users.hwid and sessions without it, but CPU/PC metadata is only persisted when the table exists.

Each row is unique per (app_id, user_id, hwid). Updates on every login refresh last_seen, last_login, IP, and metadata when the client sends new values.

ScenarioWhere to look
Known usernameUsers → card → Machines
Shared license keyUsers card → users on this license keyView machines per account
Active session onlySessions → Bound HWID column
Quick banHWID Bans → Quick ban from user chips

Ban Machine from Detail

Ban machine in the detail modal (or from HWID Bans) calls AppCore::BanMachine() with the scope you select:

ScopeWhat is blocked
HWID onlyHWID blacklist only — safe when VM and host share the same public IP
MachineHWID + every IP ever tied to that HWID + session kill
Machine + license key(s)Machine scope + bans license keys used on that PC

Panel bans do not change the user’s Banned badge in Users — ban the account separately if needed. Toast example: HWID blocked · 2 IPs · sessions killed.

WARN
Unban from HWID Bans runs UnbanMachine() — clears HWID, related IPs, and reverses key bans. See HWID Bans → Unban.

Troubleshooting

IssueFix
No machines listedUser never logged in with HWID — enable Force HWID
CPU / PC name emptyClient not sending cpu / pcuser — add to login request
IP geolocation unavailablePanel uses ip-api.com with Redis cache; private or invalid IPs show limited data
Same PC, multiple rowsHWID changed (spoof/reset) — each distinct HWID is a separate device row