Enterprise · Web & mail hosting · Ubuntu 24.04

uAdmin

uAdmin — enterprise-grade control panel for VPS web hosting, authoritative DNS and self-hosted email on your own Ubuntu servers.

uAdmin (Ubuntu Web Admin) is an open-source web panel for Ubuntu servers, designed for developers and system administrators who need more control than classic hosting panels offer. It enables straightforward server and web application management with full configuration access, without expensive licenses and unnecessary restrictions.

Fast dashboard with lazy loading, automatic virtual host and PHP-FPM pool on project create, CMS auto-install (WordPress, Joomla, Nextcloud, Moodle, PrestaShop, Drupal), site migration from CyberPanel and cPanel (web, database, mail, DNS, SSL), authoritative DNS (PowerDNS) with wizard install on a dedicated VM, mail server (Postfix, Dovecot, Roundcube webmail) with DNS automation and webmail SSO, zone and record management, DynDNS for dynamic hosts, one DNS server shared across multiple panels, reverse proxy, MariaDB, Let's Encrypt SSL, Fail2ban, GeoBlock and IP protection — from one interface, plus CLI and recovery tools.

Built with Laravel. Server changes go only through whitelisted scripts in /usr/local/uadmin/bin — production-safe and transparent for sysadmins.

Panel version (stable) 1.0.437 (2026-08-30)

uAdmin dashboard with a dark server security overview

What uAdmin offers

A free enterprise web and mail hosting platform for developers and sysadmins — flexible LAMP hosting on your own VPS with DNS, email, monitoring and automation.

Projects & web

Wizard auto-creates virtual host and PHP-FPM pool (disable with UADMIN_AUTO_PROVISION_WEB=false). Domain, PHP 7.4–8.5, Apache/Nginx backend, vhost editor, file manager, SSL and clickable project list.

Reverse proxy

Frontend Nginx on ports 80/443, project backends on localhost ports. Apache and Nginx projects together — centralized SSL and HTTP/2.

Installations (LAMP)

GUI stack install: Apache, Nginx, PHP-FPM versions, MariaDB, Certbot, Adminer, vsftpd, UFW, Fail2ban. Global PHP.ini and PHP extensions per version.

Dashboard

Fast load (< 2 s): server resources, swap, SSL alerts, Project Health (per-project traffic today/month), Fail2ban summary and service status load via lazy AJAX.

Backup & logs

Per-project file, database and config backups, SFTP archiving, restore and audit trail. Offsite backup server (optional): panel, DNS, mail and project copies — Backup all, scheduling and archive download from the panel.

Panel & maintenance

OTA upgrades, OS apt maintenance, Cleanup tab (disk/cache, journal). Mail/DNS install maintenance step: 7-day journal and automatic security updates on infrastructure VMs. UI themes and SMTP.

Fail2ban protection

Preset jails for SSH, FTP, web auth, panel login and CMS admin attempts. Ban overview, unban actions, logs, global settings, ignoreip and dashboard summary.

Recovery & themes

Web GUI and SSH tools for OTA rollback, maintenance mode, stack repair and password reset. 9 CSS themes (including refreshed Gold) — each user picks their own.

GeoBlock & Threat Security

GeoBlock for SSH and individual web projects, with per-project country rules. Threat Security adds public threat intelligence feeds, automatic nftables sets and manual indicator checks.

CMS auto-install

Applications tab on the project page — one-click install for WordPress, Joomla 5/6, Nextcloud, Drupal, Moodle 5 or PrestaShop 8/9. The panel creates the database, applies PHP presets, nginx profiles (Nextcloud, Moodle, PrestaShop), Fail2ban/WAF profile and shows the admin URL.

DNS server (PowerDNS)

Wizard installs primary or secondary DNS on a dedicated Ubuntu 24.04 VM: MariaDB, PowerDNS, uAdmin connector, TLS, UFW and enrollment key. Attach existing server, health checks, credential sync. GUI re-apply of install steps (maintenance, firewall, connector, TLS) from DNS → Server data — no SSH on the DNS server.

DNS zones & projects

CRUD for zones and records, templates (web, mail), global mail settings (MX, SPF, DMARC, DKIM), secondary DNS via AXFR. Projects can get a DNS zone and A/MX records from the panel — one DNS, multiple uAdmin instances.

DynDNS

Manage dynamic DNS hosts from the panel: create a DynDNS record in a zone, generate username and password, and let the client (router, NAS, script) update the A/AAAA record via HTTPS update API on the DNS server.

Mail server

Wizard installs Postfix, Dovecot, Roundcube webmail and rspamd on a dedicated Ubuntu 24.04 VM. Domains, mailboxes, webmail SSO, Rspamd rejected messages in the database (full log, delete, 90-day retention). Optional webmail panel proxy when panel and mail share the same public IP. MX/SPF/DKIM/DMARC via the DNS module.

Offsite backup server

Register a separate VPS for offsite copies: preflight, SSH setup, active server. Backup all in one click (panel + DNS + mail + projects), scheduled offsite backup, multiple panels on one server (partitions by panel_instance_id), restore and Download archive from the panel.

Migration from CyberPanel/cPanel

A web GUI and CLI move sites from CyberPanel or cPanel: files, database, mailboxes, forwarders (a copy stays in the mailbox), DNS zone and Let's Encrypt if public DNS already points at this server.

