Webmin is an open-source server management platform that provides a web-based GUI for Linux system administration. It includes core functions and additional modules to handle user accounts, disk quotas, networking, and applications.
This guide explains how to install Webmin on an Ubuntu 22.04 server, giving you a browser-based control panel to manage and monitor server functionalities.
Prerequisites
Before starting, make sure you have:
- An Ubuntu 22.04 server.
- A new subdomain DNS record pointing to your server IP address (e.g., webmin.example.com).
- SSH access to the server as a non-root user with
sudoprivileges. - Updated your server packages.
Matching infrastructure at centron
Ubuntu servers without your own hardware: ccloud³ VMs with full root access from €3.12 per month, billed by the hour and ready in seconds. Rent a cloud server →
Install Webmin
Webmin is not included in the default Ubuntu 22.04 APT repositories. Use the following steps to add the Webmin repository and install the application.
Download the repository script
$ curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.shRun the script
$ sudo bash setup-repos.shInstall Webmin
$ sudo apt install --install-recommends webmin -yVerify Webmin service
$ sudo systemctl status webminSample output:
● webmin.service - Webmin server daemon
Loaded: loaded (/usr/lib/systemd/system/webmin.service; enabled; preset: enabled)
Active: active (running) since Thu 2024-06-06 04:53:54 UTC; 43s ago
Process: 5537 ExecStart=/usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf (code=exited, status=0/SUCCESS)
Main PID: 5538 (miniserv.pl)
Tasks: 1 (limit: 2269)
Memory: 136.3M (peak: 219.0M)
CPU: 7.408s
CGroup: /system.slice/webmin.service
└─5538 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
Secure Webmin with HTTPS
By default, Webmin is available on port 10000 using HTTP. To secure the interface, configure it with HTTPS and trusted SSL certificates from Let’s Encrypt.
Allow HTTP for certificate validation
$ sudo ufw allow 80/tcpInstall Certbot
$ sudo apt install certbot -yGenerate SSL certificates
$ sudo certbot certonly --standalone -d webmin.example.com -m webmin@example.com --agree-tosSuccessful output example:
Certificate is saved at: /etc/letsencrypt/live/webmin.example.com/fullchain.pem
Key is saved at: /etc/letsencrypt/live/webmin.example.com/privkey.pem
This certificate expires on 2025-07-04.
Merge and move SSL certificate
$ sudo cat /etc/letsencrypt/live/webmin.example.com/fullchain.pem /etc/letsencrypt/live/webmin.example.com/privkey.pem > webmin.pem$ sudo mv webmin.pem /etc/webmin/Edit Webmin configuration
$ sudo nano /etc/webmin/miniserv.confUpdate the configuration to reference the new SSL file:
keyfile=/etc/webmin/webmin.pemRestart Webmin
$ sudo systemctl restart webminSet Up Firewall Rules
Ubuntu 22.04 enables UFW by default. Configure the firewall to permit Webmin and secure connections.
Allow Webmin port
$ sudo ufw allow 10000Allow HTTPS connections
$ sudo ufw allow httpsDeny HTTP connections
$ sudo ufw deny httpReload UFW
$ sudo ufw reloadCheck UFW status
$ sudo ufw statusExample output:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
10000 ALLOW Anywhere
443 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
10000 (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
Access Webmin
Open your Webmin domain in a web browser (for example, Chrome) on port 10000:
https://webmin.example.com:10000
Log in with your sudo user account credentials and click Sign In to enter the Webmin control panel.
Webmin login page
All users with login privileges can sign in to Webmin, but only those with sudo rights can execute administrative actions.
Verify Server Information
In the Webmin dashboard, review system details such as CPU, memory, disk space, and processes.
Update Server Packages
Navigate to System > Software Package Updates to see packages that require updates. Select the ones you want and click Update Selected Packages.
Update Server Application Packages using Webmin
Click Install Now to apply updates to the chosen packages on your server.
Manage Files
Go to Tools > File Manager to browse and manage files on your server.
Access file manager
Use Terminal
Navigate to Tools > Terminal to open a new terminal shell session directly from your browser.
Access terminal
Conclusion
You have successfully installed Webmin on Ubuntu 22.04, secured it with SSL certificates, and accessed the interface to manage your server. With Webmin, you can keep packages updated, manage the filesystem, and control essential components like users and processes. For further details and configuration guides, consult the official Webmin documentation.
Testen Sie Ihr Setup auf ccloud³
Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.