Web hosting panels can also be referred to as control panels. They allow users to manage various servers and hosted services. They provide several features and advantages that include one-click deployment, automated health alerts, mail server support, domain management, backup and security tasks. There are several Web hosting panels in the market today, the most popular ones are cPanel, Plesk, DirectAdmin, ISPConfig, Webmin etc.
ISPConfig is one of the popularly used Web Hosting Panel. It allows users to manage hosting environments using a web UI. It offers several features that make managing aspects of web hosting easier. The cool features make it a suitable choice for system administrators and hosting providers.
The features and benefits associated with ISPConfig are:
- Multi-Server Management: with ISPConfig, you can easily manage multiple servers from a central control panel. This can be significant to those who want to manage a cluster of servers in their environment.
- Domain and Website Management: ISPConfig makes it easier to manage domains, subdomains, and websites. It offers tools that can be used for domain registration, DNS management, virtual host configuration and deploying a website. It is also possible to manage email accounts, databases and FTP accounts for each domain
- Security and Access Control: ISPConfig supports secure FTP (SFTP), firewall, SSL/TLS certificates, firewall configuration, and IP address blacklisting. It also allows you to define the permissions and access levels for users which provides proper security to the systems.
- User and Reseller Management: You can also create user accounts with permissions and resources allocated to them. You can set up reseller accounts and allow users to resell hosting services under their own brand.
- Extensibility and Customization: ISPConfig is highly customizable. This means that you can extend its functionality using additional modules and plugins
- Open-Source and Community Support: As open-source software, ISPConfig benefits a lot from the large community of users and developers who provide support and contribute to its development.
In this guide, we will walk through how to install ISPConfig Web Hosting Panel on Debian 11
Step 1: Prepare Debian System
To be able to install ISPConfig Web Hosting Panel on Debian 11, you need a system that meets the below specifications.
- CPU: 2 vCores
- RAM: 3 GB and above
- Space: 40 GB and above
You need to ensure that the hostname is set:
sudo hostnamectl set-hostname serv.yazilimyukle.com
You need to map the entry in the /etc/hosts file:
$ sudo vim /etc/hosts
192.168.1.200 serv.yazilimyukle.com
Verify the made changes:
$ hostname -f
serv.yazilimyukle.com
Update the system and the available packages:
sudo apt update && sudo apt upgrade -y
Run the autoinstaller
We can now run the auto-installer. The basic setup contains the following software packages (plus their dependencies, of course): Apache2, PHP (versions 5.6 – 8.3), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats and GoAccess. You can easily choose not to use certain functions or install extra services by passing arguments to the installer. See Chapter 6 for available command-line options.
Install ISPConfig with Apache web server
You can now run the script with arguments. For example, if you want a normal install with Apache web server and a port range for Passive FTP + unattended-upgrades, run:
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades
The following steps are described in the chapter “Running the auto installer”.
Install ISPConfig with Nginx web server
You can now run the script with arguments. For example, if you want a normal install with Nginx web server and a port range for Passive FTP + unattended-upgrades, run:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
Running the auto-installer
After some time, you will see:
WARNING! This script will reconfigure your complete server!
It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!
Type ‘yes’ if you really want to continue:
Answer “yes” and hit enter. The installer will now start.
When the installer is finished, it will show you the ISPConfig admin and MySQL root password like this:
[INFO] Your ISPConfig admin password is: paz9LMa4UGW3atR
[INFO] Your MySQL root password is: kbZTXV1zfZrxrKVmhAPJ
[INFO] Warning: Please delete the log files in /root/ispconfig-install-log/setup-* once you don’t need them anymore because they contain your passwords!
Setting up the firewall
The last thing to do is to set up our firewall.
Log in to the ISPConfig UI, and go to System -> Firewall. Then click “Add new firewall record”.
For a normal setup, it would look like this:
TCP:
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
UDP:
53
The necessary ports for every service are:
Web: 20, 21, 22, 80, 443 and 40110:40210 (All TCP, no UDP)
Mail: 25, 110, 143, 465, 587, 993, and 995 (All TCP, no UDP)
DNS: 53 (TCP and UDP)
Panel: 8080 and 8081 (All TCP, no UDP)
Your server is now set up and ready for use. You can log in at https://serv.yazilimyukle.com:8080