How to Successfully Upgrade from ISPConfig 3.1 to 3.2

This guide provides a step-by-step approach to upgrading an ISPConfig 3.1 server to ISPConfig 3.2. It is compatible with CentOS, Debian, and Ubuntu operating systems.

We recommend you to review the ISPConfig 3.2 release notes for details on new features and additional information.

Verify ISPConfig 3.2 System Requirements

Ensure compatibility by checking your operating system version against the supported versions below:

  • CentOS 7
  • CentOS 8
  • Debian 9
  • Debian 10
  • Ubuntu 16.04 LTS
  • Ubuntu 18.04 LTS
  • Ubuntu 20.04 LTS

Does ISPConfig 3.2 work on older OS versions? It might work if the default PHP version is at least 5.4, although ISPConfig does not officially support older versions. Manual configuration may be required in such cases.

Install Necessary Software Dependencies

The following packages are required for additional features in ISPConfig 3.2. Install them before proceeding with the update:

For Debian and Ubuntu

sudo apt-get install bzip2 p7zip-full xz-utils lzip rar unrar-free goaccess dovecot-lmtpd

Note: The rar and unrar-free packages are unavailable on ARM architecture, which affects website backup functionality only in rar format.

For CentOS 7

sudo yum -y install ncurses-devel gcc geoip-devel tokyocabinet-devel lbzip2 p7zip xz-libs lzip
cd /tmp
wget http://tar.goaccess.io/goaccess-1.4.tar.gz
tar xfz goaccess-1.4.tar.gz
cd goaccess-1.4
sudo ./configure --enable-utf8 --enable-geoip=legacy
sudo make
sudo make install
sudo ln -s /usr/local/bin/goaccess /usr/bin/goaccess

For CentOS 8

dnf install ncurses-devel gcc geoip-devel tokyocabinet-devel lbzip2 p7zip p7zip-plugins xz-libs lzip
cd /tmp
wget http://tar.goaccess.io/goaccess-1.4.tar.gz
tar xfz goaccess-1.4.tar.gz
cd goaccess-1.4
sudo ./configure --enable-utf8 --enable-geoip=legacy
sudo make
sudo make install
sudo ln -s /usr/local/bin/goaccess /usr/bin/goaccess

CentOS 7 and 8

CentOS lacks a free rar package. A trial version from rarlab is available if needed, though installation is optional:

cd /tmp
wget https://www.rarlab.com/rar/rarlinux-x64-5.9.1.tar.gz
tar -zxvf rarlinux-x64-5.9.1.tar.gz
cd rar
sudo cp -v rar unrar /usr/local/bin/

Verify Custom Configuration File Templates

Check for custom configuration file templates stored at /usr/local/ispconfig/server/conf-custom/. These templates may conflict with ISPConfig 3.2 and should be updated or removed.

ls -la /usr/local/ispconfig/server/conf-custom/

Ensure the directory is empty or contains only default files:

[root@server1 tmp]# ls -la /usr/local/ispconfig/server/conf-custom/
total 8
drwxr-x---.  6 root root   76 Oct  1 00:02 .
drwxr-x---. 13 root root 4096 Oct  1 00:02 ..
-rwxr-x---.  1 root root   45 Oct  1 00:02 empty.dir
drwxr-x---.  2 root root   23 Oct  1 00:02 error
drwxr-x---.  2 root root   23 Oct  1 00:02 index
drwxr-x---.  2 root root   23 Oct  1 00:02 install
drwxr-x---.  2 root root   23 Oct  1 00:02 mail

Repeat the check for the install folder:

ls -la /usr/local/ispconfig/server/conf-custom/install/
[root@server1 tmp]# ls -la /usr/local/ispconfig/server/conf-custom/install/
total 4
drwxr-x---. 2 root root 23 Oct  1 00:02 .
drwxr-x---. 6 root root 76 Oct  1 00:02 ..
-rwxr-x---. 1 root root 45 Oct  1 00:02 empty.dir

This indicates no custom templates are present.

Let’s Encrypt for ISPConfig Port 8080, Postfix, Dovecot, and Pure-ftpd

Ensure that manual Let’s Encrypt configurations do not conflict with ISPConfig’s built-in functionality. Opt to retain your custom setup if prompted by the updater, or ensure no conflicting scripts exist.

Update from ISPConfig 3.1 to 3.2

Begin the upgrade process by acquiring root privileges. For Debian, use:

su -

On CentOS and Ubuntu, use:

sudo -s

Execute the update with:

ispconfig_update.sh

Select “stable” as your update source during the setup:

ISPConfig stable update

Note: The options available may vary based on your existing ISPConfig version, but “stable” will be present.

During the update, follow these recommended responses:

--------------------------------------------------------------------------------
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |  |_ |
 _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| | ___\ \
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
                                              __/ |
                                             |___/
--------------------------------------------------------------------------------


>> Update

Operating System: Ubuntu 20.04.1 LTS (Focal Fossa)

This application will update ISPConfig 3 on your server.

Shall the script create a ISPConfig backup in /var/backup/ now? (yes,no) [yes]: yes

Creating backup of "/usr/local/ispconfig" directory...
Creating backup of "/etc" directory...
Checking ISPConfig database .. OK
Starting incremental database update.
Loading SQL patch file: /tmp/ispconfig3_install/install/sql/incremental/upd_dev_collection.sql
Reconfigure Permissions in master database? (yes,no) [no]: <-- On multiserver systems, choose yes, on single server systems, choose no.

Reconfigure Services? (yes,no,selected) [yes]: yes

Configuring Postfix
Configuring Dovecot
Configuring Mailman
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring BIND
Configuring Pureftpd
Configuring Apache
Configuring vlogger
Configuring Apps vhost
Configuring Jailkit
Configuring Ubuntu Firewall
Configuring Database
Updating ISPConfig
ISPConfig Port [8080]: <-- just hit return to accept the default

Create new ISPConfig SSL certificate (yes,no) [no]: <-- Choose no to keep existing SSL cert, choose yes to create new SSL cert or switch from self-signed to a Let's encrypt SSL certificate.

Reconfigure Crontab? (yes,no) [yes]: yes

Updating Crontab
Restarting services ...
Update finished.

The process may list additional configurations based on your server’s software setup.

Need Assistance with the Update?

If you encounter issues or have inquiries about the update, engage with the ISPConfig support forum here:

https://www.howtoforge.com/community/forums/installation-configuration.27/

Avoid using article comments for individual support.

Encountered Problems and Need to Revert?

The ISPConfig updater generates a backup of your entire /etc directory, /usr/local/ispconfig directory, and ISPConfig database dbispconfig. This backup is stored in /var/backup/ with a timestamp.

[root@server1 ~]# ls /var/backup/
ispconfig_server1.example.com_2020-10-15_19-38

The folder includes file backups and a SQL dump:

[root@server1 ~]# ls /var/backup/ispconfig_server1.example.com_2020-10-15_19-38/
etc.tar.gz  ispconfig_db_backup.sql  ispconfig_software.tar.gz

Relevant Links