Get Rewarded! We will reward you with up to €50 credit on your account for every tutorial that you write and we publish!

How To Install ISPConfig on Ubuntu 20.04 LTS

profile picture
Author
Azad Shaikh
Published
2022-03-09
Time to read
6 minutes reading time

About the author- CTO @ Maskoid Technologies Private Limited

Introduction

Welcome to the tutorial titled How To Install ISPConfig on Ubuntu 20.04 LTS. ISPConfig is an open-source hosting control panel for Linux distributors. ISPConfig allows administrators to manage websites, email addresses, MySQL and MariaDB databases, FTP accounts, Shell accounts and DNS records through web-based UI. ISPConfig supports Linux-based operating systems like CentOS, Debian, Fedora, OpenSUSE and Ubuntu.

Features

Below are some of the best features supported by ISPConfig.

  • You can manage single or multiple servers from one control panel. Using Master/Slave Setup
  • Complete Web Server management for both Apache and Nginx servers.
  • Mail server management with spam and antivirus filter using Postfix (MTA) and Dovecot (IMAP).
  • BIND Server and DNS server management.
  • Administrator, Reseller, Client and Mail-user login accounts.
  • Website statistics with Webalizer and AWStats.

Prerequisites

For installing ISPConfig, you will need root access to your server.

ISPConfig needs very minimal system requirements for basic setup.

  • CPU: 2 vCores
  • RAM: 2 GB
  • Space: 20 GB

We are using the below terminology in this tutorial:

  • Username: root (any root privileges user).
  • Hostname: ispconfig.example.com (you can set as you like).
  • Domain: example.com (you can set as you like).
  • ISPConfig Username: Admin (default user).

Step 1 - Configure the hostname and hosts (Optional)

We use nano editor, but you can use your favourite.

nano /etc/hosts

You can see as below output :

hostname hosts file

It might be a different output base of your server provider. Now edit the /etc/hosts file :

For an example we used ispconfig.example.com

edit hostfile

To save your edits, press Ctrl + X, then Y and hit Enter.

Now edit /etc/hostname file for setup hostname of server:

nano /etc/hostname

You will have to reboot the server to apply this change.

systemctl reboot

Before going further, we will check if the hostname is correct.

hostname

OR

hostname -f

The output shall be like this:

checking hostname

Now we will update and upgrade our server using the below command.

apt update && apt upgrade

Pre installations steps are completed, and now we will start ISPConfig installation on Ubuntu 20.04 LTS.

Step 2 - Run installer for ISPConfig

For this tutorial, we will install ISPConfig with Nginx, PHP (7.4 and 8.0), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats and GoAcces. If you want a different configuration, then check out all the options mentioned at the end of this tutorial.

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx  --use-php=7.4,8.0 --use-ftp-ports=21-22 --lang=en --no-quota --unattended-upgrades

After a few seconds, Installer will confirm about installing ISPConfig. Write "yes" and hit Enter.

confirm message

  • Save Admin and MySQL password

Once installation is successfully completed. You will see the admin and MySQL root password. Save your ISPConfig passwords safely; you need it for login.

admin and db password

Step 3 - Login to ISPConfig

Your server is now set up and ready to use. You can login at: https://your-ip-or-URL:8080

longin ui

Use your credentials for login. The default username is admin and password displayed on Step 3.

Your setup is now done! Now you can create a user, website and host your website. ISPConfig dashboard looks like this:

admin loginpage

Step 4 - Important Settings

  • Change password under Tools tab.

change password

  • Setup firewall under System tab, click on Add Firewall record.

firewall

  • Change or update port as your requirement.
  • Note: make sure ports are open on your server before updating.

firewall tab

Step 5 - Add client

So, all are done; let's add our first client.

  • Go to Client.

add user

  • Now go to Add new client.

add new client

  • Fill all details like username, password & basic information about Client.

adding client

Step 6 - Add a Site

We just created a client. Now, log in as the user and click Go to Sites.

go to sites

  • Fill details like Domain, Space, Traffic Quota, PHP Version and hit Save.

web domain

  • Sites are listed under the Go to Sites tab. Click to view icon for the open site on a new tab.

click to view site

  • Your webpage will look like this:

webpage view

Step 7 - Bonus Settings (Optional)

  • If you want to install Nginx + PHP (7.0 or older) without mail service, use this command:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx  --use-php=5.5,5.6,7.0--use-ftp-ports=21-22 --no-mail --lang=en --no-quota --unattended-upgrades
  • If you want to install Apache instead of Nginx, use this command:
wget -O - https://get.ispconfig.org | sh -s --  --use-php=7.4,8.0 --use-ftp-ports=21-22 --lang=en --no-quota --unattended-upgrades
  • The auto-installer has various command-line options to fine-tune the setup. You can, e.g. choose between Apache and Nginx webserver and which services shall be installed on the system.

final arrgu

Conclusion

In this tutorial, we learned how to install ISPConfig on Ubuntu 20.04. ISPconfig works really well with Hetzner VPS. Give it a try!

Cheers!

License: MIT
Want to contribute?

Get Rewarded: Get up to €50 in credit! Be a part of the community and contribute. Do it for the money. Do it for the bragging rights. And do it to teach others!

Report Issue
Try Hetzner Cloud

Get €20/$20 free credit!

Valid until: 31 December 2025 Valid for: 3 months and only for new customers
Get started
Want to contribute?

Get Rewarded: Get up to €50 credit on your account for every tutorial you write and we publish!

Find out more