Cover image for Running qmail
Title:
Running qmail
Author:
Blum, Richard.
Personal Author:
Publication Information:
Indianapolis, Ind. : Sams, [2000]

©2000
Physical Description:
xi, 540 pages : illustrations ; 23 cm + 1 computer optical disc (4 3/4 in.)
General Note:
CD-ROM includes: FreeBSD 4.0, source code for qmail 1.03, dot-forward 0.71, fastforward 0.51, & qmailanalog 0.70.

Includes index.
Language:
English
ISBN:
9780672319457
Format :
Book

Available:*

Library
Call Number
Material Type
Home Location
Status
Central Library TK5105.73 .B58 2000 Book and Software Set Central Closed Stacks
Searching...

On Order

Summary

Summary

Running qmail will enable you to install and operate an Internet email server on your local network without having to buy an expensive commercial email system and pay for user licenses. This book includes on CD the qmail email software package, which is in wide use on the Internet without any books documenting how to install, configure, and operate the email server effectively. There are step-by-step examples detailing the installation and configuration of qmail along with reference based chapters pertaining to qmail features. The FreeBSD operating system will be utilized to demonstrate concepts throughout the book. After reading this book, network administrators will possess a good understanding of how email is transferred between email hosts and clients in the Internet environment. You will also possess knowledge of how to use the qmail email software package in a standard Unix/Linux environment.


Author Notes

Richard Blum has been a network and systems administrator for over 10 years for a large government organization. He has had the opportunity to use Unix/Linux in a network environment as an e-mail server, FTP server, and network monitoring device for at least 5 years. He also has been volunteering for a non-profit organization doing network administration for about 3 years. On this network he has designed and installed a local network file system and an Internet e-mail system for a small 24 user network.


Table of Contents

