Deployment Overview of Ispmanager on Server¶
Prerequisites and Basic Requirements¶
To ensure a successful installation, the server must meet the following requirements:
-
Operating System: Ubuntu 22.04 (strictly required).
-
Privileges: Root or sudo access is required to execute installation scripts and manage system services.
-
Network Connectivity: The server must have outbound internet access to download necessary packages and the installer script.
-
DNS Configuration: An A record must be configured for the management domain to allow for SSL certificate acquisition via Let's Encrypt.
FQDN of the final panel on the hostkey.in domain¶
The management interface is accessible via a specific subdomain generated based on the server ID. The template for this domain is as follows:
| Parameter | Value |
|---|---|
| Prefix | isp |
| Domain | hostkey.in |
| Full template | isp{Server_ID_from_Invapi}.hostkey.in |
Application installation process¶
The application is installed using a dedicated installer script provided by the developer. The installation process follows these steps:
-
System Preparation:
-
AppArmor is stopped and disabled.
-
Unattended upgrades and
aptdaily services are temporarily masked to prevent package manager locks during installation. -
Dependency Installation: Essential utilities including
wget,curl,ca-certificates,gnupg,gpg, anddnsutilsare installed via theaptpackage manager. -
Installer Acquisition: The official ISPmanager installer script is downloaded from
https://download.ispmanager.com/install.eu.sh. -
Automated Configuration: The installation script is modified to automatically accept default configuration prompts (such as license selection and database setup) to allow for a non-interactive deployment.
-
Main Installation: The installer is executed with the following parameters:
-
Release:
stable -
Flavor:
ispmanager-lite -
Database Type:
mysql(utilizingmariadb) -
SSL/TLS: If a valid A record and public IP match are detected, Let's Encrypt is automatically configured for the management domain.
Access Rights and Security¶
-
Firewall: The installation process requires specific ports to be open for management access.
-
System Services: After the installation completes,
unattended-upgradesandaptdaily timers are unmasked and re-enabled to ensure system security updates continue automatically.
Databases¶
The application utilizes a local database server for data storage:
-
Database Engine: MariaDB (MySQL compatible).
-
Configuration: The database is configured during the installation phase as part of the core setup.
Custom Scripts and Additional Setup¶
During the deployment, several automated actions are performed to prepare the environment:
-
Installer Patching: A script modifies the installer's interactive prompts (
sedcommands) to ensure a silent installation experience. -
System Cleanup: The system performs
dpkg --configure -ato fix any interrupted package installations before starting the main setup. -
Process Management: Active
aptorunattended-upgradesprocesses are terminated if they hold locks on the package manager.
Application Update Instructions¶
To update the ISPmanager application, you must re-run the installation script using the same parameters used during the initial deployment:
bash -lc 'sh /root/install.eu.sh --release stable --ignore-hostname --silent [SSL_ARGS] --dbtype mysql --mysql-server mariadb ispmanager-lite'
Location of configuration files and data¶
-
Application Binaries:
/usr/local/mgr5/sbin/ispmgr -
Installation Logs:
/root/isp_install.log
Available ports for connection¶
The following ports are used for accessing the management interface:
| Service | Port | Protocol |
|---|---|---|
| Management Interface (HTTP/HTTPS) | 443 | TCP |
| Internal Management Port | 1500 | TCP |