Keep watch over your server system with Webmin
Steady Hand
Every leading Linux distribution offers some kind of built-in GUI management tool, but the world still has room for a flexible, distribution-independent tool like Webmin.
Webmin [1] is a web-based interface for system administration of Unix-like systems. The first part of this tutorial explains what Webmin is and when and why you might want to use it. The second part describes how to set up Webmin and use it for some basic administration tasks. Finally, I'll show you some advanced Webmin features.
If you want to configure your Linux computers in the best possible way or be able to rescue them when something goes wrong, there are no shortcuts: You need to know the basics of the command line and understand how to edit shell scripts and configuration files manually. However, just because you use the command line doesn't mean you like it, and this is where interfaces like Webmin can help.
Of course, if Webmin were nothing more than a mouse-first version of some system administrations utilities, it would be much less useful now than when it first appeared. These days, every desktop-oriented Linux distribution provides a suite of graphical management tools. However, Webmin still provides some benefits for today's networks.
First, Webmin is "network transparent." It doesn't matter whether you're actually sitting in front of the computer you need to manage or half a planet away, if you configure your firewall properly, you will be able to manage your computers in the same way. Plus, you can operate Webmin through any browser, even if you cannot connect via SSH. Even in cases where Webmin is little more than a web-based text editor for configuration files, it is still worth using.
Second, running a personal server is becoming a more common task. If you care about your blogging, photographs, and email, you really should locate these services on a server that is actually yours. Many Linux distributions that are optimized for such scenarios don't run any desktop environment – nor should they. With Webmin, you can manage many parts of your servers through the same interface you use on your own desktop.
Third, Webmin lets you delegate. If the basic management tasks are possible from any browser with a few clicks, you can ask colleagues, friends, or relatives, who might not even know Linux, to look after your computer when you're sick or traveling.
Fourth, Webmin hides differences among distributions. Things have improved since the 1990s, but in many cases you still cannot reuse exactly the same script or command across distributions. Webmin does its best to hide all that. The Webmin form to create a user, for example, will always be basically the same for all the versions of Linux that Webmin supports, plus Solaris, FreeBSD, and HP/UX.
Finally, for all the reasons above, Webmin can also be a great (self-)training environment. You can configure programs and tasks with Webmin and then study how it modified the configuration files of your system, or you can set up Webmin in a computer class to let your students do the same thing.
Gotchas and Limitations
If you carefully read the previous paragraphs, you have probably noticed some limitations in what Webmin can do. The limitations arise from the fact that Webmin, no matter how convenient it is, is ultimately just a configuration and management assistant.
To use Webmin, you must first install Linux and possibly other programs (not to mention Webmin itself) the traditional way, but you cannot install Webmin on systems where you do not have root access.
Overview and Initial Configuration
Technically speaking, Webmin is a set of Perl scripts that can be extended with many modules, and the configuration includes a small web server. At a low level, all Webmin does is translate (or reapply) your commands as changes in the standard, textual configuration files used to configure a Linux system.
The good thing is that, although Webmin directly updates the usual configuration files, it doesn't overwrite all their contents. Inside those files, Webmin only changes the parts that you tell it to change and leaves the rest alone. In other words, almost all the careful changes and customizations you did manually before you started using Webmin should be unchanged. In general, you should be able to mix Webmin and good old command-line typing as you wish.
Installing and Configuring Webmin
Webmin is not generally included in the package repositories of most Linux distributions. To install it, you must download the files from the website in the format most compatible with your distribution, then follow the instructions. If you use a Linux distribution based on the .rpm
or .deb
packaging formats, just download the corresponding binary package and install it with your usual software manager. You might have to force your package manager to ignore dependencies or install the dependencies manually yourself, but usually this does not create any problem. On some distributions, you have to start Webmin manually after the installation by issuing a command like the following as root:
service webmin start
At that point, you will be able to log in to Webmin by pointing your browser to the address https://localhost:10000. If you are accessing Webmin from another computer, replace localhost with the hostname or IP address of the system you want to access. If you want to manage your computer remotely, you will also have to tell the firewall to forward incoming traffic to TCP port number 10000.
Because Webmin generates its own SSL certificate when you install it – to use encrypted (HTTPS) connections – you'll also get the standard warning from your browser that the certificate cannot be trusted; in this case, you may ignore the warning.
Figure 1 shows what Webmin looks like when you start using it. You can change the look and feel by choosing another of the (few) themes included, but be warned: None of the themes will win a web design award anytime soon (Figure 2). However, they all do the job, and for the most part, Webmin themes also work in text browsers that support frames.
Webmin is well documented, and you should spend some time browsing the resources listed in the System | System Documentation section. The search box at the bottom of the sidebar will help you to find the functions you need and assist you with installing the corresponding packages if they aren't already in your computer. Most Webmin windows include links to relevant instructions or chapters of the online documentation [2] to facilitate their usage.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Halcyon Creates Anti-Ransomware Protection for Linux
As more Linux systems are targeted by ransomware, Halcyon is stepping up its protection.
-
Valve and Arch Linux Announce Collaboration
Valve and Arch have come together for two projects that will have a serious impact on the Linux distribution.
-
Hacker Successfully Runs Linux on a CPU from the Early ‘70s
From the office of "Look what I can do," Dmitry Grinberg was able to get Linux running on a processor that was created in 1971.
-
OSI and LPI Form Strategic Alliance
With a goal of strengthening Linux and open source communities, this new alliance aims to nurture the growth of more highly skilled professionals.
-
Fedora 41 Beta Available with Some Interesting Additions
If you're a Fedora fan, you'll be excited to hear the beta version of the latest release is now available for testing and includes plenty of updates.
-
AlmaLinux Unveils New Hardware Certification Process
The AlmaLinux Hardware Certification Program run by the Certification Special Interest Group (SIG) aims to ensure seamless compatibility between AlmaLinux and a wide range of hardware configurations.
-
Wind River Introduces eLxr Pro Linux Solution
eLxr Pro offers an end-to-end Linux solution backed by expert commercial support.
-
Juno Tab 3 Launches with Ubuntu 24.04
Anyone looking for a full-blown Linux tablet need look no further. Juno has released the Tab 3.
-
New KDE Slimbook Plasma Available for Preorder
Powered by an AMD Ryzen CPU, the latest KDE Slimbook laptop is powerful enough for local AI tasks.
-
Rhino Linux Announces Latest "Quick Update"
If you prefer your Linux distribution to be of the rolling type, Rhino Linux delivers a beautiful and reliable experience.