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:
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