Froxlor is a very powerful and lightweight server management panel written in PHP. It is also free and Open Source. Froxlor can be used for creating and managing shared web hosting servers. Unlike other hosting panels it does not come with a pre-installed LAMP, but due to its small memory requirements, it can be used to perform various tasks related to server management and web hosting management.
Froxlor comes with many features but most significant features are
You can choose different IP address and port for each domain hosted.
Support for per domain php.ini file.
Let's Encrypt SSL support as well as per domain SSL support.
MySQL management, directory protection and Quota Management.
Limit multiple resources for Resellers and Customers.
Interactive graphs for HTTP, FTP and Mail traffic.
Support for popular web servers like Apache, nginx and Lighttpd.
Inbuilt support ticket system for easy interaction with customers.
In this tutorial, we will learn to install Froxlor on CentOS 7 after installing all the necessary dependencies.
Froxlor can be installed on systems with a small amount of RAM, but it is recommended that you have at least 512 MB RAM. You will also need a minimal installation of CentOS 7 with root access on it. If you are logged in as non root user, you can run sudo -i to switch to root user.
Before installing any package in our system, it is recommended to update the system and available package, run the following command for same.
yum -y update
Once the system is updated, you will need to setup a hostname for your server. A hostname is an FQDN which can not be same as the domain name you want to host on the server. For example, if you have a domain example.com, you can use hostname such as host.example.com. Run the following command to set the hostname.
You can now install the LAMP package which required to install Froxlor. The default YUM repository contains PHP version 5.4, but it is recommended to install PHP v5.6 or v7.0. To install these packages you will need to install Webtatic and EPEL repositories. Run the following commands for same.
Run the following command to secure your MariaDB installation.
You will be prompted to enter current root password of MySQL root, as we have just installed MySQL/MariaDB, there is no root password, just press Enter button to proceed further. Set a strong root password for MySQL root and answer y for all the questions.
Now you will need to disable SELinux. Edit the /etc/sysconfig/selinux file using your favorite text editor.
Look for the SELINUX=enforcing in the file and change it to SELINUX=disabled. Now reboot your server so that the SELinux is disabled completely.
Once the server is up again, we can download the Froxlor files. Login as root user and switch to webroot directory of Apache.
Now download the Froxlor files and extract it using the following commands.
If you don't have wget installed, you can install it using yum -y install wget. This will extract the file in froxlor subdirectory. Now provide the appropriate permissions to the Froxlor files using the following command.
chown -R apache:apache /var/www/html/froxlor/
Now you can proceed to the front end to complete the installation of the software. Open your favorite web browser and go to the following web address.
Click on Start Install link to proceed further. The installer will now check for the requirements to install Froxlor. If you have followed the tutorial, you should get the message that all the requirements are satisfied.
In Database section, do not change the default value which is 127.0.0.1. Leave the default value of Database name and username for unprivileged MySQL account. Provide a password for unprivileged MySQL account. As we have not created this database, the installer will create the database froxlor with username froxlor and password provided. Provide the MySQL root account password which we have created during the execution of mysql_secure_installation script.
In Administrator Account section, provide the administrator username and password. You will be able to login to the Admin interface using these credentials. In Server settings, provide a server name in FQDN and the public IP address of your server. Choose the web server which is installed, in our case it is Apache 2.4. The HTTP username and groupname is apache in our case. Click on Click here to continue button and if the information provided is correct then you will get a success message as shown below.
In Account details section, provide a username using which the user will log in. Next on choosing Yes option for Create standard subdomain? then a subdomain with username and hostname will be automatically created, for example, if the hostname is froxlor.example.com and username is test, then standard subdomain will be test.froxlor.example.com. Next choose Yes to copy the default index file to new user docroot directory. Provide a password for the user, you can also use the suggestion provided below as password. If you choose Yes for Send password then an email with the username and password will be sent to the Customer.
In the Contact data section, provide the customer's details with the email address.
In the Service data section, set the limits of the resources for the customer. Provide the Webspace in MB, Traffic in GB and others like subdomains, email accounts databases etc. You can choose to provide unrestricted resources by selecting ∞ check box. Finally, choose if you want to enable PHP and PERL for customer websites. Click Save button to add the customer.
To add a new domain to the server, click on Domains link from the left sidebar and you will be taken to the list of domains. List of all the domains hosted on the server will appear here.
In the Domain settings section, provide your domain name and choose the customer to associate the domain with. Choose the Admin for the domain, it can be the root administrator or any reseller. Next choose if the domain is an alias or a subdomain of another domain. Next, you can choose if you wish to allow a customer to make few changes to the domain. If you choose not select yes then the customer will not be able to make any change in domain. Finally, you can provide the registration and expiry date of the domain, which is optional.
In Web Server settings, you can configure the Document root directory, it is recommended to leave this option blank to use the default directory. Specify the IP address for your server, if you have more than one IP addresses, you can add more the one addresses. Next in ServerAlias value for the domain you can Chose whether froxlor should create a wildcard entry (*.example.com), a WWW-alias (www.example.com) or no alias at all. Next, you can choose Separate logfile option to enable separate log file for the domain.
Fuhrer, select appropriate choices for Web Server SSL settings, PHP Settings, Nameserver settings, Mailserver settings. These settings are optional. Click Save button to add the hosting for the domain on the server.
You can now edit the DNS settings of the domain and create an A record to point it towards the IP address of your server. Once done you will see the default index page.
In this tutorial, we learned how to install Froxlor on CentOS 7 with basic web server functionalities. To add more feature on the server, you can click on Configuration link from the sidebar and choose the distribution and service to be installed. Follow the instructions provided. Apart from this we also learned to add customers and domain to the Froxlor interface.
You can create an email email filters through your cPanel control panel which is where you manage your hosting account. Email filters can be set up to target specific word, subject, from or to. Emails that are filtered out can be sent to a different email, deleted, delivered to a...
If you find your cPanel disk space filling up, or an email address has hit its disk space quota, cPanel has a helpful built in Email Disk Usage tool. This will provide you with a simple to understand breakdown of how much disk space each folder for a particular email...
Although WHM will normally automatically keep itself up to date, you may want to manually check for server updates / push through an update that is pending, or it may be that you have automatic updates switched off on your cPanel server. In this guide we will show you how...