Managing Linux Systems with Webmin: System Administration and Module Development
Author: Jamie Cameron
Publisher: Prentice Hall PTR
If you are not one of the many system administrators that like doing everything manually, you’ve probably heard of, or even used Webmin. Webmin is a software tool that offers simplified Linux/UNIX system administration from any web browser. The second Bruce Peren’s Open Source Series book we are reviewing on HNS, contains a lot of text dealing with managing Linux based systems with this popular and practical tool.
About the author
Jamie Cameron, Webmin’s primary developer, has unsurpassed knowledge on Webmin’s functions, user interface and internal design. He has been working with and managing UNIX and Linux systems for over 7 years. He was previously employed by Caldera and MSC Software, where he worked full time on Webmin.
An interview with Jamie Cameron is available here.
Inside the book
If you are reading this review, you are probably either interested in what Webmin can do for your Linux powered server, or trying to find some information on the additional things you can do with Webmin. I’m happy to say that you have good chances to find all your answers in this publication.
Webmin was created by Jamie Cameron in 1997, who then needed a way to make other users eligible to update host records on a DNS server he was then administering. As giving away the root password was a no-no, he thought of a web based interface that would offer the users DNS management options in a secure way. After realizing the great potential of his creation, he soon started to create sub-modules that increased the software’s functionalities. After adding support for Samba, cron jobs, NFS and mounting, the software was given the name Webmin and offered for download. Since then, Webmin has evolved in an administration mega-pack, containing more than 80 different modules.
Since the book covers all the possible situations you can come across using Webmin, I won’t go into details on separate actions and functionalities the author discusses throughout the book but rather try to provide an overview of what you can find inside. It’s important to say that “Managing Linux Systems with Webmin” contains 60 chapters, each dealing with a specific administration task.
Webmin can help the administrator in a number of ways: automating the processes such as basic level server administration, backing up and logging, firewalling, configuring various system services, cluster configurations, and much more.
From the security point of view, there are several chapters covering different security related scenarios. Besides scope on filtering e-mail and creating SSL tunnels, there is a interesting section on firewalling. If you are using iptables, you know that this little software tool is one of the best firewalls available out there. The author doesn’t immediately jump to discuss a Webmin/iptables usage combo, but introduces the readers to some background information on the topics of firewalling and creating different rule chains. The introduction is followed by 20 pages of detailed usage steps accompanied by several screenshots. This kind of topic coverage is presented throughout the book, so all Webmin system administration scenarios contain an introduction, step-by-step guide/s and the appropriate browser screenshots.
The most common administration tasks the author covers include scheduled commands, various server configurations (FTP, DNS, SSH, DHCP, CVS), databases (MySQL and PostgreSQL), interaction with Windows servers, network management and others. For the home users, there is even a chapter on Webmin’s “little brother” Usermin, designed for the home use by UNIX users.
Webmin’s quality lies in a good concept and in a variety of extra modules. The last couple of chapters deal with Webmin module development, with nice overviews on startup module programming and Webmin API usage.
What to expect from a Webmin system administration book that’s written by the same guy that developed Webmin? Cameron combined all the knowledge and experience on the subject and transformed it into this complete Webmin companion guide. Spreading Webmin’s specifics over 60 chapters the author provides tons of step-by-step guides covering all the functionality aspects of this valuable tool.
Webmin itself was written for use by people with some Linux experience, but not familiar with all the insides and tweaks of system administration. This type of a user group can really profit from a nice looking GUI based tool that is easy to use and incorporates a number of methods needed for transforming the web based into “raw” system administration.
If you are planning to use Webmin, or if you are a Webmin user that is not using the entire program’s potentials, getting your hand on this book will surely be a good choice.