Skip to main content

Adds the script, which process given emails to proxy them, replacing real email addresses by company's local ones taken from the contrib.auth module.

Project description

===========
EmailFilter
===========

Description
===========

Module provides proxying emails from external addresses to local ones according to ``django.contrib.User`` emails


Installation
============

1. Install emailfilter to your project's environment. If your env should be activated by hand, then create script (``mail_route.sh``) like this::

#!/bin/sh
export PYTHONPATH=/path/to/settings_dir/:/path/to/project/

echo "$(cat)" | /path/to/env/bin/python /path/to/env/bin/mail_route.py >> /path/to/logs/mail_route.log 2>&1

2. Add new pipe to ``mail_route.py`` script in postfix (by default it should be placed in ``/etc/postfix/master.cf``)::

mailproxy unix - n n - - pipe
flags=FR user=user_that_runs_uwsgi_or_project argv=/path/to/mail_route.sh
${nexthop} ${user}


3. Then this transport should be used to process mails.

For example you want to process mails to ``domain.com`` and you are using cdb storage for postfix.
Add this to ``/etc/postfix/transport``::

domain.com mailproxy:


Then update cdb map::

postmap cdb:/etc/postfix/transport


4. now you should create ``/path/where/you/place/mail_route_settings/mail_route_settings.py``::

PROJECT_BASE_DIR = '/path/where/project/settings/can/be/imported/'
DJANGO_SETTINGS_MODULE = 'project.settings'
PROCESS_OUTGOING_EMAILS = False
SELF_ADDRESS = 'proxy@kavahq.com'


Settings
========

Some django settings are available for configuration:

* ``EMAIL_HOST``, ``EMAIL_PORT`` — host and port used to "forward" emails
* ``EMAIL_SERVER_DOMAINS`` — list of domains that should be checked for mail forwarding. Example::

EMAIL_SERVER_DOMAINS = ['@42cc.co', '@42coffeecups.com', '@khavr.com']

Not Django settings in mail_route_settings.py file:

* ``SELF_ADDRESS`` — email address of mail_rote. For example if you forwar all emails from somewhwere
to mail_route by bcc`ingthem then you should set ``SELF_ADDRESS`` to bcc address and it will be ignored
when forwarding address(es) is determined
* ``PROJECT_BASE_DIR`` — this directory will be added to PYTHONPATH
* ``DJANGO_SETTINGS_MODULE`` — env variable with same name will be set to value of this setting
* ``LOG_PATH`` — where logs should be saved

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

email-filter-0.2.12.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

email-filter-0.2.12.linux-x86_64.tar.gz (20.9 kB view details)

Uploaded Source

File details

Details for the file email-filter-0.2.12.tar.gz.

File metadata

File hashes

Hashes for email-filter-0.2.12.tar.gz
Algorithm Hash digest
SHA256 8d135b8f7a663eee48b7e77465f7b9be9c3c4925dbd8e2040083c2f13c181943
MD5 f58bf3815fba8ba4266e5433550b2b07
BLAKE2b-256 4ce73d4c1fc61fe484e2c734ec336546f1910a6565d6782b97ba4cdcdd1c9b79

See more details on using hashes here.

File details

Details for the file email-filter-0.2.12.linux-x86_64.tar.gz.

File metadata

File hashes

Hashes for email-filter-0.2.12.linux-x86_64.tar.gz
Algorithm Hash digest
SHA256 2dbca0d1d8b150262ec7f8b84ff2f9676a8c14008adf5c578e14d976d3d1796d
MD5 55de0e7208898e254ed5f87e53db5fac
BLAKE2b-256 ca5891c10000bbbd72f0f2efbc725059ed4c5cbf27847667007573f15b0c5082

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page