📜 ⬆️ ⬇️

Free hosting control panels. Goddess vesta

When you work in a hosting company most of your friends and acquaintances, all your questions regarding hosting are resolved through you. This allows you to be in the trend of the latest innovations, and not only to increase your skills, but also to keep them in good shape. As soon as spec. It became difficult for the guys to solve the tasks on the hosting server, as a rule, due to the inability to install the necessary software for the work of this or that script, I immediately thought of an inexpensive virtual server , especially since we got them. We also understood that it would be easier to work with the server through a user-friendly web interface, and a good control panel would be, like, by the way. And if it is also free, then we will be only in the black. Without hesitation, opened the browser and began to google free hosting control panels.

Realizing that it would take time to study each one, I also decided to ask our experienced administrator for advice, and received a short answer:
Look toward the Vesta .
For my part there was an attempt to draw his attention to the fact that there are other free products:
Yes, I heard, but in general they are enough: Ajenti , CentOS Web Panel , etc.
But the head of those. The department gave a rather expected answer:
These are not very popular in our circles.
This is how my first acquaintance with one of the most popular free hosting control panels in Runet - Vesta CP - happened. I would like to tell you how the solution of the tasks leads not only to writing tutorials, but also allows you to meet interesting people who invest their soul in that matter, which really brings them pleasure. And as a result, we get a great software product. Isn't that wonderful? Have a pleasant and constructive reading ...

Foreword


Since the Vesta panel was really unfamiliar to me, I began to collect information. I found some pretty good publications, including on the Habrahabr resource, after which I even thought about what else you can tell about this panel, since there is really enough material on it in Runet. But how can one conversation change everything !? After reading a good article, I decided to write to the author, and find out his opinion not only about the Vesta panel, but also about the niche of free hosting control panels in general. To my surprise, the answer did not take long to wait, and the dialogue itself continues to last now ... I managed to discuss a lot of things, but this was only a small part of what was yet to be discussed. Yes, this is most likely material for a separate article, but we will not get ahead of ourselves and return to the Vesta panel itself.

Installation


I will not change my habits - I will install it on a CentOS virtual server (also the panel has support for Debian, Ubuntu) and connect to it via SSH. To do this, if you are using a MacBook, start the Terminal and enter the following command:
')
ssh root@xxx.xxx.xxx.xxx 

Confirm the connection, specify the superuser password, and after all these actions we get to the console. If you are a Windows user, use a PuTTY terminal emulator to work with the server.

Next, upload the necessary installation files to the server with the command:

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

Before starting the installation process itself, I would like to inform you that the panel installer automatically classifies the servers into the following 4 groups:


Depending on the technical characteristics of your server, in this case the amount of RAM, the installer will automatically install a specific set of packages and configs of the Vesta panel. For example, the antivirus package will work correctly (according to the recommendations of the developers) starting from the medium version, and support for php cgi, in turn, is available for the entire server group except micro. But nothing prevents you from installing the missing software manually.

We continue the process of installing the panel, for this we run the script with the command:

 bash vst-install.sh 

On the screen you should receive the following message:

 _| _| _|_|_|_| _|_|_| _|_|_|_|_| _|_| _| _| _| _| _| _| _| _| _| _|_|_| _|_| _| _|_|_|_| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _| _| Vesta Control Panel Following software will be installed on your system: - Nginx Web Server - Apache Web Server (as backend) - Bind DNS Server - Exim mail server - Dovecot POP3/IMAP Server - MySQL Database Server - Vsftpd FTP Server - Iptables Firewall + Fail2Ban Would you like to continue [y/n]: 

Confirm your actions with the y key (yes). Next, you will need to specify your email:

 Please enter admin email address: xxxxxxxxxx@domain.com 

After that, the installer may request to enter the host name:

 Please enter FQDN hostname [XXXX1669]: xx1669.ua-hosting.company 

The installation process itself can take about 15 minutes. Looking ahead a bit, I would like to say that if you install the Vesta panel on one server, then entering all the necessary data during the installation should not take a lot of time. But if you need to prepare several dozens of servers with this panel, most recently one of our clients has set such a task, then we recommend running the installation script with the h (help) key:

 bash vst-install.sh -h 

And see the full list of available options:

 Usage: vst-install-rhel.sh [OPTIONS] -a, --apache Install Apache [yes|no] default: yes -n, --nginx Install Nginx [yes|no] default: yes -w, --phpfpm Install PHP-FPM [yes|no] default: no -v, --vsftpd Install Vsftpd [yes|no] default: yes -j, --proftpd Install ProFTPD [yes|no] default: no -k, --named Install Bind [yes|no] default: yes -m, --mysql Install MySQL [yes|no] default: yes -g, --postgresql Install PostgreSQL [yes|no] default: no -d, --mongodb Install MongoDB [yes|no] unsupported -x, --exim Install Exim [yes|no] default: yes -z, --dovecot Install Dovecot [yes|no] default: yes -c, --clamav Install ClamAV [yes|no] default: yes -t, --spamassassin Install SpamAssassin [yes|no] default: yes -i, --iptables Install Iptables [yes|no] default: yes -b, --fail2ban Install Fail2ban [yes|no] default: yes -r, --remi Install Remi repo [yes|no] default: yes -q, --quota Filesystem Quota [yes|no] default: no -l, --lang Default language default: en -y, --interactive Interactive install [yes|no] default: yes -s, --hostname Set hostname -e, --email Set admin email -p, --password Set admin password -f, --force Force installation -h, --help Print this help 

