FreeOS.com logo

FreeOS Most Popular
* Most Read stories
* Commented Stories
* Active Categories
* Non Linux Section
* User Submitters
* Top Polls
* Top Authors
* Top Reviews
* Top Rated
* Top Search Terms

Top Articles
* Writing a Linux device driver
* The Linux filesystem explained
* Samba NT Domain Controller
* Setting up Squid as your caching HTTP/FTP proxy
* Web server tutorial - Part 1

FreeOS Highlights
* Howtos (72)
* Reviews (20)
* Opinions (18)
* Interviews (8)
* News (3)

My FreeOS

Nick:
Pass:
Register

Forgot your password?

Contact Us
Contact Us

       

Project: Linux triangle Howtos triangle

Remote administration of Linux

By Trevor Warren <trevor@freeos.com>
Posted: ( 2000-11-13 08:11:57 EST by )

Are you looking for an easy to use and highly flexible method of
administering your Linux box remotely? Does the thought of being able to
walk up to a Windows PC and configure your Linux box back home through a
web browser sound interesting? Read on for details on how to configure a
Web based administration tool on your Linux machine.

The glory of Windows, Gates and the fences surrounding them ...

Ever wondered why you pay so much for those closed source products that
help you manage your system remotely on Windows. I guess it comes with the
territory. Realistically speaking there aren't many tools available out
there in the market that make remote administering of Windows a real easy
task. One of the most slick pieces of software that I know of comes from
the stables of Symantec called PC Anywhere.

In sharp contrast, the open source movement has several options for
remotely administering your PC. One of them is a nifty utility called
Webmin. Its home page is located at http://www.webmin.com.

Webmin as the name suggests is a Web Based tool for configuring and
tweaking your Linux box remotely. By remote I mean via a LAN/WAN or even
accessing a server hosted at some server farm or data center on a
broadband network with your service provider. Where your Linux box is
located doesn't really matter. All that you need to remotely maintain
your Linux box is a browser and a connection to the network. Preferably
you should be using a browser which supports JAVA and SSL.

Seasoned Linux users will claim that remote administration can be more
safely accomplished via a simple TELNET or SSH connection to the Linux
box. I do not dispute this point. However, there are a large section of
Linux users who are not comfortable typing cryptic commands at the Unix
shell prompt. A graphical and easy to use web based interface is no doubt
better from their point of view. And even for seasoned Linux users,
web-based administration does give you a certain level of flexibility. For
instance if you are traveling, you could walk up to a cybercafe and
configure your Linux box back home through a Windows based web browser.

Getting and Installing Webmin

As I mentioned earlier, you can download Webmin from it's home page
located at http://www.webmin.com or any of the mirrors mentioned out
there. The download size is a manageable 3 MB or so in the RPM format (Red
Hat Package Manager). I would suggest that you download the Webmin RPM's
from the site as they are comparatively easier to install. At present
Webmin is at version 0.82. Before you install Webmin you must make sure
you have Perl, version 5.005 or above, installed on your system. Every
Linux installation comes with Perl pre-loaded, but in case you did not
install Perl, I would suggest that you download the latest compiled
binaries from its homepage located at http://www.perl.com.

Having downloaded the Webmin rpm, login into your system as root.

Now change into the directory where you have downloaded the Webmin
RPM and issue the following command.

rpm -ivh webmin-0.82.rpm

Using Webmin

Now that Webmin is installed, administering your Linux box is going to be
a piece of cake. Load your browser and point it to http://localhost:10000

Localhost represents the hostname you have assigned your machine and 10000
is the port on which Webmin listens to requests. For security reasons I
would suggest changing this port, keeping in mind that you can only use
ports between 1024 - 65,535. I'll cover this next.

Securing your Webmin setup

O.K, so you GUI lovers ultimately have something to really cheer about. On
an operating system whose administration could be simply performed via the
command line, GUI options are not very popular. But as I mentioned
earlier, novices will find them a welcome feature.

Beware of the default settings of Webmin, it's open for the world to
connect to, but of course it does have passwords, supports SSL and et al.
The first thing that you need to do after installation is to change those
default settings to make your setup more secure.

There are three main settings that need to be modified in Webmin, one is
the PORT on which Webmin listens, the interfaces on which Webmin will
receive connections and the other is a list of the remote IP addresses
which can connect to Webmin.

Lets change the port on which Webmin listens as well as the IP address on
which it will accept requests. After having logged into Webmin click on
the icon mentioned below.

Webmin Configuration

On the page that is displayed click on the following icon.

Port and Addresses

The first option is the IP addresses on which Webmin will accept
connections. The whole point here is that, the local machine on which
Webmin is running may have several static and dynamic interfaces. You may
be connected to the Internet in more ways then one, and you surely don't
want Webmin to be accessible to everyone. That's the reason why you have
the option of specifying the interface on which Webmin should listen.

The next option allows you to mention the port on which the Webmin server
will accept requests. Change this from the default value of 10000, to any
other port in the range of 1025 - 65535. If possible, make sure no other
services are running on the port that you have chosen. One simple way of
cross checking is to look out for that port in the file /etc/services. If
you see any other service that requires that port and you are using it
already then choose another port.

---- IP Access Control ----

__ Allow from all addresses DDDDDDD
__ Only allow from listed addresses DDDDDDD
__ Deny from listed addresses DDDDDDD

Another important setting that I need to touch upon is the remote and
local addresses which can connect to the Webmin server. By default any IP
address can connect to the Webmin server. You should change this setting
to reflect the machine/machines from which you would allow connections to
the Webmin server. The drawback however is that you have to explicitly
mention every IP address that is allowed to make connections to this
server, the IP/Netmask pair doesn't work out here. This is not a problem
because you should allow access to Webmin from only a few trusted
machines. Every time you make a change to any Webmin configuration make it
a point to save the changes. Enabling logging and login timeouts is also
recommended.

