|
|
@ -16,8 +16,8 @@ same level of functionality and still be able to host a complete mail server
|
|
|
|
at little cost while running only FOSS, applying the KISS principle and being
|
|
|
|
at little cost while running only FOSS, applying the KISS principle and being
|
|
|
|
able to fine-tune some details if needed.
|
|
|
|
able to fine-tune some details if needed.
|
|
|
|
|
|
|
|
|
|
|
|
Architecture
|
|
|
|
General architecture
|
|
|
|
============
|
|
|
|
====================
|
|
|
|
|
|
|
|
|
|
|
|
The mail infrastructure is based on a standard MTA-LDA :
|
|
|
|
The mail infrastructure is based on a standard MTA-LDA :
|
|
|
|
|
|
|
|
|
|
|
@ -33,6 +33,21 @@ Additional Web UI :
|
|
|
|
|
|
|
|
|
|
|
|
All components are monitored by supervisord.
|
|
|
|
All components are monitored by supervisord.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Incoming e-mail
|
|
|
|
|
|
|
|
===============
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Incoming e-mail is received by postfix, according to the workflow:
|
|
|
|
|
|
|
|
- ``smtpd`` receives the message;
|
|
|
|
|
|
|
|
- the domain is checked against the ``domains`` table;
|
|
|
|
|
|
|
|
- if the domain matches an active domain or the source address is allowed relay, continue;
|
|
|
|
|
|
|
|
- the mail is forwarded to Spamassassin, which appends some headers;
|
|
|
|
|
|
|
|
- the mail is fowarded to Dovecot using ``lmtp``;
|
|
|
|
|
|
|
|
- the local part and domain are checked against the ``users`` table;
|
|
|
|
|
|
|
|
- the user quota is checked;
|
|
|
|
|
|
|
|
- the mail is delivered to the local maildir.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TODO
|
|
|
|
TODO
|
|
|
|
====
|
|
|
|
====
|
|
|
|
|
|
|
|
|
|
|
@ -41,8 +56,9 @@ This is more of a roadmap than a proper TODO list. Please poke me or pull
|
|
|
|
request if you would like to join the effort.
|
|
|
|
request if you would like to join the effort.
|
|
|
|
|
|
|
|
|
|
|
|
- [x] Import vmm configuration files and get a simple postfix/dovecot running with SQLite.
|
|
|
|
- [x] Import vmm configuration files and get a simple postfix/dovecot running with SQLite.
|
|
|
|
- [ ] Add support for spamassassin.
|
|
|
|
- [x] Add support for spamassassin.
|
|
|
|
- [ ] Add support for clamav.
|
|
|
|
- [ ] Add support for clamav.
|
|
|
|
|
|
|
|
- [ ] Learn from user-defined spam or ham.
|
|
|
|
- [ ] Draft a Web administration UI.
|
|
|
|
- [ ] Draft a Web administration UI.
|
|
|
|
- [ ] Implement basic features from the free (as in beer) poste.io.
|
|
|
|
- [ ] Implement basic features from the free (as in beer) poste.io.
|
|
|
|
- [ ] Start using on a couple production mail servers.
|
|
|
|
- [ ] Start using on a couple production mail servers.
|
|
|
|