[How to] Install VestaCP on Ubuntu VPS [Guide]

VestaCP is a lightweight server management control panel that smoothly runs on a low memory-based Virtual Private Server. Even a server that has only 512 MB ram can easily handle one website with a good amount of traffic. Its design layout, optional panel, and the interface are so simple that newbies also understand its features without any problem. I am personally using VestaCP for my website.

You can check out my vestaCP server configuration here.


Why Choose VestaCP?

Well, VestaCP has a number of advantages over other control panels available at the market.

  • VestaCP supports Ubuntu, Debian, CentOS, and RHEL as of now.
  • Its core features are absolutely free of cost. (For SFTP Chroot and file manager you have to pay few dollars.)
  • Its interface is pretty simple, GUI is modern and well designed.
  • its options panel is easy to understand.
  • Unlike Cpanel or CentOS Web panel, vestaCP is lightweight and super fast.
  • It consumes low memory. Even a server having RAM of 512 MB, vestaCP fitted good.
  • It consumes a low CPU.
  • It can handle a good amount of traffic smoothly. ( 5k to 8k per day)

Who can use VestaCP?

The answer is Everyone. A newbie who does not have much knowledge about how to configure a VPS can easily manage it. Also, people can run a website successfully using this amazing hosting admin panel.

Want to install VestaCP on Ubuntu VPS? Then follow the instructions.

VestaCP Installation Instructions

First of all, you need to have a good VPS server from a reputed company. I personally suggest choosing Vultr VPS. Because of its outstanding performance. Also, its price is low.


  • A VPS server
  • Fresh and preinstalled Ubuntu 16.04 18.04 or 20.04 (with root-access).
  • A fully qualified domain name (FQDN) with valid DNS, pointing A, ns1, ns2, and CNAME records to the server IP.
  • An SSH client such as open Putty. Download PuTTy SSH Client.

Just go to the domain’s DNS setting panel and set (1) ns1.yourdomain.ltd (2) ns2.yourdomain.ltd, (3) “A” record and (4) “CNAME” records pointing to your server IP.

Step-1: Installing VestaCP

First of all, deploy a droplet or instance via the website from your VPS provider. Connect the server using downloaded PuTy SSH client from your computer using user “root” and “password” provided by your hosting service company.

Connect Server via PuTTy

Now update and upgrade Ubuntu using the following commands –

sudo apt-get update
sudo apt-get upgrade

Next, download the installation script using the command given bellow-

curl -O http://vestacp.com/pub/vst-install.sh

After download, go to https://vestacp.com/install/ and configure installation for your server. I would like to configure as-

# WEB = Nginx + apache

# DNS = named

# FTP = vsftpd

# MAIL = exim + dovcote ( include clamav for 1GB ram or more).

# Firewall = iptable + fail2ban (fail2ban protect from bruitforce attack).


# Additional Repository = remi (You may set this option to ” NO “)

# File System Quota = Yes (for multiple websites)

# DB (Database) = MySQL or PostgreSQL (whatever you prefer)

# Hostname = your domain name (You may use your subdomain like server.yourdomain.ltd. So, for that you need to create an “A” record pointing server.yourdomain.ltd to your Droplet’s IP address).

# Email = “Your email address”

# Password = “Your password” [Note: Your password should be strong (more than 8 characters) containing uppercase, lowercase, special characters, and numbers]

After such a setting click on the “Generate Install Command” button. The installation command should look like this image.

Configuration of VestaCP installation command
# Run it..............
bash vst-install.sh --nginx yes --apache yes --phpfpm no --named yes --remi yes --vsftpd yes --proftpd no --iptables yes --fail2ban yes --quota yes --exim yes --dovecot yes --spamassassin no --clamav no --softaculous no --mysql yes --postgresql no --hostname yourdomain.com --email yourid@mail.com --password YourPass
installation command lines

Paste the command lines and hit enter to start the installation.

When you are asked to continue, just press “Y” and hit the enter. VestaCP is now installing. Wait up to 15 minutes to complete the installation. When the installation is done, your login URL password will be shown there. Just it looks like the following image.

Successfully installed VestaCP

Congratulations!! Now your VestaCP is successfully installed on your server.

Step-2: Setting Up VestaCP Server

After the successful installation of VestaCP, its time to set up the newly created server. Go to your host URL or IP followed by port 8083. It is a default server port. In my case it was https://xx.xx.xx.xx:8083. You will get an SSL error that looks like the image given below. You can change this default port here.

Do not worry. It is common because the SSL is not installed on your server. You need to install it manually. So click on the proceed with caution link. Trust me it’s fine. After doing this you will get the admin login panel. Your default username is “admin“. Just log-In. Now you have your vestaCP admin panel interface.

VestaCP Server Admin Panel

Step-3 Initial Configuration of VestaCP

First Set hostname: Although by default vestaCP creates default hostname we need to be more precise. The default hostname does not point to your server Ip address rather it will set to localhost ( Just include your IP and your domain. Doing this will remove the CURL error. To do so, edit your host file using the command-

sudo nano /etc/hosts

And set your hosts file like.    localhost    yourdomain.ltd
xx.xx.xx.xx   yourdomain.ltd  #\\xx.xx.xx.xx is your server IP adress.

Second change the default password created automatically by vestaCP in my.cnf & mysql.conf by your password. To do so use the following command.

sudo nano /root/.my.cnf
sudo /usr/local/vesta/conf/mysql.conf

Third change default nameservers (NS) to your own nameserver which would be ns1.yourdomain.tld and ns2.yourdomain.tld.

Finally, visit your domain you will see that vestaCP is working great.

VestaCP Default Page

What Next?

The next job is to configure the VestaCP for your website and email. To do so, please follow the link given below.

Still a lot of things to do. There would be some error. All the errors will be fixed through the upcoming tutorials.

Common problems: There may be some common problems on your vestaCP serve such as

  1. PHPMyAdmin login problem using root password. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
  2. By default, ipv6 is not enabled in the VestaCP. You need to set up ipv6 manually.
  3. VestaCP file manager is not present. Although VestaCP provides a temporary file manager that exists only for a few hours.

Solution: PHPMyAdmin login problem using the root password. “ERROR 1045 (28000): Access denied”

You can solve the PHPMyAdmin login problem in Ubuntu 18.04 in the following way.

Login your server using PuTTy SSH Client. Then type –

 mysql -u root -p

…and hit enter. You will have been asked for a password. Enter your own vestaCP admin password and hit enter. Here you have now entered MySQL CLI. Thereafter, use the following command line.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Yourpassword';

Replace the word “Yourpassword” by your real one and hit enter. Now you will be able to log in and access the PHPmyAdmin page.

Enable temporary Filemanager for VistaCP: By default, VestaCP does not provide file manager. They offer their temporary file manager for testing purposes. If you make this file manager permanent then you have to buy it from their official website. To test the vesta file manager, use the following command.

nano /usr/local/vesta/conf/vesta.conf

And use this code


Check here – how to active vestaCP file Manager for a lifetime period.


VestaCP installation is quite easy. Through this post have tried to provide proper guidance to install VestaCP to your own VPS server. I hope, you have installed VestaCP without any errors on your virtual server. Also, I hope you have enjoyed the tutorials. If you feel any problem, comment below. I will try to support you as soon as possible.

Note: If you are following our guidance, I would suggest you read the vestaCP documentation on the official page. Because we can not always provide support when things go wrong. For that, I would suggest you ensure what operating system and software version you are using.

You May Also Like
[How To] Change Default Admin Login Port(8083) of VestaCP?

Leave a Comment