Documentation

Speedy Hosting Control Panel

Complete documentation for installing, configuring and using the Speedy Hosting Control Panel. Covers panel installation, SpeedyCTL agent deployment, client self-service and administrator operations.

1. Installation

Installing the platform

System requirements

Ubuntu 22.04 or 24.04 LTS. Python 3.10+. Root access. Minimum 10 GB disk. Outbound internet for package installation and Let's Encrypt. Inbound ports: 22, 80, 443, 25, 587, 993, 53.

Panel installation

The automated installer sets up the complete panel environment: service user, application runtime, database, systemd service, reverse proxy and all secrets. Run on Ubuntu 22.04 or 24.04 with root access.

SpeedyCTL agent installation

Each managed server runs the SpeedyCTL agent. The installer deploys the agent, creates a dedicated service user, generates cryptographic signing tokens and configures a hardened system service.

Stack installer

The main installer provisions all OS-level services: web servers, PHP, database, mail, DNS, FTP, security tools and SSL certificates. Fully idempotent and restartable.

Panel install steps

What the panel installer does

1. System checks

Verifies root, Ubuntu release (22.04/24.04), Python 3.10+ and DNS resolution for the panel domain.

2. Directories & service user

Creates the required application, configuration, data and log directories. Sets up a dedicated unprivileged service user for the panel process.

3. Application & virtualenv

Deploys the FastAPI application, creates a Python virtual environment and installs all dependencies from requirements.txt.

4. Secrets generation

Generates HMAC audit key, CSRF signing key, session secret and SpeedyCTL panel token. All secrets are stored as root-only restricted files.

5. Database & migrations

Creates the MariaDB database and user, runs Alembic schema migrations and bootstraps RBAC roles, permissions, tenant types and default packages.

6. Systemd & reverse proxy

Installs the panel systemd service for automatic startup. Configures Apache or Nginx as reverse proxy with HTTPS via Let's Encrypt.

7. License & first admin

Optionally installs the license key. Creates the initial SUPER_ADMIN user with the credentials you provide during setup.

8. Health check & report

Verifies the panel is responding, prints the installation report with the admin URL and generated credentials.

SpeedyCTL agent

Agent installation steps

1. Preflight

Verifies root, Ubuntu, Python 3.8+ and source layout.

2. Dependencies

Installs required system packages via apt.

3. Service user & deploy

Creates a dedicated service user and group. Deploys the agent application with its configuration.

4. Secrets

Generates the panel signing token and audit key. If the panel runs on the same host, the token is shared automatically so both sides always agree.

5. Systemd service

Installs the agent systemd service. The agent runs as root with a hardened service profile. Creates CLI and relay wrappers for command access.

6. Health check

Verifies the agent socket is responsive and prints the final installation report.

Stack installer

Installer modules (service provisioning)

Apache & Nginx

Web servers with virtual host management. Apache handles PHP via FPM. Nginx can serve as reverse proxy or front-end.

PHP-FPM

Multi-version PHP support. Per-site PHP version selection with FPM pool configuration. Extensions installable through the panel.

MariaDB / MySQL

Database server with per-tenant schemas and users. phpMyAdmin integration for web-based management.

Postfix & Dovecot

SMTP (Postfix) and IMAP/POP3 (Dovecot) with per-mailbox quotas, DKIM signing via OpenDKIM and DMARC verification.

Rspamd & ClamAV

Spam filtering through Rspamd. Antivirus scanning through ClamAV with on-demand and scheduled scans. Quarantine management.

BIND9

Authoritative DNS server. Zone files managed by the panel with automatic record creation for websites and mail.

ProFTPD

FTP server with virtual users. Per-website accounts scoped to document roots.

Let's Encrypt

Automatic SSL certificate issuance and renewal via the ACME protocol. Integrated with the job queue for hands-free HTTPS.

Fail2Ban & UFW

Intrusion prevention with configurable jails. Firewall rule management with service presets and lockout protection.

ModSecurity

Web application firewall with OWASP Core Rule Set. Per-category toggle for SQLi, XSS, RCE, file inclusion and more.

Varnish & Redis

HTTP acceleration with Varnish. Object caching with Redis or Memcached. Per-site caching control.

Roundcube

Webmail client pre-configured for the panel's Dovecot IMAP server. Accessible to mail customers.

2. Client Guide

What customers can do

Customers log in to the panel and manage their own resources through a self-service interface. The navigation adapts to their customer type (Domain Only, Mail Only, Web Hosting, Combined or Reseller) and the modules enabled in their package.

Websites

Create and manage websites. Select the PHP version per site. Configure custom directives, view access logs and manage document roots. Each website binds to a domain or subdomain.

Mailboxes

Create mailboxes with IMAP/POP3 access. Configure forwarding and aliases. View quota usage. Access webmail through Roundcube.

Databases

