Mail Server Software Installation
Intro
With over 10 years experience in the management of mail servers,
I have come across my share and decided to base my server
recomendations with qmail based servers. I have found that
qmail is robust enough to handle any situation, and flexible
enough to allow filtering at various stages, making it ideal for
most situations.
Outline
Using the customer's prefered OS
- Solaris 7,8,9
- Linux
- FreeBSD
It is possible to setup a server that can provide the following services:
- SMTP
- POP3/POP3S
- IMAP/IMAPS
- HTTP/HTTPS: Webmail Interface
- HTTP/HTTPS: Administrative Interface
- HTTP/HTTPS: Statistics Interface
- DNS: Autoritative
- DNS: Cache
Also, it is possible to allow flexible filtering of messages
with any combination of the following:
- ClamAV: Virus Scanning
- SpamAssassin: UBE Filter
- white/Black Lists
Once the customer selects the Operating System, I require upto 5 days
to do the following:
- Install OS from selected distribution
- Update necesary components
- Compile all software
- Test all components
- Physical Installation
After the server is operational, I give two (2) training sessions generally
spanning 2-3 hours covering the following areas:
- Electronic Mail
- How and why it works
- Message format specifications
- Troubleshooting
- Server Operations
- Server monitoring from HTTP Interface
- Server configuration
- Troubleshooting
Details
Although the server software is qmail based, there are other software packages
required to provide the necesary services. All are opensource software so as
not to require additional licensing, but robust enough for production environments.
With the exception of the compiler, all the software components are compiled from
source, optimized for the procesor and environment that the server will run under,
thus optimizing all available resources.
Here is a list of packages used during installation:
Although these are the bases for the integration, there are several modifications
that have been made to provide seemless integration, as well as propietary extensions
that allow for additional services to be provided.
Hardware
This is probably the hardest part to get right, because it is all a balancing act
with respect to the services required for the requested operation, and the traffic
that is expected to be processed, as well as the amount of simultaneous
clients that will be accessing the server.
In some situations only one server is required to perform all required and optional
duties. In some cases where the number of users is small the server could be
also used to serve the company's web site.
In other situations where redundancy is required, multiple servers may have
to be configured to provide all the necesary services, or use multiple servers, each
performing any number of the following tasks:
- Accept SMTP from the Internet, and do RBL filtering, White/Black listing
- Accept SMTP from trusted networks
- Send mail
- Anti-Virus Scanning
- Anti-Spam Scanning
- Mailstore and MySQL
- POP3, IMAP
- HTTP Services
The design and separation of duties allows the customer to use one server initially,
and deploy additional servers later. Because of this, the specific hardware requirements
are difficult to determine, but for the case where one server will perform all the
required tasks, the following specs are the minimum requirements:
| CPU: | Intel Pentium4 @1.8GHz |
| RAM: | 512MB (768MB+ Recomended) |
| Storage: | 30GB (Depends on users/logging) |
| Network: | 2 Physical Interfaces |
These will handle 'light' traffic:
| SMTP Msgs/min |
< 60 |
| POP3 Sessions/min |
< 300 |
| IMAP Sessions/min |
< 300 |
| HTTP Requests/min |
< 120 |
| Deliveries/min |
< 120 |
Processing more than these requests will require additional resources that
will depend on the type of traffic that will be expected. Some require more
CPU throughput, while others require additional RAM to process simultaneous
requests.
Storage will depend entirely on the company's electronic mail policy, which
should include the following:
- Set a maximum message size:
10MB should be more than enough to hold a message, although exceptions can
be made.
- Limit the size of a Mailbox: 20-50MB should provide enough storage
for the average user.
- Amount of data to keep in logfiles: generally this will involve
the amount of days to keep and are dependent upon traffic generated by each
service the server provides.
Updated: Sep 11, 2006