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: 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 8: 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.
Reference:

    
Top comments (0)