VestaCP is one of our favorites. The install process is super easy. On top of that, VestaCP sports minimalist and user-friendly user interface.
VestaCP (Vesta Control Panel) is a web hosting control panel featuring Nginx and Apache webserver. Users can choose whether to install Nginx as reverse proxy on top of Apache or Nginx and Php-fpm setup. In short, you can install either LNAMP stack or LNMP stack. If you want, you can also have a full LAMP stack (Apache only, without Nginx).
VestaCP is a free web hosting panel. Its main function is similar to cPanel while not as complex as WHM/cPanel.
Based on my opinion, VestaCP only lacks one thing: File Manager. Other than that, VestaCP has almost any basic things you need to host websites on your own server.
VestaCP’s Key Features
- Webserver: Nginx + Apache or the native Nginx (Php-fpm) or the native Apache
- Web scripting language: PHP (PHP v7.x)
- Firewall: iptables + Fail2ban
- DNS server: Named
- Antivirus engine: ClamAV
- Database server: MySQL or PostgreSQL
- Database web client: PhpMyAdmin or PhpPgAdmin
- FTP server: VsFTPD or ProFTPD
- Mail servers: Dovecot IMAP/POP3 and Exim
- Email client: Roundcube
- Anti-spam filter: SpamAssasin
- Monitoring tools: Monit, Webalizer, AWStats, RRDTool
- Free SSL: Let’s Encrypt auto-installer.
- CLI Interface: run commands through CLI
- Softaculous Apps Installer
- Auto Backup
- Hosting packages/plans
There was a time that VestaCP comes with File Manager as an addon. This now is not available, unfortunately.
VestaCP can install and run on CentOS, RHEL, Ubuntu, and Debian OS. Supported versions are:
- CentOS 5
- CentOS 6
- CentOS 7
- Debian 7
- Debian 8
- Debian 9
- Ubuntu 12.04
- Ubuntu 14.04
- Ubuntu 16.04
- Ubuntu 18.04
The install process of VestaCP is pretty easy and straightforward. The basic command is the same across different operating systems.
Step 1. Login to your server through SSH interface. Use Putty on Windows. You can read our previous guide.
Step 2. Visit VestaCP homepage to generate the install command:
Step 3. Jump to the Advanced Install Settings. Choose the webserver, FTP server, DNS server, firewall, etc. Do not forget to enter your email and password.
Step 4. Click the green button saying Generate Install Command. You’ll then get the full line of the install command.
The command example above will install VestaCP with following settings:
- Webserver: Nginx+Apache (Nginx as frontend, Apache as Backend)
- Named DNS server
- Without adding Remi repo (because I will install it on Ubuntu)
- VsFTPD FTP server
- Iptableds and Fail2band included
- Email: Exim, Dovecot, Spamassasin
- ClamAV antivirus
- Softaculous apps installer
- MySQL server
You can exclude ClamAV and Spamassassin if your server is a lowend (low CPU, RAM, and storage). Softaculous is also dispensable if you don’t really need it.
Step 5. Go back to Putty (or Terminal) and copy this command followed by hitting the Enter key:
curl -O http://vestacp.com/pub/vst-install.sh
Step 6. Next, copy-paste the generated command, for example:
bash vst-install.sh --nginx yes --apache yes --phpfpm no --named yes --remi no --vsftpd yes --proftpd no --iptables yes --fail2ban yes --quota no --exim yes --dovecot yes --spamassassin yes --clamav yes --softaculous yes --mysql yes --postgresql no --hostname host.speedy.monster --email [email protected] --password Str0n9p4s5w0rD
You’ll need to replace the above command with the one you get in Step 4 above.
Step 7. Type Y then hit Enter on the keyboard to confirm. Wait for the install process to run and to finish completely. Approximate install time is 15 minutes but it also depends on your server specs (and connection).
Step 8. Once done, you’ll see something like this:
Step 9. Open a web browser of your choice (Chrome, Firefox, IE, Edge, Opera, etc) and access VestaCP login page at:
Do not forget the https:// and the :8083 or otherwise it won’t open. Replace the number with the actual IP Address of your server.
Step 10. The web browser will show you the “Not private” page. This appears because VestaCP uses local SSL (self-signed certificate). Click the Proceed link at the bottom. Don’t worry it’s safe.
Step 11. Now, log in as Admin using the password you defined previously.
Congratulation! You have successfully installed VestaCP on your server. You’ll now be on the main page of VestaCP.
What’s next? Read Basic VestaCP Setup (Adding Website and Setting DNS).