Exim Email Control Specification
From Computer Tyme Support Wiki
m (→Control Files) |
m (→Control Files) |
||
Line 11: | Line 11: | ||
== Control Files == | == Control Files == | ||
- | Here is what I'm proposing for a control file structure. | + | Here is what I'm proposing for a control file structure. All of these files are test files. The directory structure is designed to be fast not having a lot of files in any one directory. |
/etc/mailcontrol | /etc/mailcontrol | ||
Line 35: | Line 35: | ||
/etc/mailcontrol/domains/example.com/users/joe/white-from | /etc/mailcontrol/domains/example.com/users/joe/white-from | ||
/etc/mailcontrol/domains/example.com/users/joe/white-hosts | /etc/mailcontrol/domains/example.com/users/joe/white-hosts | ||
+ | |||
+ | The base director contains the master control files for the entire system. Booleans and settings in the config files. The managers file contains a list of email addresses of system managers. | ||
+ | |||
+ | Under each domain is the master files that control that entire domain. This includes the passwd, shadow, and alias files that mimick the unix passwd, shadow, and alias files. I've used a few examples of master white list and block lists but any number of files can be added for greater customization. | ||
+ | |||
+ | Each domain has a users folder which contains the user's accounts and personal settings. This allows the user to customize their own experience just the way they want. A few examples are given here but there's no limit to what you can add. |
Revision as of 23:33, 7 January 2006
This is a specification for an email control program I'd like to have written for Exim. I want to make this project public domain so that others can share in it. I want to keep it simple and flexable. Looking for some volunteers to work on it. I can trade significant web hosting for people who will make this happen.
Overview
The idea behind this project is to create a PHP front end to text files on the back end that control Exim allowing users to have a high degree of personalization over feature that primarilly control spam. This would include personal white lists, personal black lists, forwarding, etc. The backend might also be a database but I'm leaning towards text files for simplicity and if done right should be very scalable. Once the structure is in place it should be easy to add a lot of customizations to give users every toy they ever dreamed of.
Authentication
The idea is yo use IMAP for authentication. All users and managers will use and email address and password to authenticate. It will attempt to log in to the email account and if successful, the user is considered logged in. Once loged in the user will be able to set all the features of their own account. If the user is a manager they well see additional choices to manage the things they are allowed to manage.
Control Files
Here is what I'm proposing for a control file structure. All of these files are test files. The directory structure is designed to be fast not having a lot of files in any one directory.
/etc/mailcontrol /etc/mailcontrol/config /etc/mailcontrol/managers /etc/mailcontrol/domains /etc/mailcontrol/domains/example.com /etc/mailcontrol/domains/example.com/passwd /etc/mailcontrol/domains/example.com/shadow /etc/mailcontrol/domains/example.com/alias /etc/mailcontrol/domains/example.com/config /etc/mailcontrol/domains/example.com/managers /etc/mailcontrol/domains/example.com/blocked-from /etc/mailcontrol/domains/example.com/blocked-hosts /etc/mailcontrol/domains/example.com/white-from /etc/mailcontrol/domains/example.com/white-hosts /etc/mailcontrol/domains/example.com/users /etc/mailcontrol/domains/example.com/users/joe /etc/mailcontrol/domains/example.com/users/joe/config /etc/mailcontrol/domains/example.com/users/joe/vacation /etc/mailcontrol/domains/example.com/users/joe/blocked-from /etc/mailcontrol/domains/example.com/users/joe/blocked-hosts /etc/mailcontrol/domains/example.com/users/joe/white-from /etc/mailcontrol/domains/example.com/users/joe/white-hosts
The base director contains the master control files for the entire system. Booleans and settings in the config files. The managers file contains a list of email addresses of system managers.
Under each domain is the master files that control that entire domain. This includes the passwd, shadow, and alias files that mimick the unix passwd, shadow, and alias files. I've used a few examples of master white list and block lists but any number of files can be added for greater customization.
Each domain has a users folder which contains the user's accounts and personal settings. This allows the user to customize their own experience just the way they want. A few examples are given here but there's no limit to what you can add.