Introduction
ISPConfig is a very popular open‑source hosting control panel that lets
you manage websites, email accounts, DNS records, FTP, and more. Using
Nginx as the web server is typically more performant than Apache for
many scenarios (especially static content, reverse‑proxying etc). This
guide shows how to install ISPConfig 3 + Nginx on Ubuntu 22.04, starting
from a fresh system.
Important: This setup assumes a fresh, clean OS install with
minimal/no prior custom configuration. Doing this on a server with
many existing services/configs may lead to conflicts.
(howtoforge.com)
Prerequisites
Before you begin: - A server running Ubuntu 22.04 (64‑bit) with internet
access. - A hostname set correctly (see below). - A public IP address,
reachable, DNS configured (so your hostname resolves). - Ports such as
HTTP (80), HTTPS (443), and the ISPConfig panel port (8080) must not be
blocked. - You'll be logged in as root (or using sudo). - The OS should
be essentially "clean" (no major services already installed or
customised that the auto‑installer will clobber).
Step 1: Log in to the server
sudo -s Step 2: Configure the hostname and hosts file
Pick a fully qualified domain name (FQDN) for your server such as
server1.example.com. Do not just useexample.com.-
Edit
/etc/hosts:
nano /etc/hostsand ensure you have a line like:
127.0.1.1 server1.example.com server1 -
Edit
/etc/hostname:
nano /etc/hostnamePut only the short hostname (e.g.,
server1). -
Reboot the server:
systemctl rebootAfter reboot, verify:
hostname hostname -f Ensure your DNS provider has an A (and/or AAAA) record for
server1.example.compointing to your server's public IP.
Step 3: Update the system
apt update && apt upgrade -y Step 4: Run the auto‑installer for ISPConfig with Nginx
Now is the key part: installing ISPConfig and choosing Nginx as the web
server.
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades What the arguments mean
-
--use-nginx→ use Nginx instead of Apache. -
--use-ftp-ports=40110-40210→ set passive FTP port range for Pure‑FTPd. -
--unattended-upgrades→ enables automatic updates/upgrades.
After installation completes
You'll see the generated passwords, e.g.:
[INFO] Your ISPConfig admin password is: <password> [INFO] Your MySQL root password is: <password> Ensure you record these.
Step 5: Setting up the firewall
Allow necessary ports through UFW or within ISPConfig UI → System →
Firewall.
TCP ports:
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081 UDP:
53 Step 6: Finalizing
Log into ISPConfig panel:
https://server1.example.com:8080 Login user: admin
Step 7: Adding Your Website
Once you are inside the ISPConfig panel, you can start adding new
websites under Sites → Add new site.
Before you add a website: - Ensure your domain name (e.g.,
example.com) is already pointing to your server's public IP
address. - You can check your DNS propagation and record setup using
https://dnschecker.org/.
If your domain is not yet propagated or pointing to the correct IP, the
site might not load correctly.
Steps to add a site:
- Go to Sites → Add new website.
- Enter your domain name (e.g.,
example.com). - Choose the IP address of your server (you can leave it as * if you want ISPConfig to use all available IPs).
- Set PHP version, SSL (Let's Encrypt), and other options.
- Save your configuration.
After saving, ISPConfig will create the Nginx virtual host configuration
automatically.
Step 8: Advanced options
-
--channel=<stable|dev>→ choose branch -
--lang=en|de→ choose language -
--use-php=7.4,8.1→ install specific PHP versions -
--no-mail→ skip mail server -
--no-dns→ skip DNS server -
--debug→ detailed log in/tmp/ispconfig-ai/var/log/ispconfig.log
Example for minimal install:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades Step 9: Troubleshooting
- Rerun with
--debugif installation fails. - Check
/tmp/ispconfig-ai/var/log/ispconfig.logfor details. - Ensure fresh OS install to avoid config conflicts.
Summary
You can now manage websites, email, DNS, databases, and FTP through
ISPConfig 3 with Nginx on Ubuntu 22.04.
Before adding sites, make sure your domain and public IP setup are
verified using DNSChecker.org.
Reference:

Top comments (0)