Linuxconf is most strongly associated with the Red Hat and Mandrake distributions, which have traditionally shipped with Linuxconf as their default GUI configuration tool. Linuxconf wasn't developed by Red Hat or Mandrake, though, and it works with many other distributions, including Caldera, Debian, Slackware, and SuSE. The program's home page is http://www.solucorp.qc.ca/linuxconf/ , from which you can obtain it in tarball and RPM formats.
Linuxconf includes both local (text-based and GUI) and remote (Web-based) operation modes. To use it remotely, you must enable the Linuxconf Web-based operation, which is disabled by default in most installations. Using Linuxconf in its Web-based mode is much like using it in its local text-based or GUI modes, although the displays look somewhat different.
A default installation of Linuxconf works in text mode, and usually in one of two GUI modes (most distributions that come with Linuxconf favor the GNOME-Linuxconf GUI, but Solucorp officially favors another called Linuxconf-GUI). There's also a Java-based GUI in the works. The default installation doesn't enable the Web-based interface, so you must do that yourself. This entails both running Linuxconf as a server and configuring it to accept logins via the network.
The most common method of running Linuxconf as a server is to run it from a super server such as inetd or xinetd . To run it in this way, you must ensure that your /etc/services file contains an entry that identifies the Linuxconf port, as follows:
linuxconf 98/tcp You must also configure your super server to handle Linuxconf. To do this, have the super server run the linuxconf binary with the http option. For instance, an /etc/inetd.conf entry for Linuxconf might resemble the following:
linuxconf stream tcp wait root /bin/linuxconf linuxconf http If your system uses xinetd and ships with Linuxconf, the Linuxconf package probably includes a startup file called linuxconf-web or linuxconf in the /etc/xinetd.d directory. As described in Chapter 4 , you should ensure that this file does not have a line that reads disable = yes ; if it does, change yes to no to enable Linuxconf's remote access.
Once you've configured your super server to run Linuxconf, you can use any Web browser to reach the Linuxconf server; you merely type the computer's hostname, a colon, and 98 as the URL. For instance, you might type http://remote.threeroomco.com:98 in a Web browser to administer remote.threeroomco.com . You can use any Web browser on any platform, so you can administer the Linux computer from a Linux system, a Windows system, or just about any other computer.
Although Linuxconf should be responsive at this point, it probably won't do much good. The default configuration allows Linuxconf to display a simple screen that summarizes what Linuxconf is, but if you click the Enter button to begin administering the system, you'll see an error message; this is a security measure. You must do more than enable basic Linuxconf operation; you must also authorize the program to accept network connections. You'll also probably want to limit the systems from which you may administer a computer via Linuxconf. The simplest way to make these changes is to use Linuxconf locally, via its text-based or GUI interface. To do so, follow these steps:
Start Linuxconf by typing linuxconf in a root shell. If you're running in text mode or if the Linuxconf GUI tools aren't installed, you'll see a text-mode menu appear. If you're in X and the Linuxconf GUI tools are installed, you'll see a new Linuxconf window appear. Figure 16.1 shows the window used by Linux Mandrake. Those used by other distributions may look slightly different, but similar options should be available.
Select Config ⊳ Networking ⊳ Misc ⊳ Linuxconf Network Access Options. This should produce a set of options like those shown in Figure 16.2 , but the fields will be blank. (Again, some systems display this information slightly differently, such as in a single window along with a listing of Linuxconf modules to the left.)
Check the Enable Network Access button. This tells Linuxconf to respond to network access attempts.
4.
In the first field labeled Network or Host, enter 127.0.0.1 , and in the first field labeled Netmask (Opt), enter 255.255.255.255 . This tells Linuxconf to accept connections from the host computer itself.
5.
In the second field labeled Network or Host, enter the IP address of the computer from which you want to access Linuxconf, or an address for a network block that's to be given administrative access. Enter an appropriate netmask in the following Netmask (Opt) field. For instance, Figure 16.2 shows the system configured to accept connections from any computer on the 192.168.1.0/24 network.
6.
Repeat Step 5 for any additional networks or computers you care to add, using subsequent Network or Host and Netmask (Opt) fields.
7.
Click Accept, Dismiss, and Quit in the various windows or tabs to save your changes and exit from Linuxconf. The tool may inform you that the system isn't synchronized with the configuration you've created. If so, click Do It to have Linuxconf activate your changes.
At this point, Linuxconf should be configured to accept remote access from the local computer and from any other computers you specified in Step 5. Other systems will only get the basic introductory screen, as noted earlier. (If you use a firewall or some other tool to provide redundant security, would-be intruders won't even get that far.)
To use Linuxconf's Web interface, you type http://hostname:98 in your Web browser's URL field, where hostname is the hostname or IP address of the computer in question. You'll first get an introductory screen that describes what Linuxconf is. This screen will have a button called Enter. Click it to obtain a dialog box in which you enter a username and password (you must use the root account or some other account that's authorized to administer the system through Linuxconf). You'll then see the main Linuxconf configuration menu, as shown in Figure 16.3 .
|
Be sure to click the Accept button if you intend to make changes to a configuration. You can use a browser's Back button to back out of a Linuxconf module without activating its changes, so be sure to use the exit method you intend. (Some modules use a word other than Accept to activate their changes.) |
As shown in Figures 16.1 and 16.3 , Linuxconf uses a hierarchical structure to organize its configuration modules. The best way to learn what's available is to browse through the optionsbut if you don't intend to make any changes, be sure to use your browser's Back button to exit from a module, not the Accept button in the configuration page. Sometimes you might think a module should be in one location, but it will be in another. Also, you can't configure some tools through Linuxconf, either because the module doesn't exist or because it doesn't match what's installed on your system. For instance, if Linuxconf looks in /etc for the configuration file, it won't work if the file is stored in /usr/local/etc . Version mismatches can also cause problems if Linuxconf doesn't understand options that have been added to a recent version of a program, or if Linuxconf tries to use options that aren't supported if you install an older version of a program.
When you're done using Linuxconf's Web interface, it's best to exit from the Web browser. Linuxconf will eventually time out the connection, but there's no explicit exit option, and without that, anybody who has physical access to the computer you used can make changes to the configuration. You might also accidentally change some option if you leave a Web browser linked to Linuxconf.