Introductionp. 1
Part I Email Services, qmail, and Networking
1 Email Servicesp. 7
Early Mainframe Email Systemsp. 8
Mainframe Messagesp. 8
Multiple-Mainframe Email Systemsp. 10
UNIX Email Systemsp. 10
UNIX Mail Transfer Agent Programsp. 12
UNIX Mail User Agent Programsp. 14
LAN-Based Email Systemsp. 17
Email Protocolsp. 18
Mail Transfer Agent Protocolsp. 19
Mail User Agent Protocolsp. 21
Summaryp. 23
2 qmail Servicesp. 25
The Role of qmail in the UNIX Mail Serverp. 26
The PPP Softwarep. 27
The UUCP Softwarep. 27
The MUA Server Softwarep. 27
The qmail Block Diagramp. 28
qmail Processesp. 29
qmail Utilitiesp. 29
qmail Control Filesp. 31
qmail Environment Variablesp. 32
The qmail Mail Delivery Processp. 32
qmail-smtpdp. 33
qmail-injectp. 34
qmail-sendp. 36
qmail-cleanp. 37
qmail-rspawnp. 38
qmail-remotep. 38
qmail-lspawnp. 39
qmail-localp. 39
qmail-queuep. 40
Inside the qmail Message Queuep. 40
qmail Message Queue Structurep. 40
qmail Message Statesp. 41
qmail and Sendmailp. 44
Summaryp. 45
3 Server Requirements for qmailp. 47
The UNIX Operating Systemp. 48
Memory Managementp. 48
Process Managementp. 51
Device Driver Managementp. 54
File System Managementp. 56
The FreeBSD Operating Systemp. 57
The FreeBSD Kernelp. 58
The FreeBSD Librariesp. 59
The Linux Operating Systemp. 60
The Linux Kernelp. 61
The Linux Librariesp. 62
The GNU Projectp. 65
GNU Bashp. 65
GNU gccp. 67
GNU Makep. 68
Summaryp. 69
4 DNS and qmailp. 71
History of Computer Namesp. 72
Domain Namesp. 72
DNS Structurep. 73
DNS Database Recordsp. 77
A Sample DNS Database for a Domainp. 82
DNS and Emailp. 83
Using DNS Client Programsp. 84
Configuring DNS Client Filesp. 85
DNS Utilitiesp. 87
UNIX as a DNS Serverp. 95
The BIND Programp. 95
The Dnscache Programp. 100
Summaryp. 104
5 SMTP and qmailp. 105
The SMTP Protocolp. 106
Basic SMTP Client Commandsp. 107
Server Responsesp. 116
The SMTP Message Formatp. 119
Basic RFC 822 Header Fieldsp. 119
Using the RFC 822 Format in an SMTP Mail Transactionp. 123
MIME and Binary Datap. 124
Extended SMTPp. 129
The QMTP Protocolp. 131
QMTP Client Commandsp. 131
Server Responsesp. 133
Summaryp. 133
Part II Installing and Configuring qmail
6 Installing qmailp. 137
Downloading and Compiling the qmail Source Codep. 138
Precompilation Stepsp. 138
Compiling qmailp. 146
Using the FreeBSD qmail Package Installerp. 146
Using the FreeBSD qmail Port Installerp. 147
The qmail Directory Structurep. 150
The qmail Programsp. 150
The qmail Core System Programsp. 150
The qmail Mail Helper Utility Programsp. 154
The qmail Administrator Utility Programsp. 156
Summaryp. 160
7 Changing qmail Operational Parametersp. 161
Control Filesp. 162
Control File Structure and Permissionsp. 162
qmail Program Control Filesp. 163
qmail Environment Variablesp. 177
Alias Filesp. 178
System Aliasesp. 179
User-Created Aliasesp. 180
qmail User Filesp. 181
qmail Mail user Tablesp. 181
qmail Admin Programsp. 184
Summaryp. 185
8 Using qmailp. 187
Create the Basic qmail Control Filesp. 188
Create Necessary qmail Aliasesp. 189
Determining the Local Mail Delivery Methodp. 190
Use Existing Local Mail Methodp. 191
Use $HOME/Mailbox Methodp. 193
Use $HOME/Maildir Methodp. 195
Starting and Testing qmailp. 196
Testing qmail Local Deliveryp. 197
Testing qmail Remote Deliveryp. 199
Testing qmail Alias Username Deliveryp. 200
Testing qmail Bounced Messages Deliveryp. 200
Setting Up the qmail Boot Script Filep. 201
Starting qmail on FreeBSD Systemsp. 201
Starting qmail on Linux Systemsp. 202
Changing the MUA Program Interfacep. 204
Setting Up qmail SMTP Capabilityp. 205
Using qmail-smtpdp. 205
Using the tcpwrapper Programp. 207
Using tcpwrapper to Allow Selective Relayingp. 208
User Configuration Filesp. 209
Format of the .qmail Filep. 209
User Alias Filesp. 210
Summaryp. 210
9 Using the Maildir Mailbox Formatp. 213
Standard UNIX Mailboxesp. 214
Local Message Storagep. 214
Local Message Retrievalp. 217
The Maildir Mailbox Formatp. 218
Local Message Storagep. 220
Local Message Retrievalp. 223
qmail Maildir Utilitiesp. 224
maildirmakep. 224
maildir2mboxp. 225
maildirwatchp. 227
Using Maildir Mailboxesp. 227
Individual Usersp. 228
System-Widep. 228
Using an MUA Program to Read Maildir Mailboxesp. 229
The qmail-pop3d Programp. 229
Summaryp. 238
10 The ucspi-tcp Programp. 239
The UNIX inetd Programp. 240
Using the inetd Programp. 240
The inetd Configuration Filesp. 242
Problems with the inetd Programp. 244
The ucspi-tcp Packagep. 245
Installing the ucspi-tcp Packagep. 246
Downloading the ucspi-tcp Source Codep. 247
Using the FreeBSD ucspi-tcp Portp. 247
The ucspi-tcp Programsp. 249
The Tcpserver Programp. 249
The Tcpclient Programp. 251
The Tcprules Programp. 252
Checking the Rules Databasep. 256
Rejecting Spam Mailp. 258
Testing the SMTP Serverp. 259
Sample ucspi-tcp Client Programsp. 260
Using the ucspi-tcp Package with qmailp. 263
Summaryp. 264
11 Using qmail as an ISP Mail Serverp. 267
Features of an ISP Mail Serverp. 268
Virtual Domainsp. 269
Selective Relayingp. 270
Configuring Virtual Domainsp. 272
Configuring DNS Records for Virtual Domainsp. 272
Using a Single User Accountp. 274
Using Limited Local Mail Support for a Virtual Domainp. 277
Using UUCPp. 278
Retrieving Mail from a Virtual Domainp. 280
Retrieving Domain Mail from a Single User Accountp. 280
Retrieving Domain Mail from a UUCP Accountp. 283
Configuring Selective Relayingp. 284
Setting Environment Variables Using the Tcpwrappers Programp. 285
Setting Environment Variables Using the Tcpserver Programp. 287
Summaryp. 288
12 Using qmail as an Office Mail Serverp. 289
Requirements for an Office Mail Serverp. 290
Full-Time Internet Connectionp. 291
Dial-Up Internet Connectionp. 292
Dial-on-Demand Internet Connectionp. 297
UUCP ISP Connectionp. 299
Transferring Messages to the ISPp. 301
Downloading the Serialmail Programp. 302
Compiling and Installing the Serialmail Programp. 303
The Serialmail Executable Programsp. 304
Using the Serialmail Programsp. 307
On a Local Mail Serverp. 308
On the ISP Mail Serverp. 311
Summaryp. 315
13 qmail Server Administrationp. 317
Userid Maintenancep. 318
System User Accountsp. 318
qmail User Accountsp. 329
The UNIX Syslogd Programp. 330
Customizing the System Logp. 330
Syslogd Configuration Filep. 331
The qmail Alternative Logging Programp. 334
Reading qmail Logsp. 336
Status Messagesp. 336
Fatal Problemsp. 336
Serious Problemsp. 337
Messagesp. 337
Deliveriesp. 338
Warningsp. 338
The Qmailanalog Packagep. 340
The Matchup Programp. 340
The Xrecipient Programp. 342
The Xsender Programp. 343
Summaryp. 344
14 Migrating from Sendmail to qmailp. 345
What Is Sendmail?p. 346
Sendmail Files and Directoriesp. 346
The Sendmail Mail Enginep. 347
The Sendmail Aliases Systemp. 350
The Sendmail Statistics Programsp. 353
Configuring qmail to Use the Standard Sendmail Mailboxesp. 353
qmail Utilities for Using Sendmail Filesp. 354
Using the Sendmail Alias Filep. 355
Using Sendmail .forward Filesp. 361
Other Sendmail Configuration Considerationsp. 362
The Sendmail virtusertable Filep. 363
The Sendmail sendmail.cw Filep. 363
Summaryp. 364
Part III Advanced qmail Topics
15 Supporting Mail Listsp. 367
Types of Mail Listsp. 368
Open and Closed Mail Listsp. 368
Moderated and Unmoderated Mail Listsp. 369
Remote Administration of Mail Listsp. 369
Digests of Mail Listsp. 369
Archives of Mail Listsp. 370
The Majordomo Programp. 370
Downloading Majordomop. 370
Installing Majordomop. 371
A qmail-Specific Mail List Programp. 380
Downloading Ezmlmp. 380
Programs in the Ezmlm Packagep. 381
Controlling Ezmlm Featuresp. 385
Creating and Using a Simple Mail Listp. 386
Extending the Ezmlm Mail List Packagep. 389
Summaryp. 389
16 The Daemontool Utilitiesp. 391
Downloading and Compiling Daemontoolsp. 392
Using Daemontoolsp. 393
Supervising Programsp. 393
Controlling Supervised Programsp. 395
Starting Multiple Supervised Programsp. 397
Checking the Status of a Servicep. 400
Quick Status Check of a Supervised Programp. 400
Supervising Programs That Run in Backgroundp. 400
Running a Program with New Resource Limitsp. 401
Creating Log Files Without Loggerp. 402
Adding a Timestampp. 407
Converting TAI64N Times to Local Timep. 407
Running a Program as Another User IDp. 408
Running a Program with a User's Environment Variablesp. 408
Running a Program with Specific Environment Variablesp. 409
Using a Lock File for a Programp. 409
Using Daemontools with qmailp. 410
The qmail-send Supervise Scriptsp. 411
The qmail-smtpd Supervise Scriptsp. 412
Starting the qmail Svscan Scriptsp. 412
Summaryp. 413
17 Installing and Configuring POP3 and IMAP Serversp. 415
Email MDA Protocolsp. 417
POP3p. 418
IMAPp. 422
The qmail-pop3d Programp. 427
The Qpopper Programp. 429
Downloading Qpopperp. 429
Configuring Qpopperp. 430
University of Washington IMAPp. 437
Downloading and Installing UW IMAPp. 437
Configuring UW POP3p. 438
Configuring UW IMAPp. 441
Summaryp. 442
18 Configuring a PPP Serverp. 443
The Point-to-Point Protocolp. 444
What Is PPP?p. 444
PPP Protocol Framesp. 446
PPP Negotiation Phasesp. 449
Link Establishment Phasep. 449
PPP Authentication Phasep. 452
Network Protocol Establishment Phasep. 455
Link Termination Phasep. 456
UNIX PPP Server Configurationp. 456
Installing the pppd Programp. 457
Configuring the pppd Programp. 458
Using the pppd Programp. 460
The mgetty+sendfax Programp. 460
Installing the mgetty+sendfax Programp. 461
Configuring mgetty for PPP Supportp. 462
The mgetty Log Filesp. 465
Summaryp. 468
19 Supporting Dial-In Clientsp. 469
Configuring Dial-In Modemsp. 470
Using Modems in UNIXp. 470
Controlling FreeBSD Serial Portsp. 472
Controlling Linux Serial Portsp. 476
Configuring UNIX Dial-In Clientsp. 483
Using the pppd Programp. 484
Using the Chat Programp. 484
The Diald Programp. 487
The Kppp Programp. 488
Configuring Windows 95/98 Clientsp. 491
Configuring Windows NT and 2000 Clientsp. 493
The Eudora POP3 Client Softwarep. 498
Downloading Eudorap. 498
Installing Eudorap. 498
Configuring Eudorap. 499
Using Eudorap. 500
Summaryp. 501
Indexp. 503

Google Preview