Chapter 18. Webconf - a basic GUI for Bering-uClibc

Revision History
Revision 1.12006-01-28kp
Revision 1.22006-11-18kp

Table of Contents

Objectives
Install the packages
Connect to Webconf
Install plugins
The three modes of webconf

Objectives

Webconf is a web configuration framework that provides a way to configure a Bering-uClibc LEAF router with a web interface. This chapter explains how to use webconf.

Install the packages

Webconf is a library of cgi scripts; so it needs a web server that supports the POST method to work. Two web servers that can be used are mhttpd.lrp (mini_httpd) or mhttpds.lrp (mini_httpd with ssl support). The older sh-httpd does not support the POST method, so it cannot be used. mhttpd.lrp is installed by default with Bering-uClibc 3.x images, to get slightly more security you can replace mhttpd with mhttpds.

You must also have installed webconf.lrp, again a default in Bering-uClibc 3.x.

Connect to Webconf

You should be able to take a look at webconf by pointing your web browser at your LEAF router on port 80. The interface is lightly protected by basic authentication. When prompted for a username and password, enter admin for the user, and leave the password blank.

You can change this password by selecting the Webconf Password menu option.

Install plugins

Webconf plugins generally have the extension of ".lwp" and share the same name as the package (e.g. the webconf plugin for dropbear.lrp is dropbear.lwp). Which plugins are loaded and how can configured in webconf's configuration file /etc/webconf/webconf.conf. As additional plugins become available, you can copy them to your boot media and then load it via webconf.conf.

There are three options how to accomplish this task:

  • You can add (lwp) files to the LWP= variable (LWP="webconf.lwp").

  • The webconf scripts scan your boot media for lwp files and adds those to the $LRP variable. You can add other files in addition to those found by webconf (LWP="$LRP foo").

  • You can let webconf autoload all lwp packages. Thiss happens if there is no LWP list defined.

Important

An empty LWP list (LWP="") has the opposite effect - no lwp files are loaded.

The last option (no LWP list) is the default.

The three modes of webconf

Without additional plugins webconf.lrp contains only basic monitoring functions. It allows an end-user to view the General Health and Active Connections of the router. Log Files can be viewed, downloaded, or deleted. The password for the web interface can be set, and the page for performing a backup of installed packages is included. This package provides a way to give an end-user some management functions of the router, but doesn't let them make changes. As an example, webconf.lrp might be used to give a customer "read-only" rights to web pages for monitoring; but the customer can't (from the web pages) modify the router configuration.

The second mode is the "basic" menuset. It is build by additional plugins (like dnsmasq.lwp, dropbear.lwp), which are considered experimental. The current intent of the basic plugins is to eventually provide a full web interface for a casual user.

The third mode, called the "expert" menuset enables the user to perform advanced configuration using the web interface. The expert menuset is provided by webconf.lwp on your boot media. The expert functions become available after a reboot or after issuing /etc/init.d/webconf restart from the console.

The webconf.lwp add-on provides a universal page to edit config files for installed packages, change backup destination locations, start / stop daemons, and edit leaf.cfg. The webconf.lwp contains all the functionality necessary to manage a LEAF router via the web interface. You might want this package if you are setting up a router but aren't quite comfortable editing the configuration files with the e3 editor.

If you install both "Expert" and "Basic" packages, a menu item allowing you to change the menu set is shown. If you have packages from just one of the menu sets installed, then just those menus are shown, and you will not see the item to switch the interface.