Skip to content

Deployment Overview of ISPmanager on Server

Prerequisites and Basic Requirements

The deployment process requires a server running a specific operating system version with root privileges. The following conditions must be met before initiating the installation:

  • Operating System: Ubuntu 22.04. The installer explicitly checks for this distribution and version.

  • Privileges: Root access is required to execute the installation script and modify system services.

  • Domain Configuration: A valid domain name must be configured with an A record pointing to the server's public IP address to enable Let's Encrypt SSL certificate generation.

  • Network Ports: The installation script handles necessary network configurations, but the server must have outbound internet access to download the installer and dependencies.

  • System Services: The installation process temporarily stops and disables AppArmor and masks apt related services (such as unattended-upgrades, apt-daily, and apt-daily-upgrade) to prevent package manager conflicts during the setup.

File and Directory Structure

The installation script places the ISPmanager application and its components in specific directories within the file system. Key locations include:

  • Installer Script: The initial installation script is downloaded to /root/install.eu.sh.

  • Binary Location: The main ISPmanager binary is installed at /usr/local/mgr5/sbin/ispmgr.

  • Installation Logs: Detailed logs of the installation process are written to /root/isp_install.log.

  • Configuration and Data: While specific configuration file paths are managed internally by the application, the installer sets up the necessary directory structure for the control panel, databases, and web services.

Application Installation Process

The application is installed using the official ISPmanager installer script. The process involves downloading the script, modifying it for non-interactive execution, and running it with specific parameters.

  1. Download the Installer: The script is retrieved from https://download.ispmanager.com/install.eu.sh and saved to /root/install.eu.sh with executable permissions (0755).

  2. Modify the Script: The installer is patched to automatically answer interactive prompts. The modifications force the following selections:

    • Selection of the s option for server type.

    • Selection of 1 for database and configuration options.

  3. Execute the Installer: The script is run with the following arguments:

    • --release stable: Installs the stable version of the software.

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

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

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

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

    • ispmanager-lite: Installs the Lite edition of the control panel.

    • --le-domain <domain>: If the domain resolves correctly to the server's public IP, this flag is added to automatically configure Let's Encrypt SSL. Otherwise, --no-letsencrypt is used.

The installation command is executed as follows:

sh /root/install.eu.sh --release stable --ignore-hostname --silent --dbtype mysql --mysql-server mariadb ispmanager-lite

Access Rights and Security

The deployment script manages system security settings to ensure a clean installation environment:

  • AppArmor: The apparmor service is stopped and disabled to prevent potential conflicts with the control panel's security modules.

  • Package Manager Locks: The script actively terminates processes holding locks on /var/lib/dpkg/lock-frontend, /var/lib/dpkg/lock, and /var/cache/apt/archives/lock to ensure the package manager is available.

  • Automatic Updates: Services responsible for automatic updates (unattended-upgrades, apt-daily, apt-daily-upgrade) are masked and stopped during the installation. After the installation completes, these services are unmasked and re-enabled to restore the system's update schedule.

  • Firewall: The provided configuration does not explicitly configure firewall rules (such as ufw or iptables); the user must ensure that necessary ports for the control panel and web services are open on the server's firewall.

Databases

The deployment configures the database subsystem as follows:

  • Database Type: MySQL.

  • Database Server: MariaDB.

  • Configuration: The installer is invoked with --dbtype mysql and --mysql-server mariadb flags, which triggers the installation and configuration of the MariaDB server as the backend for ISPmanager.

  • Storage: Database files are stored in the default locations managed by the MariaDB service on Ubuntu 22.04.

Starting, Stopping, and Updating

The ISPmanager application is managed as a system service. Once installed, the service is typically started automatically by the installer.

  • Service Management: The application runs under the systemd service manager. Standard systemctl commands are used to control the service state.

  • Update Mechanism: After the installation, the system's automatic update services (apt-daily, unattended-upgrades) are re-enabled. ISPmanager updates are generally handled through the control panel interface or by running the installer script again with update flags, though the provided script focuses on the initial deployment.

  • Verification: The installation process waits for the creation of the binary at /usr/local/mgr5/sbin/ispmgr to confirm successful deployment.

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