What is Froxlor?
Froxlor is a free and open-source web hosting control panel designed to help system administrators and hosting providers manage shared hosting servers. It provides a web-based interface to manage websites, domains, FTP accounts, email addresses, databases, SSL certificates, and user quotas—eliminating the need to configure each service manually.
Installing Froxlor on Debian 12 (Bookworm) offers a lightweight, flexible, and secure solution for managing multi-user web hosting environments, ideal for freelancers, small hosting businesses, and developers.
Key Features of Froxlor
Web Hosting Management
- Manage multiple domains, subdomains, and customer accounts.
- Supports both Apache and Nginx as web servers.
- Configure virtual hosts, PHP settings, and document roots per domain.
FTP and Email Services
- Create and manage FTP accounts with user quotas.
- Supports ProFTPD or Pure-FTPd for FTP services.
- Email account management via Postfix, Dovecot, or Courier.
- Features include forwarders, aliases, autoresponders, and spam filtering.
SSL and Let’s Encrypt Integration
- Issue and renew free SSL certificates via Let’s Encrypt.
- Assign custom or wildcard certificates to domains.
Database Administration
- Supports MySQL and MariaDB databases.
- Web-based access via phpMyAdmin integration.
User and Resource Quotas
- Assign disk space, traffic, and email limits to users.
- Monitor usage per customer or domain.
Modular Design and API
- REST API for automation and integration with billing systems.
- Modular structure for configuring web, FTP, mail, and DNS stacks.
Why Use Froxlor on Debian 12?
Debian 12 is well-suited for Froxlor due to its:
- Long-term support and stability
- Clean, minimal base system ideal for performance
- Large repository of compatible packages
- Secure configuration defaults
- Community-driven development model
Froxlor is lightweight enough to run on small VPS setups and powerful enough to handle shared hosting for multiple customers.
System Requirements for Froxlor on Debian 12
Component | Requirement |
---|---|
OS | Debian 12 (Bookworm) |
Web Server | Apache 2.4 or Nginx |
PHP Version | PHP 8.2 with required extensions (mysqli , curl , mbstring , etc.) |
Database | MySQL or MariaDB |
FTP Server | ProFTPD or Pure-FTPd |
Mail Server | Postfix with Dovecot or Courier |
Disk Space | 2 GB+ (more for hosting multiple sites) |
RAM | 512 MB minimum (1 GB+ recommended) |
Typical Froxlor Stack on Debian 12
- Web server: Apache or Nginx
- PHP: 8.2 with PHP-FPM
- Database: MariaDB 10.11 (default in Debian 12)
- Mail: Postfix + Dovecot
- FTP: ProFTPD or Pure-FTPd
- SSL: Let’s Encrypt via Certbot
- Firewall: UFW or iptables (optional)
Common Use Cases
- Small to mid-sized shared hosting providers
- Freelancers hosting client websites
- Local or private hosting for agencies or internal teams
- Educational or sandbox environments for students
- Personal control panels for self-managed servers
Pros of Froxlor on Debian 12
- Lightweight and resource-efficient
- Free and open-source with active development
- Clean, browser-based interface
- Compatible with major web/mail/FTP services
- No licensing fees or vendor lock-in
- Well-documented and relatively easy to maintain
Cons
- Requires manual configuration of backend services
- Less polished than commercial solutions like cPanel or Plesk
- Limited plugin ecosystem
- No built-in file manager (relies on FTP access)
- No native support for Docker or containerization
- DNS management requires external or advanced setup
Security Best Practices
- Use HTTPS with Let’s Encrypt for the Froxlor panel
- Restrict access using firewalls (UFW or iptables)
- Use strong passwords and disable unused services
- Keep Debian, Froxlor, and services up to date
- Monitor logs and resource usage regularly
- Consider installing Fail2Ban to block brute-force attempts
Froxlor on Debian 12 offers a capable and cost-effective solution for managing a shared web hosting server. It is ideal for users seeking an alternative to commercial hosting panels with full control over configurations. Debian 12 enhances this setup by providing a stable, secure, and low-overhead environment—making it perfect for self-hosted web servers and small-scale web hosting businesses.
Whether you’re hosting client websites or managing your own domains, Froxlor on Debian 12 provides the flexibility and functionality needed to handle day-to-day web hosting tasks efficiently.
Step 1: Create a Cloud VPS on Shape.Host
Go to https://shape.host and log in.
Click Create.
Choose Instance.

