Atlantic.Net Blog

How to Install Hestia Control Panel on Debian 10

Hestia Control Panel is a powerful, free, open-source web hosting control panel that can be used to host websites, mail servers, DNS, and other web hosting features from the central location. It is designed for speed, security, and stability, and capably runs on a low-resource server. Hestia Control Panel comes with a user-friendly web and command-line interface that enables deployment and management of web domains, mail accounts, and DNS zones without hassle.

In this tutorial, we will show you how to install Hestia Control Panel on Debian 10.

Prerequisites

  • A fresh Debian 10.3.0 64-bit VPS with 4GB RAM.
  • A valid domain name that your server IP points to.
  • A root password configured on your server.

Step 1 – Download Hestia Installation Script

Before starting, you will need to install the required dependencies on your server. You can install all of them with the following command:

apt-get install ca-certificates gnupg2 curl wget unzip -y

After installing all the packages, you will need to download the Hestia installation script. You can download it with the following command:

wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh

Once downloaded, give proper permission to the downloaded script with the following command:

chmod 755 hst-install.sh

Step 2 – Install Hestia

Now, run the downloaded installation script to start the installation with the following command:

bash hst-install.sh

You should see the following output:

Press Y to continue the installation
Please enter admin email address: [email protected]
Please enter FQDN hostname [debian10]: hestia.example.com

Provide your email address and valid domain name, and hit Enter to start the installation. Once the installation has been completed successfully, you should see the following output:

Congratulations!

You have successfully installed Hestia Control Panel on your server.

Ready to get started? Log in using the following credentials:

    Admin URL:  https://hestia.example.com:8083
    Username:   admin
    Password:   pa28TDlnRdr6yCf5


Thank you for choosing Hestia Control Panel to power your full stack web server,
we hope that you enjoy using it as much as we do!

Please feel free to contact us at any time if you have any questions,
or if you encounter any bugs or problems:

E-mail:  [email protected]
Web:     https://www.hestiacp.com/
Forum:   https://forum.hestiacp.com/
GitHub:  https://www.github.com/hestiacp/hestiacp

Note: Automatic updates are enabled by default. If you would like to disable them,
please log in and navigate to Server > Updates to turn them off.

Help support the Hestia Contol Panel project by donating via PayPal: https://www.hestiacp.com/donate
--
Sincerely yours,
The Hestia Control Panel development team

Made with love & pride by the open-source community around the world.

[ ! ] IMPORTANT: You must logout or restart the server before continuing.

Do you want to reboot now? [Y/N] Y

Type Y and hit Enter to restart your server.

Note : Please remember the Hestia login URL and credentials as shown in the above output.

Step 3 – Manage Hestia Service

You can manage the Hestia service easily with systemd utility.

For example, you can start and stop the Hestia service with the following command:

systemctl start hestia
systemctl stop hestia

You can also verify the status of the Hestia service with the following command:

systemctl status hestia

You should see the following output:

● hestia.service - LSB: starts the hestia control panel
   Loaded: loaded (/etc/init.d/hestia; generated)
   Active: active (running) since Tue 2020-07-28 06:30:33 UTC; 1min 27s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 416 ExecStart=/etc/init.d/hestia start (code=exited, status=0/SUCCESS)
    Tasks: 3 (limit: 2359)
   Memory: 20.9M
   CGroup: /system.slice/hestia.service
           ├─601 nginx: master process /usr/local/hestia/nginx/sbin/hestia-nginx
           ├─604 nginx: worker process
           └─650 php-fpm: master process (/usr/local/hestia/php/etc/php-fpm.conf)

Jul 28 06:30:32 hestia.example.com systemd[1]: Starting LSB: starts the hestia control panel...
Jul 28 06:30:33 hestia.example.com hestia[416]: Starting hestia-nginx: hestia-nginxnginx: [warn] "ssl_stapling" ignored, issuer certificate no
Jul 28 06:30:33 hestia.example.com hestia[416]: .
Jul 28 06:30:33 hestia.example.com hestia[416]: Starting hestia-php: hestia-php.
Jul 28 06:30:33 hestia.example.com systemd[1]: Started LSB: starts the hestia control panel.

Step 4 – Secure Hestia with Let’s Encrypt SSL

By default, Hestia is secured with a self-signed certificate, but it is not signed by a certificate authority (CA). Therefore, it is recommended to install an SSL certificate signed by a CA to place normal traffic in a protected, encrypted wrapper.

Let’s Encrypt is a free and non-profit certificate authority run by Internet Security Research Group. Its aim is to create a more secure and privacy-respecting Web by promoting the widespread adoption of HTTPS.

You can secure your Hestia with Let’s Encrypt free SSL by just running the following command:

v-add-letsencrypt-host

If successful, nothing will be displayed on the screen.

Step 5 – Access Hestia Control Panel

Now, open your web browser and type the URL https://hestia.example.com:8083. You will be redirected to the Hestia login screen:

Provide your admin username, password, and click on the login button. You should see the Hestia Control Panel default dashboard.

Hestia Dashboard

Conclusion

Congratulations! You have successfully installed Hestia Control Panel and secure it with Let’s Encrypt SSL on Debian 10. You can now start setting up your host environment and other settings after logging on to the back-end panel. Get started today on your VPS hosting account from Atlantic.Net!

Get a $250 Credit and Access to Our Free Tier!

Free Tier includes:
G3.2GB Cloud VPS a Free to Use for One Year
50 GB of Block Storage Free to Use for One Year
50 GB of Snapshots Free to Use for One Year