Introduction To Webmin
Webmin is a program that simplifies the process of managing a Linux or Unix system. Normally you need to manually edit configuration files and run commands to create accounts, set up a web server or manage email forwarding. Webmin lets you perform these tasks through an easy to use web interface, and automatically updates all of the required configuration files for you. This makes the job of administering your system much easier.
Some of the things that you can do with Webmin are :
- Create, edit and delete Unix login accounts on your system.
- Export files and directories to other systems with the NFS protocol.
- Set up disk quotas to control how much space users can use up with their files.
- Install, view and remove software packages in RPM and other formats.
- Change your system’s IP address, DNS settings and routing configuration.
- Set up a firewall to protect your computer, or to give hosts on an internal LAN access to the Internet.
- Create and configure virtual web servers for the Apache webserver.
- Manage databases, tables and fields in a MySQL or PostgreSQLdatabase server.
- Share files with Windows systems by configuring Samba.
These are just a few of the available functions. Webmin lets you configure almost all of the common services and popular servers on Unix systems, all using a simple web interface. It protects you from the syntax errors and other mistakes that are often made when editing configuration files directly, and warns you before potentially dangerous actions.
Because Webmin is accessed though a web browser, you can login to it from any system that is connected to yours through a network. There is absolutely no difference between running it locally and running it remotely, and it is much easier to use over the network than other graphical configuration programs.
Webmin has what is known as a modular design. This means that each of its functions is contained in a module that can generally be installed or removed independently from the rest of the program. Each module is responsible for managing some service or server, such as Unix users, the Apache webserver or software packages.
If you have been manually configuring your system up till now, any existing settings will be recognized by Webmin. It always reads the standard configuration files on your system and updates them directly, instead of using its own separate database. This means that you can freely mix Webmin, manual configuration and other programs or scripts that work in the same way.
Even though this book is written for Linux users, Webmin can be used on many other flavors of Unix as well, such as Solaris, FreeBSD? and HP/UX. One of its biggest strengths is its understanding of the differences between all these operating systems, and the way that it can adjust its user interface and behavior to fit your OS. This means that it can often hide the underlying differences between each Unix variant and present a similar or identical interface no matter which one you are using.
Webmin on its own is not particularly useful though â it is only a configuration tool, and so you must have programs installed for it to configure. For example, the Apache module requires that the actual Apache webserver be installed. Fortunately, all of the services and servers that it manages are either included with most Linux distributions as standard, or can be freely downloaded and installed.
Who developed Webmin?
Almost all the development of Webmin was done by Jamie Cameron, though many people have contributed patches and translations into additional languages. There are also many third-party modules that were developed by other people separately.
What licence is Webmin distributed under?
All recent versions of Webmin are under a BSD-like licence, meaning that it may be freely distributed and modified for commercial and non-commercial use.
Because Webmin supports the concept of modules (like PhotoShop plugins), anyone can develop and distribute their own Webmin modules for any purpose, and distribute them under any licence (such as GPL, commercial or shareware). More information about the Webmin API and writing your own modules is available.
Who should use Webmin?
Webmin was written for use by people who have some Linux experience, but are not familiar with the intricacies of system administration. Even though it makes the process of creating Unix users or managing the Squid proxy server easy, you must first have some idea of what a Unix account is and what Squid does. The average Webmin user is probably someone running it on their Linux system at home or on a company network.
The program assumes that you are familiar with basic TCP/IP networking concepts, such as IP addresses, DNS servers and hostnames. It also assumes that the user understands the layout of the Unix filesystem, what users and groups are, and where user files are located. If you use Webmin to manage some server like Apache or Sendmail, you should first have some idea of what they can do and what kind of configuration you want done.
Webmin itself runs with full Unix root privileges, which means that it can edit any file and run any command on your system. This means that it is quite possible to delete all of the files on your system or make it un-bootable if you make a mistake when using the program, especially if you are configuring something that you don’t understand. Even though Webmin will usually warn you before performing some potentially dangerous action, there is still plenty of scope for causing damage.
Even though it can be used on a system with no connection to the Internet, Webmin does benefit if your Linux system is on a network. It can download new software packages, Perl modules or even new versions of Webmin for you if connected. A permanent high-speed connections is best, but even dial-up is good enough for most purposes.
Because Webmin runs with root privileges, you must be able to login to your system as root to install and start it. This means that it cannot be used on a system on which you have only a normal Unix account, such as a virtual web server that is shared with other people. You might be able to get your system administrator to install and configure it for you though.
If you are already an experienced Unix system administrator, Webmin may not seem to be the tool for you because using it is generally slower than directly editing configuration files and running commands. However, even the experts can benefit from its automatic syntax checking and the actions that it can perform automatically.
It is also possible to give different people different levels of access to Webmin, so that an experienced administrator can use it to safely delegate responsibility to less-skilled subordinates. For example, you might want someone to be only able to manage the BIND DNS server and nothing else, while giving yourself full access to the system and all of Webmin’s functions.
Read more : http://www.webmin.com/