Managing a server(s) is one of the fundamental tasks for IT admins. At times this becomes so hard when the environment gets large and complex. Server management software comes in handy to help monitor, control and maintain servers and their associated resources within the environment. It provides a centralized location to manage hardware, operating systems, applications, and server-related tasks. This streamlines server administration, enhancing efficiency and ensuring the health and performance of systems.
Froxlor is an open-source tool developed by experienced server admins to make it easier to manage a hosting platform. It comes with a modern and improved UI with dark and light modes. You can also tweak the design using Twig to create a desired look.
Froxlor offers several other features. Some of them are:
- PHP configuration: it allows users to manage the different PHP versions using FCGID or PHP-FPM and choose an option for each domain.
- API-based: you are able to access all the significant functions via API and gain total control over your hosting.
- Resellers & Customers: you can also manage reseller accounts and limit resources per customer.
- True Multi-Stack: it allows you to choose which domain should use a specific IPv4, IPv6, or even port.
- Advanced SSL: with Froxlor, you can determine the ports to use SSL, allowing customers to store certificates for each domain.
- Traffic calculation: you are able to collect and view HTTP, FTP, and Mail traffic in interactive graphs.
- Let’s Encrypt: it offers free signed certificates directly from Let’s Encrypt
- Other features: There are many other features for Froxlor, there include shell access, e-mail accounts, web forwarders, MySQL management, directory protection & -settings etc
This guide offers a detailed illustration of how to install Froxlor server management software on Debian 12 (Bookworm).
Prepare Your Server
Begin by updating your server:
sudo apt update && sudo apt upgrade -y
Then set a hostname on your system:
sudo hostnamectl set-hostname floxlor.geeksforgeeks.org
Map the entry in /etc/hosts:
$ sudo vim /etc/hosts
127.0.0.1 floxlor.geeksforgeeks.org
Verify the changes:
$ hostname -f
floxlor.geeksforgeeks.org
1. Download and install Froxlor
There are 3 options one can use when installing Froxlor server management software on Debian 12 (Bookworm). These are:
- Using APT (recommended)
- Manually using tarball archive
- Build form sources using git
In this guide, we will cover the first two methods. You are free to choose one that works best for you.
Option 1: Install Froxlor using APT(recommended)
This is the recommended method to install Froxlor server management software. You need to add the repository that provides the package to achieve that. This can be done using the commands:
sudo apt -y install apt-transport-https lsb-release ca-certificates curl gnupg
sudo curl -sSLo /usr/share/keyrings/deb.froxlor.org-froxlor.gpg https://deb.froxlor.org/froxlor.gpg
sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.froxlor.org-froxlor.gpg] https://deb.froxlor.org/debian $(lsb_release -sc) main" > /etc/apt/sources.list.d/froxlor.list'
Update the apt package index:
sudo apt update
Once the repository has been added, install Froxlor with the command:
sudo apt install froxlor
This will install all the required dependency packages:
....
Need to get 48.9 MB of archives.
After this operation, 326 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Configure Postfix as shown:
Set the system hostname:
Once complete, you can proceed with the next step of creating a privileged database user
Option 2: Install Froxlor Manually using Tarball
This can serve as an alternative method to install Froxlor server management software on Debian 12 (Bookworm). For this method, you need LAMP/LEMP stack installed.
This can be done using the guide below:
Ensure all the PHP extensions have been installed:
sudo apt install php libapache2-mod-php php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-gmp
Once installed, check the PHP version.
$ php -v
PHP 8.2.7 (cli) (built: Jun 9 2023 19:37:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
Now download Froxlor in your web root directory:
cd /var/www/html/
sudo wget https://files.froxlor.org/releases/froxlor-latest.tar.gz
sudo tar xvfz froxlor-latest.tar.gz
sudo rm froxlor-latest.tar.gz
Now you have the tarball downloaded and extracted in the web root directory. Set the required permissions:
sudo chown -R www-data:www-data /var/www/html/froxlor/
2. Create a Database & Privileged Database User
Once the installation has been done using any of the methods, you need to create a database and privileged database user for Froxlor.
First, access the database shell:
sudo mysql -u root
Now create a database and user:
CREATE USER 'froxroot'@'localhost' IDENTIFIED BY 'StrongPassw0rd';
GRANT ALL PRIVILEGES ON *.* TO 'froxroot'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
3. Complete Froxlor Installation Via the Web UI
Now you need to access the Froxlor web installer to complete the installation. First, ensure that port 80 is allowed through your firewall:
sudo ufw allow 80/tcp
Now access Froxlor using the URL http://domain_name/froxlor
Now start the installation, if all is okay, you will see this:
Provide the creds for the privileged user and database. You also need to unprivileged database-user details which will be created in this process.
Create an admin user.
Set up the system.
Remember to check the option to manually configure services
Once the installation is complete. You will be redirected to a login page. Now login using the created admin user:
You will gain access to the below dashboard.
Now we need to configure services. There are two options for that:
- Option 1: The first one is from the shell with the commands:
sudo -i
cd /var/www/html/froxlor
bin/froxlor-cli froxlor:config-services --create
- Option 2: Another option is via the UI, click on the notification on the top bar to perform service configs. You can also navigate to system->configuration
Select the services you want to configure
You will have a command generated for you to run on the shell. These commands need to be run as root: For example:
sudo -i
/var/www/html/froxlor/bin/froxlor-cli froxlor:config-services --apply=/var/www/html/froxlor/install/5033bf73a85fe70032e3f1ba0f4de778.json
rm /var/www/html/froxlor/install/5033bf73a85fe70032e3f1ba0f4de778.json
Once run, the notification will disappear when the page is refreshed.
4. Getting Started with Froxlor server management
Now you can use Froxlor to manage the resources on your Debian 12 system as desired. In the resources tab, you can manage customers, admins, domains, SSL certs, IP, ports, MYSQL server etc.
Create your first customer under Resources->Customers
Provide the required information:
With a customer created, you can create a domain, by navigating to Resources->Domains
Provide the required information for your new domain
Once added, the domains will appear as shown.
You can also add the desired IP and ports.
Configure PHGP as desired in the PHP tab.
Closing Thoughts
In this guide, we have walked through how to install Froxlor server management software on Debian 12 (Bookworm). This can be an easy way to manage the servers and resources within your network. I hope this was of importance to you.
See more on this page: