LucidServerMoreMailIntegration

Revision 5 as of 2009-11-22 03:44:27

Clear message

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
  • RulesDuJour

  • 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

* AntiVirus

  • 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 Big Grin :) --> 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.


CategorySpec