Which, in turn, will make the installation "for themselves", as well as help speed up the process of setting up a whole "fleet of machines". The easiest way to skip entering additional data during the panel installation is to deactivate the interactive mode, as a result, run the installation script with the y key (interactive) and the no parameter.

 bash vst-install.sh -y no 

If there is also a desire to set a password for accessing the panel yourself, then add the p (password) key with your own password option:

 bash vst-install.sh -y no -p xxxxxxxxx 

For those users who are not in a rush to conduct a "debriefing" in the console, the developers have made a convenient web configurator of options , which greatly simplifies the process of custom installation. Just in the Advanced Install Settings section, set the necessary parameters, then click the Generate Install Command button and paste the ready command into the console. How do you like this installation option?

After the installation is completed, the following message is displayed:

  _| _| _|_|_|_| _|_|_| _|_|_|_|_| _|_| _| _| _| _| _| _| _| _| _| _|_|_| _|_| _| _|_|_|_| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _| _| Congratulations, you have just successfully installed Vesta Control Panel https://xxx.xxx.xxx.xxx:8083 username: admin password: xxxxxxxxxx 

Web interface


Well, are you ready to meet with the "goddess"? Then open the browser and log in to the panel. I draw your attention to the fact that the username is admin.



Immediately after logging in, we get to the USER page, and so far we see information about a single admin user with system administrator rights. If it is more pleasant for someone to work with the Russian interface, then open the admin user settings and select the required language in the Language field. Do not forget to click the Save button to save the changes.



Also, hot keys (SHORTCUTS) are very helpful in working with the panel, which simplify navigation through the menus and allow you to control using the keyboard. To open the list of all available SHORTCUTS, use the h key on the keyboard or one of the buttons in the lower right corner of the screen.



Users


To improve security, developers do not recommend managing sites from under the admin user, so let's create a new user. Go to the USER menu and press the green round button with a plus (ADD ACCOUNT). Do not forget that this can also be done with the help of hot keys, the previous screenshot should suggest that the key a will help us in this.



Here you can specify the interface language for the user, as well as his mailbox to which access will be sent. After filling in the required fields, click the "Add" button. As a consequence, in the USER menu, we will have two users already and using the LOGIN button as we can log in under the user we need. It is worth adding that the developers took care of the “large migration of peoples” and provided the opportunity to transfer users from one server to another.



Domains


Now we can add your site. To do this, go to the WEB menu and use the a key to call a window in which we fill in the necessary data.



Immediately I recommend to open ADDITIONAL OPTIONS and activate an additional FTP account by filling in the appropriate fields. And for fans of statistics, there is also the possibility of connecting your resource to Webalizer or AWStats .



Database


It was the turn to create a database (DB) for your project. Everything is quite simple - go to the DB menu and again with the help of the burning key a we call the window where we fill in the required fields.



Do not forget to save all the entered data using the "Add" button. Then you can safely upload the necessary CMS or script on which your project will “spin” onto the hosting and carry out additional settings for the release of the site into production.

MySQL DBMS is administered using the phpMyAdmin web application, the launch button of which will appear in the DB menu immediately after creating at least one database.



The Vesta panel also allows you to host databases on a remote server , as an option you can build a solution from several web servers and maintain them using one more productive server.

post office


Here you can dwell on additional configuration in more detail, and, perhaps, we will begin with the mail, or rather, with the configuration of the mail domain. If we go to the MAIL menu, we will see that we already have a mail domain, which was created automatically with the addition of the domain itself to the panel.



When editing data from this domain, please note that you can optionally specify a mail account (not necessarily local) in the "Mail Trap" field where mail from non-existing accounts will be redirected. By default, the file is / dev / null , which means only one thing - all incoming mail should be deleted.

Let's go further, it was the turn to create a mailbox. Select the desired mail domain and click the button ADD ACCOUNT.



Here you can open the ADDITIONAL OPTIONS tab and specify the quota for the mailbox size in MB, as well as the account for forwarding mail. As usual, we save the specified data using the “Add” button.



To work with e-mail, the Roundcube client is used, the button of which (OPEN WEB MAIL) becomes available in the MAIL menu right after entering at least one mail domain in the panel.

DNS


Probably one of the most difficult moments of working with the hosting control panel for novice users is the DNS setting. But here, too, the development team attempted to simplify the task as much as possible by creating a template . After we make the necessary settings on the side of the registrar of a domain name, you need to press the EDIT button in the DNS menu for a specific domain.



And in the Template field, select child-ns, and then save the changes.



Then from the user admin go to the Packages menu.



And edit the default package, specifying the name servers of your domain.



