Administering a Linux server is not the most glamorous job in the world. If you haven't automated mundane tasks, it can entail repeating the same tasks over and over. The job gets interesting when you must administer multiple Linux servers in different locations. In the past, you had to be a command line expert who knew how to set up an SSH server on each machine that needed to be managed. However, Webmin brings virtually every administration task under one easy-to-use Web-based interface.
Webmin's real power comes from its versatility and the ability to manage virtually any Linux-based system as well as Solaris and Windows. Webmin installation is relatively painless. It does use Java for some functions, so you'll need Java installed on the workstation that will serve as your main management console. Once you have the basic Webmin package running, you’ll want to customize it to meet your specific needs. For the most part, that means installing and configuring modules.
Configuring Webmin modules
Webmin makes it possible to add more functionality through the use of modules. The standard download automatically comes with a large number of modules as part of the core system. These modules cover a wide range of management tasks, but you still might not find the tool you're looking for. At that point, you have two basic options: Find a third-party module that meets your need or write your own. You'll need to know Perl if you want to roll out your own, so hopefully someone else has already written it.
Use the Webmin administration page to install a module. Selecting Configuration under the Webmin section on the left side of the homepage will present a page of icons with labels for each option available.
Clicking on the Webmin Modules icon will take you to another page where you can install, clone, delete or export modules. The most common task is to install a new module, and it's the default tab presented to you. Options abound for module packages -- from a local drive on the server, from a file you upload from your workstation or from a location on the Web. You can also browse a list of either standard or third-party modules by clicking the ellipsis button. Be sure you check the radio button next to the option you wish to use, as the default is set to use a local file on the server.
Once you have your source selected, simply click on the Install Module button, and the rest will be done for you. Choosing a third-party module will download the appropriate files and install them on your target server. A "download complete" message will let you know that all files were downloaded and should be followed by a line indicating that the module has been successfully installed and added to your access control list.
Some modules will require additional configuration after you install them. It's even possible that you might need to have different configurations for the same module. That's where the clone tool comes in handy. Using the clone tab on the Webmin Modules page, select the module you wish to copy and give it a new name. This is especially useful for managing different databases where you want to keep your admin credentials separate.
Webmin administration: The bottom line
Webmin is a great tool for taking the pain out of Linux administration. With a little work, you can configure it to address the majority of admin tasks you will need to do. About the only thing it can't do is turn the power back on to your server, but even that can be done remotely with the right hardware.
Next time we'll take a look at accomplishing a number of specific tasks using Webmin. We'll get a few extra modules loaded up and look at the steps needed to make it work. Once you use Webmin, you'll rarely, if ever, go back to command line administration again.
ABOUT THE AUTHOR: Paul Ferrill has a BS and MS in electrical engineering and has been writing about computers for over twenty years. He's had articles published in PC Magazine, PC Computing, InfoWorld, Computer World, Network World, Network Computing, Federal Computer Week, Information Week, and multiple Web sites.