rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780131408821

Managing Linux Systems with Webmin System Administration and Module Development

by Cameron, Jamie
  • ISBN13:

    9780131408821

  • ISBN10:

    0131408828

  • Edition: 1st
  • Format: Paperback
  • Copyright: 2003-08-05
  • Publisher: Prentice Hall
  • Purchase Benefits
List Price: $54.99

Summary

bull; Written by the creator of Webmin -- the most popular GUI admin tool for Linux bull; Webmin is currently downloaded 4000 times a day & -- nearly one million times of all versions in the last year! Shows how to use Webmin to configure Apache, Sendmail, and other complex Linux servers bull; Start developing your own Webmin modules and themes with the complete reference for the API

Author Biography

Jamie Cameron, Webmin's primary developer, has unsurpassed knowledge of Webmin's functions, user interface, and internal design. He has been working with and managing UNIX and Linux systems for over seven years

Table of Contents

1 Introduction to Webmin 1(5)
What is Webmin?
1(1)
Who Should Use Webmin?
2(1)
How and Why Was it Developed?
3(1)
What is this Book About?
4(1)
Who Should Read this Book?
4(1)
Conventions Used in this Book
5(1)
Acknowledgments
5(1)
2 Installing Webmin 6(8)
Downloading Webmin for Your System
6(1)
Installing the RPM Package
7(1)
Installing the tar.gz Package
8(2)
Installing the Solaris Package
10(1)
The Webmin User Interface
10(3)
Uninstalling Webmin
13(1)
Summary
13(1)
3 Securing Your Webmin Server 14(5)
Network Security
14(1)
SSL Encryption
15(2)
Requesting a Valid SSL Certificate
17(1)
Summary
18(1)
4 Users and Groups 19(20)
Introduction to UNIX Users and Groups
19(1)
The Users and Groups Module
20(1)
Creating a New User
21(2)
Editing an Existing User
23(1)
Deleting a User
24(1)
Creating a New Group
25(1)
Editing an Existing Group
26(1)
Deleting a Group
27(1)
Viewing Recent and Current Logins
27(1)
Reading Users' Email
28(1)
Creating Users from Batch Files
28(2)
Configuring the Users and Groups Module
30(4)
Before and After Commands
34(1)
Module Access Control
34(3)
Other Operating Systems
37(1)
Summary
38(1)
5 Disk and Network Filesystems 39(14)
Introduction to Filesystems
39(1)
The Disk and Network Filesystems Module
40(1)
Mounting an NFS Network Filesystem
40(3)
Mounting an SMBFS Windows Networking Filesystem
43(1)
Mounting a Local ext2 or ext3 Hard Disk Filesystem
44(1)
Mounting a Local Windows Hard Disk Filesystem
45(1)
Adding Virtual Memory
46(1)
Automounter Filesystems
47(1)
Editing or Removing an Existing Filesystem
48(1)
Listing Users of a Filesystem
48(1)
Module Access Control
49(1)
Configuring the Disk and Network Filesystems Module
50(1)
A Comparison of Filesystem Types
50(1)
Other Operating Systems
51(1)
Summary
52(1)
6 NFS File Sharing 53(7)
Introduction to File Sharing with NFS
53(1)
The NFS Exports Module
54(1)
Exporting a Directory
54(1)
Editing or Deleting an NFS Export
55(1)
NFS on Solaris
56(1)
NFS on BSD, MacOS X and OpenServer
57(2)
NFS on Irix
59(1)
Summary
59(1)
7 Disk Quotas 60(8)
Introduction to Disk Quotas
60(1)
The Disk Quotas Module
61(1)
Enabling Quotas for a Filesystem
62(1)
Disabling Quotas for a Filesystem
62(1)
Setting Quotas for a User or Group
63(1)
Copying Quotas to Multiple Users
63(1)
Setting Grace Times
64(1)
Setting Default Quotas for New Users
65(1)
Other Operating Systems
66(1)
Configuring the Disk Quotas Module
66(1)
Module Access Control
66(1)
Summary
67(1)
8 Partitions, RAID, and LVM 68(16)
Introduction to Hard Disk Partitions
68(1)
The Partitions on Local Disks Module
69(1)
Adding and Formatting a New Partition
70(1)
Creating a New Filesystem
70(1)
Partition Labels
71(1)
Deleting or Changing a Partition
72(1)
Module Access Control
73(1)
Other Operating Systems
74(1)
Introduction to RAID
74(1)
The Linux RAID Module
75(2)
Introduction to LVM
77(1)
The Logical Volume Management Module
78(1)
Creating a New Volume Group
79(1)
Adding and Removing a Physical Volume
80(1)
Creating and Deleting a Logical Volume
80(1)
Resizing a Logical Volume
81(1)
Creating a Snapshot
82(1)
Summary
83(1)
9 Bootup and Shutdown 84(9)
Introduction to the Linux Boot Process
84(1)
The Bootup and Shutdown Module
85(1)
Configuring an Action to Start at Bootup
85(1)
Starting and Stopping Actions
86(1)
Adding a New Action
87(2)
Rebooting or Shutting Down Your System
89(1)
Configuring the Bootup and Shutdown Module
89(1)
Other Operating Systems
89(2)
The SysV mit Configuration Module
91(1)
Summary
92(1)
10 Scheduled Commands 93(6)
Introduction to Cron Jobs
93(1)
The Scheduled Cron Jobs Module
93(1)
Creating a New Cron Job
94(1)
Editing a Cron Job
95(1)
Controlling Users' Access to Cron
96(1)
Module Access Control Options
96(1)
Configuring the Scheduled Cron Jobs Module
96(1)
Other Operating Systems
97(1)
The Scheduled Commands Module
97(1)
Creating a New Scheduled Command
98(1)
Summary
98(1)
11 Process Management 99(6)
Introduction to Processes
99(1)
The Running Processes Module
99(2)
Viewing, Killing, or Reprioritizing a Process
101(1)
Searching for Processes
102(1)
Running a Process
103(1)
Module Access Control Options
103(1)
Other Operating Systems
104(1)
Summary
104(1)
12 Software Packages 105(8)
Introduction to Packages
105(2)
The Software Packages Module
107(1)
Installing a New Package
107(2)
Finding and Removing a Package
109(1)
Updating on Debian Linux
110(1)
Updating on Red Hat Linux
111(1)
Other Operating Systems
111(1)
Summary
112(1)
13 System Logs 113(8)
Introduction to Logging
113(2)
The System Logs Module
115(1)
Adding a New Log File
115(2)
Editing or Deleting a Log File
117(1)
Module Access Control
118(1)
Other Operating Systems
119(1)
Summary
120(1)
14 Filesystem Backups 121(8)
Introduction to Backups with Dump
121(1)
The Filesystem Backup Module
121(1)
Adding a New Backup
122(2)
Making a Backup
124(1)
Editing or Deleting a Backup
125(1)
Restoring a Backup
125(1)
Configuring the Filesystem Backup Module
126(2)
Other Operating Systems
128(1)
Summary
128(1)
15 Internet Services 129(15)
Introduction to Internet Services
129(1)
The Internet Services and Protocols Module
130(3)
Enabling an Internet Service
133(1)
Creating Your Own Internet Service
133(2)
Creating and Editing RPC Programs
135(1)
Configuring the Internet Services and Protocols Module
136(2)
Other Operating Systems
138(1)
The Extended Internet Services Module
139(1)
Enabling or Editing an Extended Internet Service
140(1)
Creating an Extended Internet Service
141(1)
Editing Default Options
142(1)
Summary
143(1)
16 Network Configuration 144(10)
Introduction to Linux Networking
144(2)
Viewing and Editing Network Interfaces
146(1)
Aching a Network Interface
147(2)
Configuring Routing
149(1)
Changing the Hostname or DNS Client Settings
150(1)
Editing Host Addresses
151(1)
Module Access Control
152(1)
Other Operating Systems
153(1)
Summary
153(1)
17 Network Information Service 154(11)
Introduction to NIS
154(1)
Becoming an NIS Client
155(2)
Setting Up an NIS Master Server
157(2)
Editing NIS Tables
159(1)
Securing Your NIS Server
160(3)
Setting Up an NIS Slave Server
163(1)
Configuring the NIS Client and Server Module
163(1)
NIS on Solaris
163(1)
Summary
164(1)
18 PPP Server Configuration 165(8)
Introduction to PPP on Linux
165(1)
Configuring a PPP Server
166(3)
Managing PPP Accounts
169(2)
Restricting Access by Caller ID
171(1)
Module Access Control
172(1)
Summary
172(1)
19 Firewall Configuration 173(18)
Introduction to Firewalling with IPtables
173(2)
The Linux Firewall Module
175(2)
Allowing and Denying Network Traffic
177(4)
Changing a Chain's Default Action
181(1)
Editing Firewall Rules
182(1)
Creating Your Own Chain
182(1)
Setting Up Network Address Translation
183(1)
Setting Up a Transparent Proxy
184(1)
Setting Up Port Forwarding
185(1)
Firewall Rule Conditions
186(3)
Configuring the Linux Firewall Module
189(1)
Summary
189(2)
20 Setting the Date and Time 191(4)
The System Time Module
191(1)
Changing the System Time
192(1)
Change the Hardware Time
192(1)
Synchronizing Times with Another Server
193(1)
Module Access Control
193(1)
Other Operating Systems
193(1)
Summary
194(1)
21 Boot Loader Configuration 195(10)
Introduction to Boot Loaders
195(1)
The Linux Bootup Configuration Module
196(1)
Booting a New Kernel with LILO
197(1)
Booting Another Operating System with LILO
198(1)
Editing Global LILO Options
199(1)
The GRUB Boot Loader Module
200(1)
Booting a New Linux Kernel or BSD with GRUB
201(1)
Booting Another Operating System with GRUB
202(1)
Editing Global GRUB Options
202(1)
Installing GRUB
203(1)
Configuring the GRUB Boot Loader Module
203(1)
Summary
203(2)
22 Printer Administration 205(10)
Introduction to Printing on Linux
205(1)
The Printer Administration Module
206(1)
Adding a New Printer
206(3)
Editing an Existing Printer
209(1)
Managing Print Jobs
210(1)
Configuring the Printer Administration Module
211(1)
Module Access Control
212(1)
Other Operating Systems
213(1)
Summary
214(1)
23 Voicemail Server Configuration 215(5)
The Voicemail Server Module
215(1)
Configuring Your System as an Answering Machine
216(2)
Listening to Recorded Messages
218(1)
Setting a Greeting Message
219(1)
Summary
219(1)
24 Remote Shell Login 220(4)
The SSH/Telnet Login Module
220(1)
Configuring the SSH/Telnet Login Module
220(2)
The Command Shell Module
222(1)
The Shell In A Box Module
223(1)
Summary
223(1)
25 Running Custom Commands 224(8)
The Custom Commands Module
224(1)
Creating a New Command
225(2)
Parameter Types
227(2)
Creating a New File Editor
229(1)
Module Access Control
230(1)
Configuring the Custom Commands Module
231(1)
Summary
231(1)
26 Webmin's File Manager 232(12)
The File Manager Module
232(1)
Navigating Directories and Viewing Files
232(2)
Manipulating Files
234(1)
Creating and Editing Files
234(1)
Editing File Permissions
235(1)
Creating Links and Directories
236(1)
Finding Files
237(1)
Editing EXT File Attributes
237(1)
Editing XFS File Attributes
238(1)
Editing File ACLS
239(1)
Sharing Directories
240(2)
Module Access Control
242(1)
Summary
243(1)
27 Perl Modules 244(6)
Introduction to Peri Modules
244(1)
Perl Modules in Webmin
245(1)
Installing a Peri Module
245(2)
Viewing and Removing a Peri Module
247(1)
Configuring the Peri Modules Module
248(1)
Summary
248(2)
28 Status Monitoring with Webmin 250(14)
The System and Server Status Module
250(2)
Adding a New Monitor
252(1)
Monitor Types
253(7)
Setting Up Scheduled Monitoring
260(2)
Module Access Control
262(1)
Configuring the System and Server Status Module
262(1)
Summary
263(1)
29 Apache Web Server Configuration 264(51)
Introduction to Apache
264(1)
The Apache Webserver Module
265(3)
Starting and Stopping Apache
268(1)
Editing Pages on Your Web Server
268(1)
Creating a New Virtual Host
269(4)
Setting Per-Directory Options
273(3)
Creating Aliases and Redirects
276(3)
Running CGI Programs
279(3)
Setting Up Server-Side Includes
282(2)
Configuring Logging
284(3)
Setting Up Custom Error Messages
287(1)
Adding and Editing MIME Types
288(1)
Password Protecting a Directory
289(4)
Restricting Access by Client Address
293(1)
Encodings, Character Sets, and Languages
294(3)
Editing .htaccess Files
297(2)
Setting Up User Web Directories
299(2)
Configuring Apache as a Proxy Server
301(3)
Setting Up SSL
304(4)
Viewing and Editing Directives
308(2)
Module Access Control
310(1)
Configuring the Apache Webserver Module
311(3)
Summary
314(1)
30 DNS Server Configuration 315(39)
Introduction to the Domain Name System
315(3)
The BIND DNS Server Module
318(3)
Creating a New Master Zone
321(1)
Adding and Editing Records
322(3)
Record Types
325(5)
Editing a Master Zone
330(2)
Creating a New Slave Zone
332(2)
Editing a Slave Zone
334(2)
Creating and Editing a Forward Zone
336(1)
Creating a Root Zone
337(1)
Editing Zone Defaults
338(2)
Configuring Forwarding and Transfers
340(1)
Editing Access Control Lists
341(1)
Setting Up Partial Reverse Delegation
342(2)
Using BIND Views
344(2)
Module Access Control
346(1)
Configuring the BIND DNS Server Module
347(1)
The BIND 4 DNS Server Module
347(6)
Summary
353(1)
31 CVS Server Configuration 354(7)
Introduction to CVS
354(1)
The CVS Server Module
354(1)
Setting Up the CVS Server
355(1)
Using the CVS Server
356(1)
Adding and Editing Users
356(2)
Limiting User Access
358(1)
Configuring the CVS Server
359(1)
Browsing the Repository
359(1)
Configuring the CVS Server Module
359(1)
Summary
360(1)
32 DHCP Server Configuration 361(17)
Introduction to the Dynamic Host Configuration Protocol
361(1)
The ISC DHCP Server
362(1)
The DHCP Server Module
363(2)
Adding and Editing Subnets
365(4)
Viewing and Deleting Leases
369(1)
Editing Global Client Options
370(1)
Adding and Editing Fixed Hosts
370(2)
Adding and Editing Shared Networks
372(1)
Adding and Editing Groups
373(1)
Module Access Control
374(1)
Configuring the DHCP Server Module
375(2)
Summary
377(1)
33 Downloading Email with Fetchmail 378(10)
Introduction to Fetchmail
378(1)
The Fetchmail Mail Retrieval Module
379(2)
Adding a New Mail Server to Check
381(3)
Downloading Email
384(1)
Running the Fetchmail Daemon
384(1)
Editing Global Settings
385(1)
Module Access Control
386(1)
Configuring the Fetchmail Mail Retrieval Module
386(1)
Summary
386(2)
34 Managing Majordomo Mailing Lists 388(17)
Introduction to Mailing Lists and Majordomo
388(1)
The Majordomo List Manager Module
389(2)
Using Other Mail Servers
391(1)
Creating a Mailing List
391(1)
Managing List Members
392(1)
Editing List Information, Headers, and Footers
393(2)
Editing Subscription Options
395(1)
Editing Forwarded Email Options
396(1)
Editing List Access Control
397(1)
Moderating and Maintaining a Mailing List
398(1)
Deleting a Mailing List
399(1)
Creating a Digest List
399(1)
Editing Digest Options
400(1)
Editing Global Majordomo Options
401(1)
Module Access Control
401(1)
Configuring the Majordomo List Manager Module
402(1)
Summary
402(3)
35 The MySQL Database 405(23)
Introduction to MySQL
405(1)
The MySQL Database Server Module
406(1)
Creating a New Database
407(1)
Creating a New Table
408(1)
Adding and Editing Fields
409(3)
Field Types
412(1)
Viewing and Editing Table Contents
412(4)
Deleting Tables and Databases
416(1)
Executing SQL Commands
417(1)
Backing Up and Restoring a Database
417(2)
Managing MySQL Users
419(2)
Managing Database, Host, Table, and Field Permissions
421(2)
Module Access Control
423(1)
Configuring the MySQL Database Server Module
424(3)
Summary
427(1)
36 The PostgreSQL Database 428(20)
Introduction to PostgreSQL
428(1)
The PostgreSQL Database Server Module
429(2)
Creating a New Database
431(1)
Creating a New Table
431(2)
Adding and Editing Fields
433(1)
Deleting a Field
433(1)
Field Types
434(2)
Viewing and Editing Table Contents
436(1)
Deleting Tables and Databases
436(1)
Executing SQL Commands
437(1)
Backing Up and Restoring a Database
437(2)
Managing PostgreSQL Users
439(2)
Managing PostgreSQL Groups
441(1)
Restricting Client Access
441(1)
Editing Object Privileges
442(1)
Module Access Control
443(1)
Configuring the PostgreSQL Database Server Module
444(3)
Summary
447(1)
37 Configuring Sendmail 448(28)
Introduction to Internet Email
448(1)
The Sendmail Configuration Module
449(2)
Editing Local Domains and Domain Masquerading
451(1)
Managing Email Aliases
452(3)
Configuring Relaying
455(1)
Managing Virtual Address Mappings
456(1)
Configuring Domain Routing
457(1)
Editing Global Sendmail Options
458(2)
Viewing the Mail Queue
460(1)
Reading Users' Email
461(2)
Adding Sendmail Features with M4
463(2)
Creating Autoreply Aliases
465(1)
Creating Filter Aliases
466(2)
Sendmail Module Access Control
468(1)
Configuring the Sendmail Configuration Module
469(6)
Summary
475(1)
38 Configuring Qmail 476(15)
Introduction to Qmail
476(1)
The Qmail Configuration Module
477(1)
Editing Local Domains
478(1)
Managing Email Aliases
479(1)
Configuring Relaying
480(1)
Managing Virtual Mappings
481(2)
Configuring Domain Routing
483(1)
Editing Global Qmail Options
484(1)
Editing Mail User Assignments
484(2)
Viewing the Mail Queue
486(1)
Reading Users' Email
486(2)
Configuring the Qmail Configuration Module
488(2)
Summary
490(1)
39 Analyzing Log Files 491(9)
The Webalizer Logfile Analysis Module
491(1)
Editing Report Options
492(4)
Generating and Viewing a Report
496(1)
Reporting on Schedule
496(1)
Adding Another Log File
497(1)
Editing Global Options
498(1)
Module Access Control
498(1)
Summary
499(1)
40 The ProFTPD Server 500(25)
Introduction to FTP and ProFTPD
500(1)
The ProFTPD Server Module
501(2)
Running ProFTPD from inetd or xinetd
503(1)
Using the ProFTPD Server Module
504(1)
Creating Virtual Servers
505(1)
Setting Up Anonymous FTP
506(1)
Restricting Users to Their Home Directories
507(1)
Limiting Who Can Log In
508(2)
Setting Directory Listing Options
510(1)
Message and Readme Files
511(1)
Setting Per-Directory Options
512(2)
Restricting Access to FTP Commands
514(3)
Configuring Logging
517(2)
Limiting Concurrent Logins
519(1)
Restricting Clients by IP Address
520(1)
Limiting Uploads
521(2)
Manually Editing Directives
523(1)
Configuring the ProFTPD Server Module
523(1)
Summary
524(1)
41 The WU-FTPD Server 525(19)
Introduction to WU-FTPD
525(1)
The WU-FTPD Server Module
526(2)
Limiting Who Can Log In
528(1)
Setting Up Anonymous FTP
529(2)
Managing User Classes
531(1)
Denying Access to Files
532(2)
Setting Up Guest Users
534(1)
Editing Directory Aliases
535(1)
Message and Readme Files
536(2)
Configuring Logging
538(2)
Limiting Concurrent Logins
540(1)
Restricting Clients by IP Address
541(1)
Restricting Access to FTP Commands
541(1)
Configuring the WU-FTPD Server Module
542(1)
Summary
543(1)
42 SSH Server Configuration 544(10)
Introduction to SSH
544(1)
The SSH Server Module
545(1)
Restricting Access to the SSH Server
545(2)
Network Configuration
547(2)
Authentication Configuration
549(2)
Editing Client Host Options
551(1)
Setting Up SSH for New Users
552(1)
Configuring the SSH Server Module
553(1)
Summary
553(1)
43 Windows File Sharing with Samba 554(23)
Introduction to SMB and Samba
554(2)
The Samba Windows File Sharing Module
556(1)
Managing Samba Users
556(3)
Adding a New File Share
559(1)
Adding a New Printer Share
560(2)
Viewing and Disconnecting Clients
562(1)
Editing Share Security Options
563(1)
Editing File Permission Settings
564(1)
Editing File Naming Options
565(1)
Editing Other File Share Options
566(1)
Editing Printer Share Options
567(1)
Editing Share Defaults
568(1)
Configuring Networking
568(3)
Configuring Authentication
571(1)
Configuring Printers
572(1)
Accessing SWAT from Webmin
573(1)
Module Access Control
573(1)
Configuring the Samba Windows File Sharing Module
574(2)
Summary
576(1)
44 Configuring the Squid Proxy Server 577(28)
Introduction to Proxying and Squid
577(1)
The Squid Proxy Server Module
578(2)
Changing the Proxy Ports and Addresses
580(1)
Adding Cache Directories
581(2)
Editing Caching and Proxy Options
583(1)
Introduction to Access Control Lists
584(2)
Creating and Editing ACLS
586(6)
Creating and Editing Proxy Restrictions
592(1)
Setting Up Proxy Authentication
593(2)
Configuring Logging
595(1)
Connecting to Other Proxies
596(2)
Clearing the Cache
598(1)
Setting Up a Transparent Proxy
599(1)
Viewing Cache Manager Statistics
599(1)
Analyzing the Squid Logs
600(1)
Module Access Control
601(1)
Configuring the Squid Proxy Server Module
601(3)
Summary
604(1)
45 Filtering Email with Procmail 605(10)
Introduction to Procmail
605(1)
The Procmail Mail Filter Module
606(1)
Setting Up Sendmail
606(2)
Creating and Editing Actions
608(3)
Creating and Editing Variable Assignments
611(1)
Conditional Blocks and Include Files
612(1)
Filtering Spam with SpamAssassin
613(1)
Configuring the Procmail Mail Filter Module
614(1)
Summary
614(1)
46 Creating SSL Tunnels 615(5)
Introduction to SSL and STunnel
615(1)
The SSL Tunnels Module
616(1)
Creating and Editing SSL Tunnels
617(1)
Configuring the SSL Tunnels Module
618(1)
Summary
619(1)
47 Usermin Configuration 620(23)
Introduction to Usermin
620(1)
The Usermin Configuration Module
621(1)
Starting and Stopping Usermin
621(1)
Restricting Access to Usermin
622(1)
Changing the Port and Address
623(1)
Configuring the Usermin User Interface
623(1)
Installing Usermin Modules
624(1)
Changing the Default Language
625(1)
Upgrading Usermin
625(1)
Configuring Authentication
626(2)
Editing Categories and Moving Modules
628(1)
Changing and Installing Themes
629(1)
Turning on SSL
630(1)
Configuring Usermin Modules
631(1)
Restricting Access to Modules
632(4)
Limiting Who Can Log In
636(2)
About the Usermin Modules
638(3)
Configuring the Usermin Configuration Module
641(1)
Summary
642(1)
48 Cluster Software Management 643(6)
Introduction to Webmin Clustering
643(1)
The Cluster Software Packages Module
644(1)
Registering a Server
645(1)
Installing a Package
646(1)
Searching for Packages
646(1)
Deleting a Package
647(1)
Exploring and Removing a Server
647(1)
Refreshing the Package List
648(1)
Configuring the Cluster Software Packages Module
648(1)
Summary
648(1)
49 Cluster User Management 649(11)
The Cluster Users and Groups Module
649(1)
Registering a Server
650(1)
Creating a New User
651(1)
Editing an Existing User
652(1)
Deleting a User
653(1)
reating a New Group
654(1)
Editing an Existing Group
654(2)
Deleting a Group
656(1)
Refreshing User and Group Lists
656(1)
Synchronizing Users and Groups
656(2)
Listing and Removing a Server
658(1)
Configuring the Cluster Users and Groups Module
659(1)
Summary
659(1)
50 Cluster Webmin Configuration 660(9)
The Cluster Webmin Configuration Module
660(1)
Registering a Server
661(1)
Creating a New Webmin User
662(1)
Editing or Deleting a Webmin User
662(2)
Creating a New Webmin Group
664(1)
Editing or Deleting a Webmin Group
664(1)
Editing the User or Group ACL for a Module
665(1)
Installing a Module or Theme
666(1)
Viewing and Deleting a Module or Theme
667(1)
Refreshing User and Module Lists
667(1)
Listing and Removing a Server
668(1)
Configuring the Cluster Webmin Configuration Module
668(1)
Summary
668(1)
51 Webmin Configuration 669(19)
The Webmin Configuration Module
669(1)
Restricting Access to Webmin
669(1)
Changing the Port and Address
670(1)
Setting Up Logging
671(1)
Using Proxy Servers
672(1)
Configuring the Webmin User Interface
672(1)
Installing and Deleting Webmin Modules
673(1)
Cloning a Webmin Module
674(1)
Changing Your Operating System
675(1)
Editing the Program Path and Environment Variables
676(1)
Changing Webmin's Language
676(1)
Editing Main Menu Settings
677(1)
Upgrading Webmin
678(1)
Installing Updates to Webmin
679(2)
Configuring Authentication
681(1)
Editing Categories and Moving Modules
682(1)
Changing and Installing Themes
683(1)
Referrer Checking
684(1)
Allowing Unauthenticated Access to Modules
685(1)
Turning on SSL
686(1)
Setting Up a Certificate Authority
686(1)
Summary
687(1)
52 Webmin Access Control 688(12)
Introduction to Webmin Users, Groups, and Permissions
688(1)
The Webmin Users Module
689(1)
Creating a New Webmin User
689(2)
Editing a Webmin User
691(1)
Editing Module Access Control
692(2)
Creating and Editing Webmin Groups
694(1)
Requesting a Client SSL Key
695(2)
Viewing and Disconnecting Login Sessions
697(1)
Module Access Control
697(1)
Configuring the Webmin Users Module
698(1)
Summary
699(1)
53 Webmin Servers 700(7)
The Webmin Servers Index Module
700(1)
Adding a Webmin Server
701(2)
Editing or Deleting a Webmin Server
703(1)
Using Server Tunnels
703(1)
Broadcasting and Scanning for Servers
704(1)
How RPC Works
704(1)
Module Access Control
705(1)
Configuring the Webmin Servers Index Module
706(1)
Summary
706(1)
54 Logging in Webmin 707(3)
Introduction to Logging
707(1)
The Webmin Actions Log Module
708(1)
Displaying Logs
708(1)
Summary
709(1)
55 Webmin Module Development 710(11)
Introduction
710(1)
Required Files
711(1)
Module CGI Programs
712(3)
Module Configuration
715(2)
Look and Feel
717(1)
Design Goals
718(1)
Online Help
718(1)
Module Packaging
719(1)
Summary and Learning More
720(1)
56 Advanced Module Development 721(13)
Module Access Control
721(2)
User Update Notification
723(1)
Internationalization
723(2)
File Locking
725(1)
Action Logging
726(2)
Pre- and Post-Install Scripts
728(1)
Functions in Other Modules
728(2)
Remote Procedure Calls
730(2)
Creating Usermin Modules
732(1)
Summary
733(1)
57 Inside the Scheduled Cron Jobs Module 734(7)
Module Design and CGI Programs
734(1)
The cron-lib.pl Library Script
735(2)
Module Configuration Settings
737(1)
The lang Internationalization Directory
738(1)
The acl_security.pl Access Control Script
738(1)
The log_parser.pl Log Reporting Script
739(1)
The useradmin_update.pl User
Synchronization Script
740(1)
Summary
740(1)
58 Creating Webmin Themes 741(6)
Introduction to Themes
741(2)
Overriding Images and Programs
743(1)
Theme Functions
744(2)
Summary
746(1)
59 Inside the MSC Theme 747(4)
Theme Design and Graphics
747(1)
The index.cgi Program
748(1)
The theme header Function
748(1)
The theme footer Function
749(1)
Summary
750(1)
60 The Webmin API 751(16)
API Functions
751(14)
Summary
765(2)
Index 767

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Excerpts

This chapter explains what Webmin is, why it was written, and what you can expect from this book. What is Webmin? Webmin is a program that simplifies the process of managing a Linux or UNIX system. Traditionally, you have needed to manually edit configuration files and run commands to create accounts, set up web servers, or manage email forwarding. Webmin now 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 include: Creating, editing, and deleting UNIX login accounts on your system Exporting files and directories to other systems with the NFS protocol Setting up disk quotas to control how much space users can take up with their files Installing, viewing, and removing software packages in RPM and other formats Changing your system's IP address, DNS settings, and routing configuration Setting up a firewall to protect your computer or give hosts on an internal LAN access to the Internet Creating and configuring virtual web sites for the Apache Web server Managing databases, tables, and fields in a MySQL or PostgreSQL database server Sharing 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 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 log in 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 Web server, 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 it adjusts 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 thoughit is only a configuration tool, so you must have programs installed for it to configure. For example, the Apache module requires that the actual Apache Web server be installed. Fortunately, all of the services and servers that Webmin manages are either included with most Linux distributions as standard, or can be freely downloaded and installed. 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 ide

Rewards Program