Also, one of the panel's capabilities is the creation of a DNS cluster , which will allow zones to be automatically copied to other servers.

Cron


In the CRON menu section, you can review the entire list of tasks and, if necessary, make changes to it (add / remove / block a task).



Backup


The Vesta control panel has a convenient web interface for setting up backup to a remote FTP / SFTP server. To do this, go to the BACKUP menu and use the a key to start creating a new archive, the following message will appear on the screen:



After you receive a notification to your mailbox, return to this menu and save the backup to your local computer using the DOWNLOAD button. Also, this functionality is available from the console .



Security


As you may have noticed, the panel has a firewall, as well as support for Fail2ban , which will automatically suppress the selection of passwords using different protocols (FTP, SSH), including the Vesta panel itself. To configure the firewall, it is necessary to select the appropriate menu item from the admin user.



Where, using the available functionality, it is possible to make the necessary settings, including for Fail2ban.



Reports


The Vesta control panel is very well implemented to collect statistics and various data that can help you in analyzing the operation of your server. For example, in the Server menu you can see how much RAM this or that process consumes.



Also, if you want to study the performance of the processor (s), memory, network, disk (s), etc., you can get more detailed data on different parameters: server specifications, which requests are sent to the web server and to the database , there is an opportunity to make a report on the sent letters and much more.



Do not forget about load schedules, which can also help you in analyzing the operation of the server.



And for those to whom this is not enough, it is possible to view domain logs live - the WEB menu, the button VIEW LOGS.



API


The Vesta panel has an API that can be used as a framework to create your own interfaces. For example, you can create a platform for blogs or online stores . As the developers told me, several of their large customers use the panel in this way.

Updates


Updates to the Vesta control panel may be automatic, but this feature is disabled by default. All updates are managed through the appropriate menu.



When an update is released, the packages in this menu section begin to highlight in red, and the Update button appears. If necessary, you make one click and everything is ready.

A little patience and I will look into the near future of the “goddess” with you. After all, you want to see what "buns" developers are preparing for you in the next release of the Vesta panel?

Buns


I think almost every software product has its own characteristics. We already mentioned some of them earlier, but there are those that I specifically left for the “dessert”.

At one time, the guys released several paid extensions that would somehow cover the costs of supporting and developing this panel.

The first one is magic, in another word I just can’t convey the convenience of its UI, the file manager . As soon as you activate the plugin, the Files menu item will appear, and when you go to it, the following window will open:



I agree that the first impression may be slightly exaggerated, but you have not yet seen the set of available SHORTCUTS and have not even started working with the file manager itself, have you?



The development team does not hide the fact that the hotkeys were borrowed from the magnificent GNU Midnight Commander file manager. Well, the truth is, why not take in what is really convenient? And trust me, you will have the opportunity to see this for yourself.

The second paid extension is SFTP Chroot . This plugin may be more interesting for those of you who provide hosting services, as well as share your server with other users. Next, I would like to quote a developer himself, regarding this additional “feature” to increase security:
FTP protocol is not secure, because all passwords are transmitted in a pure form without encryption. Sitting in a cafe on a public Wi-Fi, there is a risk that someone will intercept the data. To enable SFTP, you need to give the user a system shell, however, this will allow the user to browse not only his own directories, but also system ones, such as / etc, / sbin or / bin. This is not a problem if the server is used by 2-3 developers. But when it comes to giving access to people to whom there is no complete trust, a dilemma arises. The SFTP module Chroot helps to solve it. If the module is activated, then on all accounts without a real shell (/ sbin / nologin), a special SFTP connection mode is enabled. Such accounts can only see files in their home directory and that's it.
After activating this extension, it is necessary for a particular user in the account settings to select the desired parameter from the drop-down list, as shown in the screenshot below:



Are you still thinking about which panel to choose? Then I continue, and turn to the most "tasty buns" of the next release of the Vesta panel.

There will be additional hot keys that allow you to fully control the panel using the keyboard - this is cool.



It will also be possible to get a free SSL certificate from the project Let's Encrypt literally in one click. And as skid assured me, this functionality is already at the final stage of testing.

I will not disclose all the details of the upcoming release, but rather leave some “food for thought” to you, our dear readers. All details at the end of the publication.

As a thank you, I would like to list by name each of the developers of this truly “goddess”:


And also to report that people from different parts of the world take part in the development of this product, as evidenced by the number of language versions of the panel, as well as the account statistics on the GitHub project. And the developers themselves admit that they are pleasantly surprised by the interest and desire of some users to support their project.

Keep it up guys!

PS In order to support the project, together with the development team, we decided to provide each of our clients who rent the cloud-based VPS service to activate one-time commercial expansions of the Vesta panel for one service with superuser access. To do this, after ordering, simply create a ticket to the sales department and we will activate for you the plugin (s).

PPS The developers, on their part, decided to also hold an action and give you the opportunity, when ordering perpetual versions of licensed Vesta extensions, to receive an additional 30% discount. When ordering, simply use the coupon HABR, which will be valid until January 15th.

Source: https://habr.com/ru/post/274029/


All Articles