PacktLib: Webmin Administrator's Cookbook

Webmin Administrator's Cookbook


About the Author

About the Reviewers


Setting Up Your System


Installing Webmin on a Debian-based system

Installing Webmin on an RPM-based system

Installing Webmin on another system

Connecting to Webmin

Installing additional Webmin modules

Monitoring what Webmin is doing

Controlling which system services are started at boot

Inspecting the installed software packages

Installing software packages

Updating the installed packages to the latest versions

Enabling Webmin to send an e-mail

Getting an e-mail when new versions of packages become available

Reading the documentation of the installed software

User Management


Creating a Webmin user

Creating a Webmin group with access to specific modules and options

Allowing users to log in to Webmin with the system credentials

Creating Webmin users based on system accounts

Controlling who is currently using Webmin

Creating a system user account

Modifying a user's UID and other information

Temporarily disabling a user account

Creating and editing a system group

Changing a user's password

Exporting users and importing them into another system

Installing Usermin

Securing Your System


Setting up a Linux firewall

Allowing access to a service through the firewall

Verifying your firewall by port scanning

Turning off unnecessary services

Verifying the strength of passwords

Disabling root login over SSH

Restricting Webmin access to a specific IP

Connecting to Webmin securely over an SSH tunnel

Closing inactive Webmin sessions automatically

Controlling Your System


Executing a command on the server

Executing a command as another user

Setting a command to be executed in the future

Scheduling a command to run regularly with cron

Creating a panel for the commands that you execute often

Creating a panel with the database commands that you execute often

Running a terminal emulator in the browser

Monitoring Your System


Viewing and searching through system logfiles

Saving Syslog messages to a file

Adding other logfiles to Webmin

Configuring logfile rotation

Listing recent logins

Receiving an e-mail when a service stops running

Automatically restarting a service that goes down

Monitoring a remote server

Managing Files on Your System


Downloading files from the server

Uploading files to the server

Managing files and directories on the server

Changing file ownership and permissions

Setting up network-shared folders for Windows

Mounting a Windows-shared folder

Setting up an NFS-shared volume

Mounting a remote NFS volume

Giving users access to your server via SFTP

Giving users access to your server via FTP

Backing Up Your System


Backing up configuration files

Restoring configuration files from backup

Automatically backing up configuration files

Creating a backup of a selected directory

Creating a backup of an entire mount point

Backing up to a remote host

Setting up automatic backups

Backing up databases

Running an Apache Web Server


Installing Apache on your system

Restarting Apache

Enabling Apache modules

Creating a static HTML site

Creating a virtual host

Setting options for directories, files, and locations

Creating a password-protected website

Displaying a listing of files in a directory

Redirecting incoming requests

Setting up encrypted websites with SSL

Logging incoming requests and errors

Analyzing logfiles using Webalizer

Running a MySQL Database Server


Installing the MySQL database server

Allowing access to MySQL over the network

Accessing your MySQL server over an SSH tunnel

Creating a new database

Creating users and granting permissions to databases

Creating a backup of your database

Executing custom SQL commands

Restoring database from the backup

Editing the structure of your database

Editing records in a database

Checking who is using your database server

Installing phpMyAdmin

Running a PostgreSQL Database Server


Installing the PostgreSQL database server

Locating the PostgreSQL server configuration files

Allowing access to PostgreSQL over the network

Accessing the PostgreSQL server over an SSH tunnel

Creating a new database

Creating users and granting permissions

Creating a backup of your database

Executing custom SQL commands

Restoring a database from backup

Editing the structure of your database

Editing records in a database

Installing phpPgAdmin

Running Web Applications


Generating dynamic pages using CGI

Installing PHP

Changing PHP configuration settings

Displaying PHP errors while debugging

Logging in PHP

Installing WordPress on your server

Installing Drupal on your server

Installing a Django-based application using mod_wsgi

Setting Up an E-mail Server


Setting up your server to send and receive e-mails

Setting up secure IMAP access to mailboxes

Setting up a secure SMTP relay for users

Controlling the mail queue

Reading and writing e-mails on the server

Configuring e-mail aliases

Filtering incoming mail using Procmail and SpamAssassin

Debugging e-mail-related problems