How To Install Webuzo on Ubuntu 24.04 LTS
Webuzo stands as a powerful, user-friendly control panel designed to simplify web hosting management on Linux servers. This comprehensive guide walks you through installing Webuzo on Ubuntu 24.04 LTS, the latest long-term support release of Ubuntu. Whether you’re a seasoned system administrator or new to server management, this tutorial will help you set up Webuzo efficiently, enabling you to manage websites, applications, and server resources with ease.
What is Webuzo?
Webuzo is a feature-rich web hosting control panel that streamlines server management and application deployment processes. Developed as a solution for simplifying complex server administration tasks, Webuzo offers both single-user and multi-user (v4) versions to accommodate various hosting scenarios.
At its core, Webuzo provides a centralized management interface for your web server, allowing you to:
- Deploy web applications with one-click installation
- Manage domains and subdomains
- Configure and optimize web servers
- Administer databases
- Handle email services
- Manage FTP accounts
Unlike traditional control panels that often come with hefty licensing fees, Webuzo offers an affordable alternative without compromising on essential features. The control panel excels at providing a balance between functionality and user-friendliness, making server management accessible even to those without extensive technical backgrounds.
Webuzo’s architecture is designed to work seamlessly with Ubuntu 24.04 LTS, leveraging the stability and security features of this long-term support release. The integration ensures compatibility with the latest software packages while maintaining reliable performance.
System Requirements
Before beginning the installation process, ensure your system meets the necessary requirements to run Webuzo efficiently on Ubuntu 24.04 LTS.
Hardware Requirements
Webuzo requires modest hardware resources to operate effectively:
- RAM: Minimum of 1GB, though 2GB or more is recommended for optimal performance
- Disk Space: At least 5GB of free disk space, with 10GB recommended for better functionality
- CPU: A modern processor with at least 1 core (multiple cores will enhance performance)
Software Prerequisites
Your server should have:
- A fresh installation of Ubuntu 24.04 LTS without any existing web services
- Basic packages including wget, tar, and other utilities
- Properly configured networking with a static IP address
Network Requirements
Several ports must be open on your server for Webuzo to function correctly:
- Control panel ports: 2002, 2003, 2004, 2005
- Standard service ports: 21 (FTP), 22 (SSH), 25 (SMTP), 53 (DNS)
- Web service ports: 80 (HTTP), 443 (HTTPS)
- Email ports: 110 (POP3), 143 (IMAP), 465 (SMTPS), 587 (Submission), 993 (IMAPS), 995 (POP3S)
- Database port: 3306 (MySQL)
System Configuration
Ensure that SELinux is disabled on your system, as it can interfere with Webuzo’s functionality. Additionally, verify that your server has a properly configured hostname that resolves to its IP address.
Pre-Installation Preparation
Proper preparation is essential for a smooth Webuzo installation. Follow these steps to prepare your Ubuntu 24.04 LTS server.
Updating Your Ubuntu System
Begin by ensuring your system is fully updated:
sudo apt update
sudo apt upgrade -y
This ensures that you have the latest packages and security updates before installing Webuzo.
Removing Conflicting Software
Webuzo requires a clean system without pre-existing web services. If you have any of the following installed, they should be removed:
# Remove Apache if installed
sudo apt remove apache2 apache2-utils -y
# Remove Nginx if installed
sudo apt remove nginx -y
# Remove PHP if installed
sudo apt remove php* -y
# Remove MySQL/MariaDB if installed
sudo apt remove mysql* mariadb* -y
These commands will remove any existing web servers, PHP installations, and database servers that might conflict with Webuzo.
Setting Proper Hostname Configuration
Configure your server’s hostname to ensure it’s properly recognized:
# Set the hostname
sudo hostnamectl set-hostname your-server-name
# Edit the hosts file
sudo nano /etc/hosts
Add the following line to your hosts file, replacing the IP and hostname with your server’s details:
your-server-ip your-server-name
Security Considerations
Before installation, consider implementing basic security measures:
- Update your root password if you haven’t already done so
- Configure a basic firewall with ufw:
sudo apt install ufw
sudo ufw allow ssh
sudo ufw allow 2002:2005/tcp
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
This creates a foundation for secure server operation while allowing Webuzo’s required ports.
Step-by-Step Installation Process
With your system prepared, you can now proceed with the Webuzo installation on Ubuntu 24.04 LTS.
Accessing Your Server via SSH
Begin by connecting to your server using SSH:
ssh username@your-server-ip
Replace “username” with your actual username (often “root”) and “your-server-ip” with your server’s IP address.
Downloading the Webuzo Installer
Once connected, download the Webuzo installer script:
wget -N https://files.webuzo.com/install.sh
This command downloads the latest version of the Webuzo installation script.
Setting Installation Script Permissions
Make the installer executable:
chmod 0755 install.sh
This command grants execute permissions to the installation script.
Running the Installation Command
Now, run the basic installation command:
./install.sh
This will start the default installation process, which includes the LAMP stack (Linux, Apache, MySQL, PHP), DNS server (Bind), and FTP server (Pure-FTPd) along with Webuzo itself.
During installation, you can monitor the progress by checking the installation logs:
tail -f /root/webuzo-install.log
The entire installation process may take 15-30 minutes, depending on your server’s performance and internet connection speed.
Verifying the Installation
After the installation completes, you’ll see a success message similar to:
Congratulations, Webuzo has been successfully installed
You can now configure Softaculous Webuzo at the following URL:
https://your-server-ip:2005/
This confirms that Webuzo has been installed successfully.
Installation Options and Customization
Webuzo offers flexibility in installation options, allowing you to customize your setup according to your specific needs.
Default Installation Packages
When installing Webuzo without any customization parameters, the default installation includes:
- Apache 2.4 (web server)
- MySQL 8.0 (database server)
- PHP 7.3 (scripting language)
- Pure-FTPd (FTP server)
- Bind (DNS server)
- Exim (mail transfer agent)
- Dovecot (mail delivery agent)
- Git (version control system)
- Web Disk (file manager)
This default setup provides a comprehensive environment for most web hosting needs.
Installing with No Applications
If you prefer to start with a clean slate and manually install applications later, use:
./install.sh --install=none
This installs only the Webuzo control panel without any additional applications. You can later add applications through the Webuzo admin panel.
Selecting Specific Applications to Install
For a more customized installation, you can specify which applications to install:
./install.sh --apache --mysql --php73
This allows you to build your environment with precisely the components you need. The available options include various web servers, database systems, and programming languages.
LAMP vs. LEMP Stack Installation
Webuzo supports both LAMP (Linux, Apache, MySQL, PHP) and LEMP (Linux, Nginx, MySQL, PHP) stack installations:
For LAMP stack (default):
./install.sh
For LEMP stack:
./install.sh --nginx --mysql --php73
The LEMP stack can offer performance advantages for certain types of websites, particularly those with high traffic volumes.
Post-Installation Configuration
After successfully installing Webuzo, it’s essential to complete the initial configuration to ensure your server operates optimally.
Accessing the Webuzo Admin Panel
You can access the Webuzo admin panel through your web browser using one of the following URLs:
- For HTTP access:
http://your-server-ip:2004
- For HTTPS access:
https://your-server-ip:2005
When prompted for login credentials, use the root username and password of your server for the initial login.
Initial Login and Setup Wizard
Upon your first login, Webuzo presents a setup wizard that guides you through the essential configuration steps:
- Set up your administrator account details
- Configure your server’s hostname and networking information
- Set primary and secondary nameservers for domain management
- Verify email delivery settings
This wizard helps ensure that basic settings are properly configured before you start using the control panel.
Configuring Server IP and Hostname
Verify that your server’s IP address and hostname are correctly configured in Webuzo. Navigate to:
Admin Panel > Server Settings > General Settings
Here, confirm that:
- The server IP matches your actual server IP address
- The hostname is correctly set to your server’s fully qualified domain name
- The time zone settings are appropriate for your location
Setting Up Nameservers
For proper domain management, configure your nameservers:
- Go to Admin Panel > DNS Functions > Nameserver Settings
- Enter your primary nameserver (e.g., ns1.yourdomain.com)
- Enter your secondary nameserver (e.g., ns2.yourdomain.com)
- Ensure these nameservers are correctly pointed to your server’s IP address
Properly configured nameservers are essential for domain management and DNS resolution.
Setting Up Users and Access Control
Effective user management is crucial for maintaining security and organizing your hosting environment.
Creating the Administrator Account
While you initially logged in using the root credentials, it’s recommended to create a dedicated administrator account:
- Navigate to Admin Panel > User Management > Add User
- Create a username and strong password
- Assign administrator privileges to this account
- Enable email notifications for this user
- Save the new administrator account
Using a dedicated administrator account enhances security by limiting direct root access to the control panel.
Adding Shared Hosting Users
For hosting multiple websites or providing hosting services to clients, create individual user accounts:
- Go to Admin Panel > User Management > Add User
- Specify a username and password for the new user
- Set appropriate resource limits (disk space, bandwidth, etc.)
- Assign specific permissions based on the user’s requirements
- Complete the user creation process
Each user will receive their own login credentials and isolated environment for their websites and applications.
User Permissions and Limitations
Webuzo allows fine-grained control over user permissions:
- Resource Quotas: Limit disk space, bandwidth, and database usage
- Feature Access: Control which features each user can access
- Domain Limitations: Restrict the number of domains a user can manage
- Application Permissions: Specify which applications users can install
These controls help maintain server stability while providing appropriate access levels to each user.
Installing and Managing Web Servers
Web servers form the foundation of your hosting environment. Webuzo simplifies their installation and management.
Apache Configuration and Management
If you chose to install Apache during the initial setup, you can manage it through:
- Go to Admin Panel > Apps > Installed Apps
- Locate Apache in the list and click Manage
From the management interface, you can:
- Configure Apache settings
- Manage virtual hosts
- Enable or disable modules
- Set up SSL certificates
- Monitor server status
Apache provides excellent compatibility with various applications and CMS platforms.
Nginx Installation and Setup
If you prefer Nginx or want to add it alongside Apache:
- Navigate to Admin Panel > Apps > Install an App
- Search for “Nginx” and click on it
- Click the Install button to begin installation
Once installed, you can configure Nginx through its management interface, optimizing it for performance and security.
Web Server Optimization
For optimal performance, consider these optimization steps:
- Enable caching mechanisms
- Configure appropriate resource limits
- Implement compression for faster content delivery
- Fine-tune worker processes and connections
- Set up proper logging and monitoring
These optimizations help ensure your web server delivers content efficiently while maintaining stability.
Database Management
Databases store and organize website and application data. Webuzo provides tools for comprehensive database management.
Setting Up MySQL/MariaDB
If MySQL was installed during the initial setup, you can manage it through:
- Go to Admin Panel > Apps > Installed Apps
- Find MySQL in the list and click Manage
In the management interface, you can:
- Adjust configuration settings
- Monitor database performance
- Manage storage engines
- Configure backups
For optimal database performance, consider adjusting buffer sizes, connection limits, and query caching settings based on your server’s available resources.
Creating and Managing Databases
To create a new database:
- Navigate to Admin Panel > Database > MySQL > Create Database
- Enter a database name
- Set character encoding (UTF-8 recommended)
- Create a database user and assign permissions
- Complete the database creation process
This creates a new database ready for use with your websites and applications.
PhpMyAdmin Integration
PhpMyAdmin provides a user-friendly interface for database management:
- Go to Admin Panel > Apps > Install an App
- Search for “PhpMyAdmin” and install it
Once installed, you can access PhpMyAdmin through the Webuzo interface for comprehensive database administration.
PHP Configuration and Management
PHP powers many popular websites and applications. Webuzo allows you to manage multiple PHP versions simultaneously.
Installing Multiple PHP Versions
To install additional PHP versions:
- Navigate to Admin Panel > Apps > Install an App
- Search for “PHP” and select the desired version
- Click Install to begin the installation process
Webuzo supports multiple PHP versions concurrently, allowing different websites to use different PHP versions as needed.
PHP Version Selection Per Website
To assign a specific PHP version to a website:
- Go to Admin Panel > Manage Domains
- Select the domain you want to configure
- In the domain settings, choose the PHP version
- Save the changes
This flexibility ensures compatibility with various applications that might require specific PHP versions.
PHP Module Management
Manage PHP extensions and modules through:
- Navigate to Admin Panel > Apps > Installed Apps
- Find your PHP installation and click Manage
- Under the Extensions tab, enable or disable modules as needed
Common modules you might need include:
- mysqli (for MySQL database connectivity)
- gd (for image processing)
- curl (for remote connections)
- zip (for file compression)
- mbstring (for multi-byte string handling)
Domain and DNS Management
Effective domain management is essential for hosting multiple websites on your server.
Adding Domains to Webuzo
To add a new domain:
- Navigate to Admin Panel > Manage Domains > Add Domain
- Enter the domain name (e.g., example.com)
- Configure domain settings (document root, PHP version, etc.)
- Enable SSL if needed
- Complete the domain addition process
This creates the necessary virtual host configurations and directory structures for your domain.
DNS Zone Configuration
For domains using your server’s nameservers:
- Go to Admin Panel > DNS Functions > DNS Zone Manager
- Select the domain to configure
- Add or modify DNS records as needed
Common DNS records include:
- A records (linking domain names to IP addresses)
- CNAME records (creating domain aliases)
- MX records (directing email delivery)
- TXT records (for verification and SPF)
Properly configured DNS ensures that your domains resolve correctly and services function as expected.
Email Server Configuration
A properly configured email server allows you to send and receive emails through your domain names.
Setting Up Exim and Dovecot
If you installed the default applications, Exim (SMTP server) and Dovecot (IMAP/POP3 server) are already installed. Configure them through:
- Navigate to Admin Panel > Apps > Installed Apps
- Find Exim and Dovecot in the list and click Manage for each
Basic configuration includes:
- Setting hostname and domain settings
- Configuring authentication methods
- Setting size limits for messages
- Enabling spam protection
Email Account Creation
To create email accounts for your domains:
- Go to Admin Panel > Email Functions > Email Accounts
- Select the domain for the email account
- Create a new email account with username and password
- Set appropriate quotas and settings
- Complete the account creation process
These accounts can be accessed through webmail or configured in email clients.
FTP Management
FTP (File Transfer Protocol) provides a convenient way to upload and manage website files.
Pure-FTPd Configuration
The default Webuzo installation includes Pure-FTPd. To configure it:
- Navigate to Admin Panel > Apps > Installed Apps
- Find Pure-FTPd in the list and click Manage
Important settings include:
- Connection limits
- Passive port range
- Security settings
- Bandwidth throttling
Creating FTP Accounts
To create FTP accounts for file management:
- Go to Admin Panel > FTP Functions > FTP Accounts
- Create a new FTP account with username and password
- Set the appropriate directory permissions
- Define bandwidth and connection limits if needed
- Complete the account creation process
FTP accounts allow secure file transfers between your local computer and the server.
SSL Certificate Implementation
Secure your websites with SSL certificates for encrypted connections.
Free SSL Certificates with Let’s Encrypt
To install a free SSL certificate:
- Navigate to Admin Panel > Security Functions > SSL Certificates
- Select “Let’s Encrypt” as the certificate provider
- Choose the domain for the certificate
- Complete the certificate request process
Let’s Encrypt certificates are valid for 90 days and can be automatically renewed.
Commercial SSL Installation
For commercial SSL certificates:
- Go to Admin Panel > Security Functions > SSL Certificates
- Select “Upload SSL Certificate”
- Enter the certificate, private key, and CA bundle information
- Complete the installation process
Once installed, configure your websites to use HTTPS for secure connections.
Congratulations! You have successfully installed Webuzo. Thanks for using this tutorial for installing Webuzo Control Panel on Ubuntu 24.04 LTS system. For additional help or useful information, we recommend you to check the official Webuzo website.