Set Up Vesta Control Panel on Alibaba Cloud

By Arslan Ud Din Shafiq, Alibaba Cloud Tech Share Author. Tech Share is Alibaba Cloud’s incentive program to encourage the sharing of technical knowledge and best practices within the cloud community.

Vesta Control Panel is an open source software to host your websites. When you are tired of using command line for making any changes to your hosting or you want to work instantly and faster, VestaCP is best option. Most of the web hosting software are expensive. You can only afford them if you are running a web hosting selling business, otherwise, for personal use, I won’t recommend to use any paid hosting control panel software. VestaCP is available for free and is one of the best options available in the market.

VestaCP allows you to manage your websites, ftp accounts, databases, email and DNS settings. The web interface of VestaCP is developed in PHP and JS. Vesta Open API is used for CLI calls. Vesta core has been written in bash which is native programming language in Linux operating system. VestaCP does not support all operating systems. Currently, it supports RHEL, CentOS, Debian, and Ubuntu.

In this tutorial, we will be installing and configuring VestaCP on an Alibaba Cloud Elastic Compute Service (ECS) with CentOS 7 installed.

Hardware Requirements

VestaCP requires a decently sized server to host and manage multiple websites. The following are the minimum requirements for installing VestaCP on your server. You are recommended to use a higher configuration whenever possible to host more websites, but you should manage your hardware requirements according to your actual usage.

  1. Minimum 1 core processor.


  1. You must have Alibaba Cloud Elastic Compute Service (ECS) activated and verified your valid payment method. If you are a new user, you can get a free account in your Alibaba Cloud account. If you don’t know about how to setup your ECS instance, you can refer to this tutorial or quick-start guide.

Update Your CentOS System

Before proceeding with installation of any kind of package, use the following command to update your Ubuntu system. To execute this command, remember to login from non-root user with sudo privileges.

# yum update

Install VestaCP

There are 2 ways to install VestaCP: basic installation and advanced installation.

Basic Installation:

For basic installation follow the steps below:

  1. Open This link will open the installation page of VestaCP official website. Scroll down and find the heading “Install Instructions”. Execute the following commands to install VestaCP.
  1. For installation:
  • # bash
  1. You will be prompted to the following screen. Type Y and hit enter.
  1. Enter your email address.

Advanced Installation Settings:

Skip this section if you have followed basic installation steps above.

For generating advanced installation commands, follow the steps below:

  1. Open . This link will open the installation page of VestaCP official website. Scroll down and find the heading “Advanced Install Settings”.
  1. Choose your preferred web settings. You can choose only one of the options below. We will be using Nginx + apache.
  • # curl -O # bash --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 yes --clamav yes --softaculous yes --mysql yes --postgresql yes --hostname imarslan --email --password *******

Note: The password has been changed for security purposes. Please copy the code directly from your own machine.

Set Up Firewalls for HTTP and HTTPS

If you have activated firewalls, you will have to define a rule in Alibaba Cloud security group for your cloud server to add exception for port 80/TCP, 443/TCP and port 8083/TCP. You can enable these ports while creating ECS instance, but in case, if you have forgotten to unblock these ports, you can follow the procedure below. By default, these ports are blocked by the firewalls.

If you are not sure how to do this, refer to the ECS documentation.

Accessing VestaCP

Your VestaCP is ready to be accessed via IP address of your Alibaba Cloud ECS or domain name. As you can’t install SSL certificate to IP address, upon accessing VestaCP via IP Address, you will see the following warning. Click Advance and then click proceed.

You will be redirected to login page of VestaCP. Enter your login credentials, you will be redirected to VestaCP dashboard.

Install Git

For installation of Let’s Encrypt SSL certificate, you will need to install Git to fetch Let’s Encrypt form official GitHub Repository. I will use /opt/letsen directory for this purpose.

Execute the following command to install git.

# yum install git

Install SSL Certificate for VestaCP

To allow HTTPS access to your VestaCP, you will need to install an SSL certificate. For a free SSL certificate, I will use Let’s Encrypt SSL. Follow the steps below to install Let’s Encrypt SSL Certificate.

Execute the following command to fetch and clone Let’s Encrypt.

# git clone /opt/letsen

Navigate to directory /opt/letsen by using the following command.

# cd /opt/letsen

Before asking for issuance of SSL, you will need to stop your apache and nginx server because issuance of certificate will utilize port 80. To do so, execute the following commands.

# service nginx stop
# systemctl stop httpd

Execute the following command to install SSL certificate on your domain.

# sudo -H ./letsencrypt-auto certonly --standalone -d -d

Accept the terms and conditions and proceed. Upon successful installation, you will see the following screen.

Confirm or verify the installation of your SSL certificate by executing the following command.

# ./certbot-auto certificates

After successful issuance of SSL certificate, you will need to restart your nginx and apache server by using the commands below.

# service nginx start
# systemctl start httpd

Here you go! Now you can access your VestaCP using HTTPS.


Follow me to keep abreast with the latest technology news, industry insights, and developer trends.