Skip to content

Deployment Overview of ISPmanager on Server

Prerequisites and Basic Requirements

The deployment of ISPmanager requires a specific operating system environment and root-level privileges to execute installation scripts and manage system services.

  • Operating System: Ubuntu 22.04 LTS.

  • Privileges: Root access is required to install packages, modify system configurations, and run the installer script.

  • Network Access: The server must have outbound internet access to download the installer and dependencies.

  • DNS Configuration: An A record must be configured for the target domain pointing to the server's public IPv4 address to enable Let's Encrypt certificate issuance.

FQDN of the Final Panel

The fully qualified domain name (FQDN) for the ISPmanager panel is constructed using a specific prefix and the server identifier. The format follows the pattern <prefix><Server ID>.hostkey.in.

  • Zone: hostkey.in

  • Prefix: isp

  • Final Domain Format: isp<Server ID>.hostkey.in

  • Access Port: 443 (HTTPS)

Application Installation Process

The application is installed using the official ISPmanager installer script (install.eu.sh). The process involves downloading the script, modifying it to bypass interactive prompts, and executing it with specific parameters.

  1. Prerequisite Installation: Essential tools such as wget, curl, ca-certificates, gnupg, gpg, and dnsutils are installed via apt.

  2. System Preparation:

    • AppArmor is stopped and disabled.

    • APT-related services (unattended-upgrades, apt-daily, apt-daily-upgrade) are stopped, masked, and any existing locks are cleared to prevent installation conflicts.

  3. Installer Download: The script is downloaded from https://download.ispmanager.com/install.eu.sh to /root/install.eu.sh.

  4. Script Modification: The installer script is patched using sed to automatically answer interactive questions (selecting "s" for silent/standard options and "1" for default choices).

  5. Execution: The installer is run with the following parameters:

    • --release stable: Installs the stable release.

    • --ignore-hostname: Allows installation regardless of the system hostname.

    • --silent: Runs the installation without interactive prompts.

    • --dbtype mysql: Specifies MySQL as the database type.

    • --mysql-server mariadb: Specifies MariaDB as the database server.

    • ispmanager-lite: Installs the Lite flavor of ISPmanager.

    • --le-domain <domain>: If DNS resolution matches the public IP, Let's Encrypt SSL certificates are automatically configured. Otherwise, --no-letsencrypt is used.

Databases

The application utilizes a relational database for storing configuration and user data.

  • Database Type: MySQL

  • Database Server: MariaDB

  • Storage Location: Default MariaDB data directories managed by the system package manager.

Proxy Servers and SSL Configuration

The deployment script handles SSL certificate provisioning based on DNS validation.

  • SSL Provider: Let's Encrypt.

  • Condition: Certificates are issued only if the A record for the FQDN resolves to the server's public IPv4 address.

  • Configuration: The installer is invoked with --le-domain to automate the SSL setup for the panel domain.

Available Ports for Connection

The following ports are configured for accessing the ISPmanager panel:

Port Protocol Purpose
443 HTTPS External access to the ISPmanager panel.
1500 TCP Internal management port (used internally by the application).

Starting, Stopping, and Updating

ISPmanager services are managed via the ispcp service or direct binary execution. The primary service binary is located at /usr/local/mgr5/sbin/ispmgr.

  • Service Management: Standard systemd commands can be used to manage the ISPmanager service if the installer creates a systemd unit. Otherwise, the application runs as a daemon managed by its own control scripts.

  • Installation Log: The installation process output is logged to /root/isp_install.log.

File and Directory Structure

Key files and directories created or modified during the deployment include:

  • Installer Script: /root/install.eu.sh

  • Installation Log: /root/isp_install.log

  • ISPmanager Binary: /usr/local/mgr5/sbin/ispmgr

  • Configuration Files: Located within the /usr/local/mgr5/ directory structure, managed by the ISPmanager application itself.

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×