Webmin is a website-based interface for system administration for Linux or Unix-based systems. Using any modern web browser, users can set up their accounts, Apache, DNS, file sharing, and more using Webmin. It can also control many machines through a single interface or seamless login on other Webmin hosts on the same LAN (Local Area Network) or subnet. Users can use any modern web browser to connect to their server. Webmin will remove the need to edit Unix configuration files manually, consisting of a simple web server and several CGI programs that directly update system files like /etc/inetd.conf and /etc/passwd. Webmin also lets the user manages a system from the console or remotely. All these web servers and CGI programs associated with Webmin are written in Perl version 5 and use no non-standard Perl modules.
Webmin will allow users to configure operating system internals, such as disk quotas, users, services, or configuration files, as well as control and modify open-source applications, such as PHP, Apache HTTP Server, or MySQL. Webmin is based on Perl, which runs as its own process and web servers.
Although many people have contributed translations and patches into additional languages, most of the development was done by Jamie Cameron. All versions of Webmin are under a BSD-like (Berkeley Source Distribution) license, meaning that it may be freely modified and distributed for commercial and non-commercial use.
Webmin supports the concept of modules so that users can view a list of third-party modules. Because Webmin endorses the idea of modules (like PhotoShop plugins), anyone can develop and distribute their own Webmin modules for any purpose and distribute them under any license (such as GPL, commercial, or shareware).
There are many Linux or Unix-based operating systems and distributions supported by Webmin, which the users can view from here.
Users can expand Webmin by installing modules which can be custom-made. Aside from the custom option, users can choose two other significant projects that extend the functionality of Webmin:
- Usermin: The Usermin project presents and controls a subset of the features available in Webmin, such as webmail and other user-level tasks, rather than administrator-level tasks.
- Virtualmin: Virtualmin is a web hosting control panel. Out of the box, Virtualmin enables users to host websites under their domains. This project gives the server admin and the end-user an easy-to-use interface for managing their websites.
By using a web browser, users can connect to their server. Typically the user would configure their server to use SSL for secure login. However, the TCP (Transmission Control Protocol) port can be configured to a different port for even more security. Typically, when the user first accesses their server, they will receive an error that the certificate for HTTPS is self-signed, which is normal. Later on, the user might consider purchasing an SSL for their secured login. Once the user has accepted the certificate, they will see a login screen similar to the one shown below.
Once the user has logged in, the following screen is a dashboard that displays general information about the system, and they can control various aspects of their server from the menu on the left.
Common Webmin Modules
The built-around modules of Webmin have an interface to configure the Webmin server and files, making it simple to add new functionality. Due to Webmin’s modular design, it is reasonable for anyone interested to write plugins for desktop configuration. Modules are available to primarily manage just about every aspect of a Linux or Unix system.
- Users can manage their packages via Webmin by clicking on the system menu item and then software packages. Here, users can search for a package to view its information, install or uninstall new software packages, and even update software packages.
- Users can also delete or add server users by selecting the Webmin Users
- Users can upload or browse files by selecting Others and then File Manager.
- Users can work in the command line by selecting Others and then the Command Shell.
- Users can custom configure Webmin by choosing Webmin and then the Webmin Configuration.
- They can also control what daemons start and stop during system startup and shut down, to access run levels, and the ability to add custom applications to shut down and startup.
- After installing the Apache web server, users can add websites by going to the server’s Apache Web server settings.
As per the new update, the Webmin demo server is not available for users. Instead, users can check the various screenshots taken from Webmin (using an older theme) for some scenarios from the following link:
Some of these screenshots are:
Listing mounted filesystems on Linux
Editing a system bootup script that starts Apache
This tutorial presents a brief introduction to Webmin and an update about the Webmin demo server. Hope this tutorial was helpful, and do reach out to us if you have any queries or suggestions.