Introduction
Are you searching for a step-by-step guide to install Webmin on Debian 12? This simple tutorial is for you! Webmin is a free, open-source web-based control panel that simplifies Linux server management right from your browser. Its intuitive dashboard lets you handle various configurations, including user accounts, disk quotas, DNS settings, services, web servers, and much more. If you're using a LAMP stack, Webmin makes it easy to manage your Apache web server, MySQL, PHP applications, and even technologies like PostgreSQL and Python. Plus, you can manage your server remotely from any browser. In this guide, we’ll walk through installing Webmin on an Debian 12 server. We'll also cover basic system administration tasks like monitoring your system, adding users with custom permissions, managing packages, and running software or commands on your server.Prerequisites
- A Debian 12 server with root access or a
sudo
user. If you haven't noticed, we offer extremely powerful Debian Linux servers at the globe's absolute lowest price. Take a look at our offerings and prepare for your mind to be blown 🤯. - Access your sever via SSH, check out How to access your server using SSH for instructions.
Note
If you want to skip all the technical steps of setting up Webmin and have it installed in minutes, you can use our tried and tested 1-click Webmin application. Just choose a server, click Customize Your Own Server, under Select Server Image go to the Apps tab, then choose Webmin. This will set up Webmin in minutes!Step 1: Updating the Package Cache
Start by updating the packages in the package manager cache to the latest available versions using the following command:sudo apt update
Step 2: Install Webmin on Debian 12
To install the Webmin control panel on Debian 12, you'll first add the Webmin repository that will enable you to install the Webmin packages and update them withapt
, then you'll update the package cache, and finally you'll use the apt install webmin
command.
Install the Required Packages
First, installcurl
to use it to download the Webmin repository setup script, and gnupg2
to verify Webmin signatures:
sudo apt install gnupg2 curl -y
Download and Run the Setup Script
Next, download the setup script:curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
Run this script:
sh setup-repos.sh
Update the package cache:
sudo apt update
Install Webmin
After the Webmin repositories setup, you can now install Webmin:sudo apt install webmin --install-recommends
Once the installation finishes, check that the webmin
service is running properly using the following command:
sudo systemctl status webmin
● webmin.service - Webmin server daemon
Loaded: loaded (/lib/systemd/system/webmin.service; enabled; preset: enabled)
Active: active (running) since Sun 2024-09-08 11:57:14 UTC; 1h 22min ago
Process: 6352 ExecStart=/usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf (code=exited, status=>
Main PID: 6353 (miniserv.pl)
Tasks: 5 (limit: 9476)
Memory: 106.4M
CPU: 2min 39.979s
CGroup: /system.slice/webmin.service
├─ 6353 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
├─ 6833 /usr/bin/perl /usr/share/webmin/authentic-theme/stats.pl 555
├─ 6910 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
├─18708 sh -c "(vmstat 1 2 2>/dev/null)"
└─18709 vmstat 1 2
Note: Webmin is accessible via port 10000
. If you have a firewall, you need to allow Webmin's port through the firewall:
sudo ufw allow 10000
Warning: You should be extremely careful with your security practices. It is best to allow only a few trusted IP addresses or IP ranges to access your Webmin control panel.
With the Webmin package installed, use your browser to visit the following URL, replacing your_ip_address_or_domain
with your server's IP address or domain name:
https://your_ip_address_or_domain:10000
If you haven't set up an SSL certificate from a trusted Certificate Authority like Let's Encrypt, your browser will show a "Not Secure" or "Connection is not private" error. This happens because the connection to your server isn't recognized as secure. Don't worry though—this is expected. Webmin uses a self-signed certificate for encryption, but since your server isn't a known certificate authority, the browser flags it as untrusted.
The following is an example of the error in the Google Chrome browser. Don't worry, we'll fix this later.
Click the Advanced button or More information depending on the browser, and choose to proceed.
Login using the Unix username and password you've set up on the server. Or you can use your server's root account.
You’ll be moved to the dashboard:
With this, you have Webmin installed on your Debian 12 server and ready to be used.
Reader Alert!
To avoid all these steps and install Webmin in minutes, you can use our tried and tested 1-click Webmin application. Just choose aContinue reading this article
by subscribing to our newsletter.
Subscribe nowby subscribing to our newsletter.
A note about tutorials: We encourage our users to try out tutorials, but they aren't fully supported by our team—we can't always provide support when things go wrong. Be sure to check which OS and version it was tested with before you proceed.
If you want a fully managed experience, with dedicated support for any application you might want to run, contact us for more information.