Authoritative DNS from the panel

uAdmin includes a full PowerDNS module: wizard install, zones, DynDNS, mail templates and firewall — no manual SSH on the DNS server. The same DNS infrastructure can be shared by multiple panels (e.g. production and staging).

Automated installation

SSH wizard on a fresh VM installs the stack, generates API keys, opens ports only for panels and prepares enrollment for attaching other instances.

Zones & templates

Create zones, A/AAAA/CNAME/MX/TXT records, apply web and mail templates, DynDNS hosts and glue NS records for your registrar.

Multiple panels, one DNS

A second uAdmin connects with an enrollment key — API keys are not rotated automatically; firewall accumulates all panel IPs. Sync credentials if health reports auth errors.

DynDNS

Dynamic hosts in your own zone — the panel creates the record and credentials; the device sends updates when its public IP changes. GUI re-apply of maintenance, firewall, connector and TLS without manual SSH.

DNS guides

Mail server from the panel

uAdmin includes a full mail module on a dedicated VM: Postfix, Dovecot, Roundcube webmail, rspamd and connector API. Domains, mailboxes, webmail SSO, queue management and TLS — no manual SSH on the mail server. DNS module integration automatically sets MX, SPF, DKIM and DMARC.

Wizard installation

SSH wizard on a fresh Ubuntu 24.04 VM installs the stack, generates API keys, configures UFW (ports 25, 587, 465, 993, 995, 443) and issues a TLS certificate via DNS-01.

Domains & mailboxes

Create virtual domains, mailboxes with quota, forwarders and rspamd thresholds. The panel shows IMAP/POP3/SMTP settings for clients (including port 25).

Webmail SSO

The «Open webmail» button generates a one-time SSO link from the panel — Roundcube logs in without manual password entry. Webmail URL is webmail.{domain} per virtual domain.

Rspamd & offsite backup

Rejected messages in MariaDB with full raw log, automatic ingest and delete from the panel. Offsite backup server can archive the mail VPS and projects from the panel. Let's Encrypt certificate includes mail.{domain} and webmail.{domain}.

Mail guides

Migrate from CyberPanel and cPanel

Move existing sites to uAdmin without copying files and databases by hand. The panel web GUI (same token as Recovery) or CLI on the VPS transfers web, database, mail and DNS — with a test-first approach before DNS cutover.

CyberPanel and cPanel

CyberPanel is live-tested (SSH). cPanel works over SSH, without SSH via UAPI+FTP, or FTP-only when a valid UAPI login is not available.

Web, database and mail

Files, MariaDB dump, Maildir messages, mailboxes and forwarders are transferred. A forwarder always keeps a copy in the local mailbox, then sends onward. Mailbox passwords are regenerated.

DNS and SSL

The zone is created from scratch on uAdmin (A, MX, SPF, DKIM, DMARC). If the source had SSL and public DNS already points here, Let's Encrypt is issued automatically.

GUI on the panel

Open https://panel:10001/panel-migrate/ — same recovery token. Pick a site, run all and watch the log. Use the server command only if you need to repeat a single step or automate the process.

Migration guide

Architecture

Separate frontend proxy and per-project backend engines.

uAdmin architecture: panel, web projects, optional DNS, Mail and Backup VPS.
  • Panel (Laravel) — Nginx + PHP-FPM on port 10001 (HTTPS via Settings → Panel SSL)
  • Web projects — Apache or Nginx backend on an allocated internal port (e.g. 10003)
  • DNS server (optional) — separate VM, PowerDNS + connector; GUI re-apply of steps from the panel
  • Mail server (optional) — Postfix + Dovecot + Roundcube + rspamd; rejected messages in DB, webmail SSO
  • Backup server (optional) — separate VM for offsite copies; Backup all, multiple panels on one server
  • Release model — /home/uadmin/releases/, current symlink, OTA without losing project data
  • Scripts — /usr/local/uadmin/bin/*.sh whitelist + sudoers; recovery outside release in shared storage

Documentation

Installation, panel access, DNS, mail, migrations, security, OTA, users, recovery, CLI commands and troubleshooting.

New VM (Ubuntu 24.04)

One-line install on a fresh Ubuntu 24.04 VM (root SSH):

curl -fsSL https://enc-it.hr/uadmin/install-uadmin-from-release.sh | sudo bash

Requirements

  • Ubuntu 24.04 LTS (server), root access, port 10001 (panel) and 22 (SSH) open
  • For web projects: ports 80 and 443 (frontend Nginx reverse proxy)
  • Minimum 1 GB RAM and 20 GB disk (2 GB RAM recommended for multiple projects)

Non-interactive install (optional)

You can set passwords and hostname before running:

export UADMIN_PANEL_HOSTNAME="panel.example.com"
export UADMIN_DB_PASS="your-mariadb-password"
curl -fsSL https://enc-it.hr/uadmin/install-uadmin-from-release.sh | sudo -E bash

Paths after install

  • Panel app: /home/uadmin/app → releases/current
  • Scripts: /usr/local/uadmin/bin/
  • Project web root: /web/public_html/<domain>/
  • Shared (recovery, .env): /home/uadmin/shared/
Important

Installation takes a few minutes. Then open the panel, change the admin password, run Installations → stack wizard (PHP-FPM, MariaDB, Certbot, Fail2ban…) and review Settings → Security.