Create MariaDB databases and users. Access phpMyAdmin for management. Each database is isolated with host-restricted grants.

DNS records

Manage A, AAAA, MX, CNAME, TXT and SRV records for domains. Changes are validated and synced to the BIND9 zone automatically.

SSL certificates

Request and renew Let's Encrypt SSL certificates for websites. HTTPS is configured automatically with HTTP-to-HTTPS redirect.

FTP accounts

Create FTP accounts scoped to website directories. Upload and manage files through any FTP client.

Cron jobs

Create and manage scheduled tasks through the panel. Standard crontab syntax with a user-friendly scheduling interface.

Backups

View available backups of websites and databases. Restore from backup on demand.

Application installer

Deploy WordPress, Joomla, Nextcloud and other applications with one click. The installer provisions the database, configures the application and sets up SSL.

Caching

Enable or disable HTTP caching per website. Purge the cache when content changes.

Statistics

View bandwidth and storage usage. Monitor resource consumption against package quotas.

Profile & security

Change password, enable two-factor authentication (TOTP), view session activity and manage API tokens.

Customer types

What each customer type can access

Domain Only

Domain registration and DNS management. Nameserver configuration. No web hosting or mail.

Mail Only

Mail domains, mailboxes, aliases and spam filtering. Domain and DNS management included. No website provisioning.

Web Hosting

Websites, databases, FTP, SSL, backups, cron jobs, Python apps, caching and application installer. DNS management included.

Combined

Full access: websites, mail, databases, DNS, SSL, FTP, backups, cron, Python apps, caching and applications. Everything in one package.

Reseller

All Combined modules plus the ability to create and manage sub-customers. Isolated tenant with resource quotas delegated by the platform admin.

3. Administrator Guide

Platform administration

Administrators (ADMIN and SUPER_ADMIN roles) manage servers, packages, tenants and platform-wide settings through the panel.

Server management

Register servers as SpeedyCtlNode entries with transport configuration. Monitor server health (CPU, memory, disk, load). Ping nodes to verify agent connectivity. View ServerStat history.

Package management

Create and configure hosting packages with module entitlements. Set resource quotas (websites, mailboxes, disk, traffic). Define pricing and billing periods. Control overselling per package.

Tenant & customer management

Create tenants and assign packages. Manage customer accounts. View per-tenant resource usage. Suspend or activate tenants. Access any tenant for support (SUPER_ADMIN only).

Security management

Configure ModSecurity CRS categories per server. Tune Fail2Ban jails (bantime, findtime, maxretry). Manage UFW firewall rules. Trigger ClamAV scans and manage quarantine.

License management

Install and activate the platform license. The license controls which modules are available. SUPER_ADMIN only — this permission is never granted to other roles.

Usage monitoring

View per-tenant disk and traffic consumption. The system warns tenants at 80% quota. Automatic suspension when traffic quota is exhausted (if overselling is disabled).

Job queue

Monitor all provisioning jobs across servers. View job logs and progress. Cancel stuck jobs (ADMIN). Resolve failed jobs without re-execution.

Audit trail

Review the HMAC-SHA256 chained audit log. Every administrative action is recorded with actor, tenant, action, result and previous/new values. Verify chain integrity to detect tampering.

Roles & permissions

Role-based access control

SUPER_ADMIN

Full platform control: manage servers, licenses, packages, resellers and all tenants. Can access any tenant, override any setting and verify audit log integrity. Only role that can manage licenses.

ADMIN

Platform administration: manage assigned servers, create packages, create tenants, manage customer resources, configure security, view audit logs. Cannot manage licenses.

RESELLER

Customer delegation: create and manage sub-tenants within their quota. Assign packages to customers, manage customer resources, view domains, DNS, websites, mail, databases, FTP, SSL, backups, cron, stats and applications.

CUSTOMER

Self-service: manage their own websites, mailboxes, databases, DNS records, SSL certificates, FTP accounts, cron jobs, backups, applications and caching. Cannot see other customers' resources.

Admin pages

Panel pages for administrators

Dashboard

Overview of all servers, active jobs and system health.

Servers

Register and manage server nodes. View health and stats.

Fail2Ban

Toggle and tune intrusion prevention jails per server.

Firewall (UFW)

Manage firewall rules with service presets and lockout protection.

ModSecurity

Toggle OWASP CRS protection categories per server.

ClamAV

Launch scans, manage quarantine and update signatures.

PHP Manager

Install and manage PHP versions and extensions server-wide.

Applications

Curate the application catalogue and manage caching daemons.

Statistics

Server-wide usage statistics and capacity planning data.

SMTP Settings

Configure outbound mail relay and delivery settings.

Roles & Permissions

View and manage role assignments and permission grants.

Monitor

Real-time server health charts from ServerStat samples.

Need help getting started?

Contact us for installation support, training or custom configuration.