HestiaCP is a free alternative to cPanel for a VPS. Here is how to install and configure it in 2025.
Requirements
- Ubuntu 22.04 or Debian 12 (recommended)
- RAM: 1 GB minimum, 2 GB+ recommended
- A clean server with no Apache, Nginx or MySQL installed
Installation
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh bash hst-install.sh --nginx yes --php yes --mysql yes --exim yes --dovecot yes --sieve yes --clamav no --spamassassin no --iptables yes --fail2ban yes --lang en --hostname srv.yourdomain.com --email admin@yourdomain.com
It takes 10–20 minutes. Write down the admin password printed at the end.
First steps after installation
- Change the SSH port (22 by default) in /etc/ssh/sshd_config
- Point the fail2ban jails at your new SSH port
- Add domains through Admin → Web → Add Domain
- Configure DNS if the nameservers live on this same server
Common pitfalls
open_basedir errors: if the site stores files outside public_html, add that path in the domain settings or the PHP pool.
SFTP not working: make sure sshd_config has PermitRootLogin prohibit-password, not no.
Need a hand? Order a HestiaCP installation.