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.
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.
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
There are 2 ways to install VestaCP: basic installation and advanced installation.
For basic installation follow the steps below:
For downloading installation script:
# curl -O http://vestacp.com/pub/vst-install.sh
# bash vst-install.sh
Skip this section if you have followed basic installation steps above.
For generating advanced installation commands, follow the steps below:
# curl -O http://vestacp.com/pub/vst-install.sh # 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 yes --clamav yes --softaculous yes --mysql yes --postgresql yes --hostname imarslan --email firstname.lastname@example.org --password *******
Note: The password has been changed for security purposes. Please copy the code directly from your own machine.
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.
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.
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
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 https://github.com/letsencrypt/letsencrypt /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 softpedia.xyz -d www.softpedia.xyz
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.
Alibaba Clouder - February 18, 2019
- November 14, 2017
Alibaba Clouder - May 16, 2018
Alibaba Clouder - October 19, 2018
Alibaba Clouder - December 14, 2017
Alibaba Clouder - December 26, 2018
An online computing service that offers elastic and secure virtual cloud servers to cater all your cloud hosting needs.Learn More
An all-in-one service for log-type dataLearn More
Automate performance monitoring of all your web resources and applications in real-timeLearn More
More Posts by Alibaba Clouder