Select your preferred server location.

Choose Debian 12 (64-bit) as your OS.
Select a plan with at least 2 CPUs, 4 GB RAM, and 20 GB SSD.

Click Create Instance.

Find the instance’s IP address in the Resources section.

Step 2: Connect to Your Server
Linux/macOS:
Open your terminal and run:
ssh root@your_server_ip
Windows:
Use PuTTY, enter your server IP, then log in as root
.
Step 3: Update Package Index
apt update
Refreshes the package list so you’re ready to install the latest versions.

Step 4: Install and Configure Nginx
apt install nginx
systemctl start nginx
systemctl enable nginx
systemctl status nginx
This installs the Nginx web server, starts it, enables it to run at boot, and checks its status.


Step 5: Install and Configure MariaDB
apt install mariadb-server
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
Installs and starts MariaDB, the database system Froxlor will use.


Step 6: Create a Database Admin User
mariadb
Inside the MariaDB shell, run:
CREATE USER 'froxroot'@'localhost' IDENTIFIED BY 'your-password';
GRANT ALL PRIVILEGES ON *.* TO 'froxroot'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit
This creates a MySQL user with full privileges (use a secure password).

Step 7: Install PHP and All Required Extensions
apt install php-fpm php-intl php-mysql php-curl php-cli php-zip php-xml php-gd php-common php-mbstring php-xmlrpc php-bcmath php-json php-sqlite3 php-soap php-gmp php-gnupg php-zip php-ldap php-imap
These extensions are needed for Froxlor to run properly.

Step 8: Download and Extract Froxlor
cd /tmp
wget https://files.froxlor.org/releases/froxlor-latest.tar.gz
tar xvfz froxlor-latest.tar.gz -C /var/www/
chown -R www-data:www-data /var/www/froxlor/
Downloads the latest Froxlor version, extracts it, and sets the correct permissions.

Step 9: Set Up Nginx Virtual Host
nano /etc/nginx/sites-available/froxlor.conf
Paste the following config (replace your-domain.com
with your real domain or IP):
server {
listen 80;
listen [::]:80;
root /var/www/froxlor;
index index.php;
server_name your-domain.com;
access_log /var/log/nginx/your-domain.com.access.log;
error_log /var/log/nginx/your-domain.com.error.log;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

Step 10: Enable the Site and Restart Services
ln -s /etc/nginx/sites-available/froxlor.conf /etc/nginx/sites-enabled/
systemctl restart nginx.service
systemctl restart php8.2-fpm
Activates the new configuration and restarts Nginx and PHP-FPM to apply changes.
Step 11: Open Froxlor in Your Browser
Visit:
http://your_server_ip
This will launch the Froxlor web installer. Follow the setup steps to complete the configuration.

Click Start installation to begin.

Type in the database name and password, then click Next.

Create an admin account and continue.

Type in the server primary IP address and choose the webserver and backend for Nginx.

Choose to configure services yourself.

Login and begin configuring your services.


You’ve successfully installed Froxlor on Debian 12 with Nginx, PHP 8.2, and MariaDB — all based on your own commands, explained clearly.
Hosting by Shape.Host
This guide is designed for Shape.Host Cloud VPS users. Shape.Host offers:
- Fast and reliable Linux SSD VPS infrastructure
- Full root access
- Great performance for hosting control panels like Froxlor
Start at https://shape.host