Plesk is a web hosting control panel that simplifies server, website, and email management through a clean web interface. It runs on Linux and Windows, supports multiple domains, and bundles tools for DNS, SSL, databases, and WordPress management – all from a single dashboard. The current version is Plesk Obsidian 18.0.76.
This guide covers Plesk installation on Ubuntu 24.04 and Rocky Linux 10 using the official auto-installer. We will walk through the initial setup wizard, domain management, Let’s Encrypt SSL, email configuration, firewall rules, and useful extensions like the WordPress Toolkit.
Prerequisites
Before installing Plesk, make sure you have the following in place:
- A fresh server running Ubuntu 24.04 LTS or Rocky Linux 10 with at least 2 GB RAM and 20 GB disk space (4 GB RAM recommended for production)
- Root SSH access to the server
- A fully qualified domain name (FQDN) pointing to the server IP address
- A clean server – Plesk installs its own web server, mail server, and database. Do not install Apache, Nginx, MySQL, or Postfix beforehand
- Ports 8443 (Plesk UI), 80 (HTTP), 443 (HTTPS), 25/465/587 (SMTP), 110/995 (POP3), 143/993 (IMAP) open in your cloud provider firewall
Step 1: Download the Plesk Installer
Plesk provides an auto-installer script that handles the entire installation process. Connect to your server via SSH and download the installer.
Switch to the root user if you are not already:
sudo -i
Download the Plesk installer script:
wget https://autoinstall.plesk.com/plesk-installer
Make the installer executable:
chmod +x plesk-installer
Step 2: Run the Plesk Auto-Installer
Run the installer with the recommended preset that includes the most commonly used components – web server, mail server, DNS, and the WordPress Toolkit.
./plesk-installer install plesk
This command downloads and installs all Plesk components. The process takes 10-20 minutes depending on your server hardware and network speed. You will see progress output as each component installs.
Alternatively, for a one-line install that handles everything automatically without downloading the installer first:
sh <(curl https://autoinstall.plesk.com/one-click-installer || wget -O - https://autoinstall.plesk.com/one-click-installer)
When installation completes, you will see a summary with the Plesk login URL and temporary credentials. Note these down - you will need them for the next step.
Verify Plesk is running by checking the service status:
systemctl status psa
The output should show the Plesk service as active and running.
Step 3: Access the Plesk Web Interface
Plesk listens on port 8443 for its web management interface. Open your browser and navigate to:
https://your-server-ip:8443
Accept the self-signed certificate warning (you will replace this with a proper SSL certificate shortly). If you cannot access the URL, generate a one-time login link from the command line:
plesk login
This outputs a URL with a temporary token that logs you in directly. The link expires after one use, so open it immediately in your browser.
Step 4: Complete the Initial Setup Wizard
On first login, Plesk presents a setup wizard that walks you through the essential configuration. Complete each section:
- Administrator contact - Set your name and email address. This email receives server alerts and Plesk notifications
- Admin password - Create a strong password for the admin account. This replaces the temporary credentials from installation
- Server hostname - Enter the FQDN of your server (e.g., server1.example.com). This must resolve to your server IP via DNS
- License key - Enter your Plesk license key if you have one, or start the 14-day free trial. Plesk offers Web Admin, Web Pro, and Web Host editions - see Plesk pricing for details
After completing the wizard, Plesk applies your settings and redirects you to the main dashboard. From here you can manage domains, websites, email, and server configuration.
Step 5: Add Domains to Plesk
With Plesk running, add your first domain. Navigate to Websites & Domains in the left sidebar and click Add Domain.
- Domain name - Enter the full domain (e.g., example.com)
- Webspace settings - Choose the document root and hosting type. Plesk creates the directory structure automatically
- Hosting settings - Select PHP version, enable SSH access for the domain user, and set disk space quotas if needed
Plesk creates the virtual host configuration, DNS zone, and FTP account for each domain. Make sure your domain DNS A record points to the server IP address before adding it.
You can also add subdomains from the same interface. Click on your domain name, then select Add Subdomain to create subdomain entries like blog.example.com or staging.example.com.
Step 6: Configure SSL with Let's Encrypt
Plesk includes a built-in Let's Encrypt extension that automates SSL certificate issuance and renewal. If you have set up Let's Encrypt manually before, you will appreciate how Plesk simplifies this process.
First, make sure the Let's Encrypt extension is installed. Go to Extensions in the left sidebar, search for "Let's Encrypt", and click Install if it is not already active.
To issue a certificate for a domain:
- Go to Websites & Domains and select your domain
- Click SSL/TLS Certificates
- Click Install under the Let's Encrypt section
- Enter your email address and check the boxes for the domain and www subdomain
- Optionally enable Wildcard certificate if you need coverage for all subdomains
- Click Install to issue the certificate
Plesk handles automatic renewal every 60 days. You can also secure the Plesk panel itself with a Let's Encrypt certificate - go to Tools & Settings > SSL/TLS Certificates to issue a certificate for the server hostname on port 8443.
From the command line, you can also issue a Let's Encrypt certificate:
plesk bin extension --exec letsencrypt cli.php -d example.com -d www.example.com
Step 7: Manage Email in Plesk
Plesk includes a full mail server (Postfix for SMTP, Dovecot for IMAP/POP3) configured out of the box. To create email accounts, go to Mail in the left sidebar.
Click Create Email Address and fill in the details:
- Email address - Choose the local part (e.g., admin) and select the domain from the dropdown
- Password - Set a strong password for the mailbox
- Mailbox quota - Set the storage limit (unlimited or a specific size in MB)
Plesk provides a built-in webmail client (Roundcube) accessible at https://webmail.example.com. Users can also connect with desktop or mobile email clients using standard IMAP/SMTP settings.
For spam filtering, Plesk includes SpamAssassin integration. Enable it from Mail Settings > Spam Filter. You can set the spam score threshold and choose to mark, move, or delete spam messages.
To configure DKIM, SPF, and DMARC records for better email deliverability, go to your domain mail settings and enable each option. Plesk automatically adds the required DNS records when you activate DKIM signing.
Step 8: Configure Firewall Rules
Plesk installs with its own firewall module, but you should also configure the OS-level firewall to ensure proper protection. The firewall configuration differs between Ubuntu and Rocky Linux.
On Ubuntu 24.04 (UFW):
If you use firewalld on Ubuntu, the commands are the same as Rocky Linux below. For UFW, open the required ports:
ufw allow 8443/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 25/tcp
ufw allow 465/tcp
ufw allow 587/tcp
ufw allow 110/tcp
ufw allow 143/tcp
ufw allow 993/tcp
ufw allow 995/tcp
ufw allow 53/tcp
ufw allow 53/udp
ufw reload
On Rocky Linux 10 (firewalld):
firewall-cmd --permanent --add-port=8443/tcp
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=smtp
firewall-cmd --permanent --add-service=smtps
firewall-cmd --permanent --add-service=smtp-submission
firewall-cmd --permanent --add-service=pop3
firewall-cmd --permanent --add-service=pop3s
firewall-cmd --permanent --add-service=imap
firewall-cmd --permanent --add-service=imaps
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload
The following table summarizes all ports Plesk requires:
| Port | Protocol | Service |
|---|---|---|
| 8443 | TCP | Plesk Web Interface |
| 8880 | TCP | Plesk HTTP (non-SSL) |
| 80 | TCP | HTTP |
| 443 | TCP | HTTPS |
| 21 | TCP | FTP |
| 22 | TCP | SSH |
| 25 | TCP | SMTP |
| 465 | TCP | SMTPS |
| 587 | TCP | SMTP Submission |
| 110 | TCP | POP3 |
| 995 | TCP | POP3S |
| 143 | TCP | IMAP |
| 993 | TCP | IMAPS |
| 53 | TCP/UDP | DNS |
| 3306 | TCP | MySQL/MariaDB (if remote access needed) |
Step 9: Install Plesk Extensions
Plesk has an extension catalog with over 100 tools. Go to Extensions in the left sidebar to browse and install them. Here are the most useful extensions for web hosting:
WordPress Toolkit - The standout feature of Plesk. It lets you install, clone, stage, update, and manage multiple WordPress sites from one interface. You can update themes, plugins, and core across all sites in bulk. Mass security hardening applies best practices with a single click. If you host WordPress sites, this extension alone justifies using Plesk.
Advisor - Scans your server and websites for security and performance issues, then provides actionable recommendations. It checks for outdated software, weak permissions, and missing SSL certificates.
Fail2Ban - Comes pre-installed and active by default. It monitors log files for failed login attempts and bans offending IP addresses. Plesk integrates Fail2Ban settings into its UI so you can manage ban rules without editing config files.
Docker - Run Docker containers alongside your websites. Useful for running custom applications, databases, or development tools that do not fit the traditional web hosting model.
Git - Connect Git repositories to your domains for automated deployments. Push to your repo and Plesk pulls the latest code to the web root.
To install any extension from the command line:
plesk bin extension --install wp-toolkit
List all installed extensions:
plesk bin extension --list
Step 10: Plesk vs cPanel - Key Differences
If you are deciding between Plesk and cPanel, here is a practical comparison based on real-world usage:
| Feature | Plesk | cPanel |
|---|---|---|
| OS Support | Linux and Windows | Linux only (AlmaLinux, Rocky, Ubuntu) |
| WordPress Management | WordPress Toolkit (bulk management, staging, cloning) | WordPress Manager (basic install/manage) |
| Web Server | Nginx + Apache combo or Nginx standalone | Apache with LiteSpeed option |
| Security | Fail2Ban + ModSecurity active by default | cPHulk brute-force + ModSecurity |
| Docker Support | Built-in Docker extension | No native Docker support |
| Git Integration | Built-in Git extension with auto-deploy | Git Version Control (basic) |
| Mail Server | Postfix + Dovecot + SpamAssassin | Exim + Dovecot + SpamAssassin |
| Pricing Model | Per server (VPS or dedicated) | Per account (number of cPanel accounts) |
| Free Trial | 14 days, full features | 15 days |
| Interface | Single-panel (admin + user in one) | Separate WHM (admin) + cPanel (user) |
Plesk has an edge for WordPress hosting thanks to the Toolkit, and its Nginx reverse proxy setup generally delivers better static content performance. cPanel has a larger market share in shared hosting, so more tutorials and third-party tools exist for it. Choose Plesk if you need Windows server support, strong WordPress tooling, or prefer a single management interface. Choose cPanel if your team already knows it or your hosting clients expect the cPanel brand. You can explore VPS hosting providers that support both panels.
Conclusion
You now have Plesk Obsidian installed and configured on Ubuntu 24.04 or Rocky Linux 10. The panel handles web hosting, email, DNS, SSL certificates, and WordPress management from a single interface - which removes the need to manage each service individually through config files.
For a production deployment, enable automatic updates in Tools & Settings > Updates, set up scheduled backups to a remote storage target (S3, FTP, or local), and monitor server resources from the Plesk dashboard. Keep the Plesk panel itself secured with a Let's Encrypt certificate on port 8443, restrict admin access by IP if possible, and enable two-factor authentication for all admin accounts.