Webmin features and settings

Coming to the main Webmin configuration the various main sections that you
will find in Webmin are as follows.

-- Webmin
-- System
-- Servers
-- Hardware
-- Others

Webmin - The first section by default is "Webmin" and is meant to help you
configure your Webmin setup as we saw earlier. This section generally
deals with ACCESS privileges, ACL's, ports, logging, user access and
various other parameters related to Webmin setup. I suggest that you give
this section a serious look.

System - This section consists of the following settings

Bootup and Shutdown

This section helps you reboot or shutdown the system and also
configure the different services that are running on your system through
the /etc/rc.d/rc.* scripts. You could always stop, start or restart any
services from the options provided out here.

Disk Quotas

This section helps you apply Disk Quotas for your users only if Disk
Quotas have been installed and enabled for your file system during it's
creation.

Disk and Network Filesystems

This section enables you to monitor the state and size of your
mounted partitions. One could also mount, unmount and change the mount
time parameters using these settings.

Manual Pages

This section enables you to search for and read the MAN pages in a
web based format.

NFS Exports

This section helps you manage your /etc/exports file, which is used
to create / remove NFS shares.

Running Processes

This section helps you view and kill the services running on the
machine.

Scheduled Cron Jobs

This section helps you to schedule / reschedule or delete any CRON
jobs that you want to run on your machine.

Software Packages

This section allows you to view all the installed software
packages, un-install any of them, install any packages from a local file
system or even upload and install a package. Note the packages we are
talking out here must be in the RPM format.

SysV Init Configuration

This section helps you view the various services that are
configured to run in the various run levels, change the run levels or even
create a new init process.

System Logs

This section helps one to configure what kind of logging should go
on. Using this section you can change the logging pattern on your Linux
box. For example, send the authentication and kernel output to different
log files unlike the default installation which logs all of them to a
single /var/log/messages file.

Users and Groups

This section will help you view / create / modify system users.


Servers

This is one section whose look depends on the nature of the
utilities and servers that you have installed on your system. The
following sections show up on my SuSE installation.

-- Apache Webserver
-- BIND 4 DNS Server
-- BIND DNS Server
-- DHCP Server
-- FTP Server
-- Internet Services and Protocols
-- Majordomo List Manager
-- MySQL Database Server
-- PPP Accounts
-- Postfix Configuration
-- PostgreSQL Database Server
-- Samba Windows File Sharing
-- Sendmail Configuration
-- Squid Proxy Server

These sections help you configure the relevant servers. As I discovered,
the options included for each services configuration are quite elaborate,
but you may still have to manually edit the CONFIG files in case you
require to do some extensive tweaking.


Hardware

This section consists of the following configuration issues.


Linux Bootup Configuration

This section will help you configure your BOOT manager LILO (LInux
LOader) if you ever need to tweak around with the BOOT preferences.

Linux RAID

Setting up RAID devices on LINUX was never easier, using these menus
you can make good use of the RAID support Linux has to offer.

Network Configuration

This section will help you setup your NIC's, Loopback adapters and
even the virtual adapters that you may want and activate / deactivate. You
may also setup your Linux machine as a ROUTER to route packets to other
networks using this section. To configure your /etc/resolv.conf go to the
sub section called "DNS".

Partitions on local disks

No longer do you have to use FDISK, CFDISK with the ncurses
interface. Partition your HDD's, view the file system status and the free
/ consumed blocks using this section.

There are several more sections in Webmin like

-- Printer Administration
-- System Time
-- Custom Commands
-- File Manager
-- Telnet Login


One of the most coolest tools that Webmin has is telnet through the
browser and the file manager. If telnet via a browser is the cake then the
file manager is the icing on the cake. The file manager is loaded with
options like the nifty little option of uploading files to the server,
sharing files and directories using either the SMB or the NFS protocol
over the network. Apart from these options, the normal copy, cut and paste
options work very well.

Third party modules

There are a lot of third party modules available for Webmin right from
configuring qmail to running a remote Java VNC console in your browser.
All of these modules are available as *.wbm files and you just have to
download these modules from the Webmin homepage or any of the mirrors.

Installing these modules is a piece of cake as you'll soon find out.

Just go to the section Webmin/Webmin Configuration/Webmin modules and use
the install module option on the page to upload the file to the server and
install it.

As we saw, there is an exhaustive list of utilities, tools and options
that Webmin provides you with to carry out remote administration of your
Linux machine. The whole idea is to make the system administrator's life
easier. Apart from the standard Webmin modules there are many other
non-standard modules available at the site using which you may automate
many administration tasks on your system. I'm a die-hard command line
freak and will always feel more comfortable performing server
configuration tasks via the command line. However, Webmin is definitely an
option that even I find useful.

Webmin Homepage

Other articles by Trevor Warren

Current Rating: [ 6.24 / 10 ] Number of Times Rated: [ 76 ]

More Howtos
* Kernel Compilation & Avoiding ‘Unresolved Symbol’
* Configuring CVS and CVSUP on Linux
* Knoppix installation tips
* Maximum Mount
* A WebServer Guide -- Help Using Apache

Contents
Articles
  Howtos
  Interviews
  News
  Opinions
  Reviews
Comparison
Links
  Articles
  Howtos
  Interviews
  Opinions
  Reviews
  Websites
News

Linux
About Linux

Print It!
Printer Friendly Version