Panellicense

Installing Plesk Obsidian on AlmaLinux 9

Clean Plesk Obsidian install on AlmaLinux 9 — auto-installer flags, the SELinux and firewalld settings that bite you on first boot, license activation, and a short post-install checklist.

7 min readUpdated 2026-05-17plesk · almalinux · install · rhel
schema: HowToschema: FAQPageschema: BreadcrumbList

AlmaLinux 9 is the path most hosting operators take after CentOS 7 hit EOL — binary-compatible with RHEL 9, a ten-year support window, and no surprise licensing changes. Plesk Obsidian has supported it since 18.0.50, and the install is shorter than the equivalent Ubuntu run because RHEL-family defaults already match what Plesk expects.

This guide covers a clean install on a fresh AlmaLinux 9 box. If you're standing up your first Plesk node, the Ubuntu 24.04 install guide is the parallel — pick whichever distribution matches the rest of your fleet rather than treating them as interchangeable.

Before you start

  • A VPS or dedicated server with 2 vCPU, 4 GB RAM minimum (Plesk runs on 2 GB but PHP-FPM pools and the Java-based update manager will swap)
  • Fresh AlmaLinux 9 with root SSH access — the Minimal Install profile is fine
  • A resolving hostname like plesk.example.com pointing at the server's public IP, with matching forward and reverse DNS
  • A Plesk licensegrab one in 60 seconds if you don't already have a key
  • Ports 80, 443, 8443, 8447 open inbound, plus mail and DNS ports (see Step 4)

The installer needs around 40 GB free on /. If you're on a split-partition layout, make sure /var and /opt have room — Plesk's MariaDB data lives in /var/lib/mysql and its PHP builds in /opt/plesk/php.

Step 1 — Prepare AlmaLinux 9

Set the hostname, patch the box, and reboot before touching the installer. Plesk's pre-flight checks read /etc/hostname directly and complain if it doesn't resolve.

hostnamectl set-hostname plesk.example.com
dnf upgrade --refresh -y
dnf install -y wget tar bzip2 epel-release
reboot

After the reboot, confirm the hostname resolves both ways:

hostname -f
dig +short plesk.example.com
dig +short -x <server-ip>

All three should agree. If reverse DNS is wrong, fix it at your provider before continuing — Plesk's mail stack uses the PTR record to set the SMTP banner, and a mismatch tanks deliverability from day one.

Step 2 — Run the Plesk auto-installer

The one-click installer is the path of least resistance — it pulls the latest stable Plesk, picks sensible defaults, and configures every service in one pass:

