LucidServerMoreMailIntegration
Launchpad Entry: server-lucid-more-mail-integration
Created: November 20, 2010
Contributors: ScottKitterman, AnteKaramatic
Packages affected: New amavisd-postfix package, perhaps others most notably tasksel
Summary
Currently setting up spam and anti-virus filtering takes a lot of editing of configuration files and is not easy for a new Ubuntu Server users to get set up and working. In this spec we will create a new package that will provide an out of the box working setup that provides a safe, functional mail filtering system. The design principle is that the default configuration will be conservative and prefer incomplete filtering over false positives.
Release Note
Easy Mail Filtering: A new feature in Ubuntu Server Edition 10.04 (Lucid Lynx) is easy setup of spam and anti-virus filtering with Postfix, Amavisd-new, Spamassassin, Clamav, and Postgrey. By installing a single package (maybe also at install time) you can have an integrated working setup that is safe to use (by design the false-positive risk is low, but non-zero).
Rationale
Currently Ubuntu Server offers a good capability for mail filtering, but it requires editing multiple configuration files. This is documented, but error prone and intimidating for new server admins. We want to make this easy and reliable in line with Ubuntu 's core values.
User stories
Bob has an Exchange server that is creaking under the load of running spam filtering and anti-virus checks in addition to the load generated just by Exchange. He's heard a lot of Linux and wants to see if it can help. He considers putting a Linux border MTA to handle spam and anti-virus checks. He installs Ubuntu Server and selects the mail filter subtask in the installer and then (after considering slitting his wrists while configuring LDAP to integrate with the user list in Exchange - Note: consider a future spec for this in the future) he is amazed how everything is integrated and working with spam and virus checks.
Scott often hangs out in #ubuntu-server and answers questions about how to do mail server related tasks. He's pleased to find that instead of pointing people at documentation and answering questions that are almost all repetition from previous questions he's answered, now he can just tell them to install amavisd-postfix and both he and the user are happy.
Assumptions
Design
You can have subsections that better describe specific parts of the issue.
Implementation
This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:
UI Changes
Should cover changes required to the UI, or specific UI that is required to implement this
Code Changes
Code changes should include an overview of what needs to change, and in some cases even the specific details.
Migration
Include:
- data migration, if any
- redirects from old URLs to new ones, if any
- how users will be pointed to the new way of doing things, if necessary.
Test/Demo Plan
It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.
This need not be added or completed until the specification is nearing beta.
Unresolved issues
This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.
BoF agenda and discussion
Ubuntu mail filtering
Upstream
Postfix recommends amavisd-new as a filtering option and then stack other tools with it.
Goals
Provide API to /etc/postfix/master.cf Amavisd-new already covered Separate mail stacks for use in different environments (someone wants mail filtering, someone doesn't, same goes for SASL, etc...)
Stack
* MTA * Antispam
- RBL
- Bayesian
- Greylisting (postgrey in Main)
- SPF/DKIM
- Other possible rules:
- reject_invalid_hostname
- reject_non_fqdn_hostname
- reject_non_fqdn_sender
- reject_unknown_sender_domain
- etc
- ClamAV
* Spam/Ham training by the user * What do to with:
- Spam mails
- Virus mails
- Special case for .exe files (very annoying for users)
* Mail delivery
Decision tree
Decision for mail task
- Single server?
Y: -> everything is installed N: Filter or MTA ?
- Filter: Postfix + Amavisd + ... MTA: Postfix + Dovecot + ...
Discoverabilty
--> talk about it in the server-tips session and ask Ivanka --> add url for additional info in each debconf question --> Tasksel option(s)
Documentation
- Update Server Guide with new additions, but leave old instructions.
- Advertise the Server Guide in the conf files
- Explain the general policy: why it's this way by default, and what steps to do to improve filtering
- Update help.u.c mail sections for current postfix, dovecot, etc.