Deployment Overview of ISPmanager on Server¶
Prerequisites and Basic Requirements¶
The deployment of ISPmanager requires a specific operating system environment and network configuration to function correctly. The system must meet the following criteria before initiating the installation:
-
Operating System: Ubuntu 22.04 LTS.
-
Privileges: Root access is required to execute the installation script and manage system services.
-
Domain Configuration: A fully qualified domain name (FQDN) must be configured. The system expects the domain to resolve to the server's public IP address.
-
Ports:
-
TCP 443: Used for external HTTPS access to the control panel.
-
TCP 1500: Used for internal communication.
-
-
Network Connectivity: The server must have access to the internet to download the installer and, if applicable, fetch SSL certificates.
FQDN of the Final Panel¶
The control panel is accessible via the following Fully Qualified Domain Name format:
isp{ServerID}.hostkey.in:443
-
{ServerID}is replaced by the unique server identifier. -
Access is provided over HTTPS using port 443.
File and Directory Structure¶
The installation places critical files and directories in specific locations on the filesystem:
-
Installer Script: Downloaded to
/root/install.eu.sh. -
Installation Log: Generated at
/root/isp_install.log. -
Binary Executable: The main service binary is located at
/usr/local/mgr5/sbin/ispmgr.
Application Installation Process¶
The application is installed using a custom shell script installer provided by the vendor. The process involves the following steps:
-
System Preparation:
-
AppArmor is stopped and disabled.
-
Automatic update services (
unattended-upgrades,apt-daily,apt-daily-upgrade) are temporarily masked to prevent conflicts during package installation. -
Prerequisite packages are installed, including
wget,curl,ca-certificates,gnupg,gpg, anddnsutils.
-
-
Domain Verification:
-
The installer resolves the A record for the target domain (
isp{ServerID}.hostkey.in). -
The public IP address is verified via the
ipify.orgAPI. -
If the domain resolves correctly to the server's public IP, Let's Encrypt SSL automation is enabled. If not, SSL generation is skipped.
-
-
Installer Execution:
-
The installer script is downloaded from
https://download.ispmanager.com/install.eu.sh. -
The script is patched to automatically answer interactive prompts (selecting stable release, ignoring hostname checks, and choosing the lite flavor).
-
The installation is executed with the following parameters:
-
--release stable: Deploys the stable release branch. -
--ignore-hostname: Bypasses hostname validation errors. -
--silent: Runs in non-interactive mode. -
--le-domain <isp_domain>: Enables Let's Encrypt if the domain verification passes. -
--dbtype mysql: Configures MySQL as the database backend. -
--mysql-server mariadb: Specifies MariaDB as the database server. -
ispmanager-lite: Installs the Lite edition of the panel.
-
-
-
Post-Installation:
- Automatic update services are re-enabled.
Access Rights and Security¶
The deployment script modifies several security and service configurations to ensure a clean installation:
-
AppArmor: The AppArmor security module is disabled to prevent potential conflicts with the panel's services.
-
Automatic Updates: Standard Ubuntu unattended upgrades are masked during the installation to prevent file lock issues. These services are restored after the installation completes.
-
User Privileges: The installation requires root privileges. The
DEBIAN_FRONTENDenvironment variable is set tononinteractiveduring the installation process.
Databases¶
The panel is configured to use a relational database backend with the following specifications:
-
Database Type: MySQL-compatible interface.
-
Database Server: MariaDB.
-
Configuration: The installer passes
--dbtype mysqland--mysql-server mariadbflags, ensuring the system installs and configures the MariaDB server automatically.
Available Ports for Connection¶
The following ports are configured for external and internal access:
| Port | Protocol | Purpose |
|---|---|---|
| 443 | TCP | External HTTPS access to the control panel. |
| 1500 | TCP | Internal communication port. |
Starting, Stopping, and Updating¶
Service management commands are not explicitly defined in the configuration files, but the installation creates the main executable at /usr/local/mgr5/sbin/ispmgr. The installation script logs output to /root/isp_install.log to confirm the successful completion of the ispmgr binary installation.
The system relies on the standard service management provided by the ISPmanager suite once the installation is complete. The ispmgr binary is the primary entry point for managing the panel services.