sh <(curl https://autoinstall.plesk.com/one-click-installer || \
     wget -O - https://autoinstall.plesk.com/one-click-installer)

Expect 12–20 minutes on a 2 vCPU box. The installer fetches around 600 MB of packages, builds nginx + Apache, MariaDB 10.11, Postfix + Dovecot, BIND, and PHP 7.1 through 8.4 from Plesk's repo. If you want to pick components manually instead — for example, skipping the mail stack on a web-only node — use the interactive installer:

dnf install -y plesk-installer
plesk-installer

The TUI lets you pick the Recommended, Full, or Custom profile. For most hosting workloads the Recommended profile plus the WordPress Toolkit add-on is the right choice.

Step 3 — First login and license activation

When the installer finishes it prints a one-time login URL. Open it in a browser, or generate a fresh one from the server:

plesk login

In the setup wizard:

  1. Accept the EULA
  2. Enter your license key from the Panellicense dashboard — paste, don't retype, the dashes matter
  3. Set the administrator email (used for license renewals and security alerts — make it a real inbox, not root@localhost)
  4. Set a strong admin password — Plesk enforces 12+ characters with mixed case and a symbol

If you skipped the license at install time, activate later with:

plesk bin license --install <YOUR-KEY>
plesk bin license --info

Pick the right tier before you activate — moving up later is fine but downgrading needs a support ticket. The Plesk license tiers explainer covers when Web Pro stops making sense and Web Host starts paying for itself.

Step 4 — Open the right firewall ports

AlmaLinux 9 runs firewalld by default. The Plesk installer adds its own zone but doesn't always open every service port — especially if you skipped mail or DNS. Add the lot in one shot:

firewall-cmd --permanent --add-service={http,https,smtp,smtps,submission,imap,imaps,pop3,pop3s,ftp,dns}
firewall-cmd --permanent --add-port=8443/tcp     # Plesk panel
firewall-cmd --permanent --add-port=8447/tcp     # Plesk installer/updater
firewall-cmd --permanent --add-port=21/tcp       # FTP control
firewall-cmd --permanent --add-port=49152-65534/tcp  # passive FTP
firewall-cmd --reload

Skip the FTP ports if you don't intend to offer FTP — Plesk's File Manager and SSH-only access are usually safer.

Step 5 — Post-install checklist

The defaults are fine but a few settings save support tickets later:

  • Enable automatic security updates under Tools & Settings → Update and Upgrade Settings → Plesk Update Settings. Major version upgrades stay manual; security and minor updates apply overnight.
  • Install ImunifyAV (free) or upgrade to Imunify360 for real-time WAF and brute-force protection — see the Imunify product comparison for which tier you actually need.
  • Install the WordPress Toolkit extension if it isn't already there — it's free with every license tier above Web Admin.
  • Provision a server-wide Let's Encrypt certificate for the hostname so panel logins, FTP, and mail use a trusted cert. Tools & Settings → SSL/TLS Certificates → Renew.
  • Turn on fail2ban under Tools & Settings → IP Address Banning (Fail2Ban), with jails for plesk-panel, ssh, and postfix-sasl at minimum.
  • If you're running on CloudLinux instead of stock AlmaLinux, the CloudLinux vs AlmaLinux for hosts writeup covers what changes.

Troubleshooting common install failures

Installer aborts with Failed to download repository metadata Usually a DNS issue — AlmaLinux 9 Minimal doesn't always pre-populate /etc/resolv.conf. Confirm cat /etc/resolv.conf lists a working nameserver, add 1.1.1.1 if it's empty, and re-run.

Cannot find a valid baseurl for repo: plesk-release The auto-installer couldn't add the Plesk repo. Add it manually and re-run the TUI installer:

rpm -Uvh https://autoinstall.plesk.com/plesk-release.rpm
dnf install -y plesk-installer
plesk-installer

MariaDB fails to start after install Almost always /var running out of inodes or space. Check df -i /var and df -h /var. Free space then systemctl start mariadb && plesk repair installation.

Panel reachable on :8443 but mail won't deliver Reverse DNS or SPF — Plesk's pre-flight doesn't catch either. Confirm the PTR matches plesk.example.com and that you have an SPF record. The Plesk outbound mail throttling guide covers the rest of the deliverability setup.

Does Plesk support AlmaLinux 9?+
Yes — Plesk Obsidian 18.0.50 and later run on AlmaLinux 9, Rocky Linux 9, RHEL 9, and CentOS 9 Stream. The same installer works on all four because they share the same RPM ecosystem.
Should I disable SELinux before installing Plesk?+
No. Modern Plesk ships SELinux policies for every component and runs cleanly in enforcing mode. Disabling it creates more problems than it solves, including a slow relabel reboot if you ever turn it back on.
Can I install Plesk on AlmaLinux 8 instead?+
Yes, AlmaLinux 8 is still supported, but the support window ends in 2029 versus 2032 for AlmaLinux 9. For a new build, pick 9 — migrating major versions later is a full server rebuild, not an in-place upgrade.
How long does the Plesk install take on AlmaLinux 9?+
Around 12–20 minutes on a 2 vCPU, 4 GB RAM server with a 1 Gbps connection. The installer downloads roughly 600 MB and builds every PHP version from 7.1 through 8.4, which is the longest single step.
Do I need CloudLinux on top of AlmaLinux 9 for shared hosting?+
Not strictly, but you should. AlmaLinux gives you the OS; CloudLinux adds per-account CPU, memory, and IO limits via LVE, plus CageFS for filesystem isolation. Without it, one runaway WordPress site can saturate the whole box.
Can I migrate from cPanel to Plesk on AlmaLinux 9 directly?+
Yes — install Plesk first, then use the Plesk Migrator extension to pull accounts over. See the cPanel-to-Plesk migration guide for the full workflow including DNS cutover and mail forwarding.

Next steps

Switch in an afternoon

Switch from your current reseller — free.

We migrate active cPanel, Plesk, LiteSpeed and CloudLinux licenses from any reseller. We prorate the first month so you never pay twice, and your customers see zero downtime during the swap.