The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 1.21

  • Change: 0572110c8157f3ad9d5c204f6dfebf8e603b6efa Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-22 11:04:58 +0000
    • New plugin SMTPVerify
    • The SMTPVerify plugin implements address verification at a remote SMTP server with MAIL FROM and RCPT TO commands.
    • It support the following checks:
    • check if the remote SMTP server would accept mail for a address.
    • Apply actions or scores if a permanent or temporary error is returned
    • If the remote server support the SIZE extension the SIZE will be
    • passed to the remote SMTP server. This way it could be checked
    • if the message exceeds the message size limit or the quota limit
    • of the recipient.
    • Check if the remote SMTP server announces support for STARTTLS
    • Check if there is a TLSA record for the remote SMTP server
    • Check if there is OPENPGPKEY for the recipient.
  • Change: 0d87c8d40ee26ef0ed2e0bed369f8beb10d40ad8 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-05 11:18:02 +0000
    • use Test::Memcached also in plugin-greylist.t
  • Change: 71b1fae0e7afa31112c7172e2f2183cd2f44d024 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 13:05:17 +0000
    • another try for travis
  • Change: 93c406f2ed96404ba9f7c900ddc2589712988307 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 12:57:54 +0000
    • one more for travis...
  • Change: 1b7d9b743ccebc1b0a0e5365c76475cfe3df4c56 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 12:45:29 +0000
    • try init.d instead of systemctl in travis
  • Change: ffec75868557ddd25b34d40b9b47ab6e3295d0ee Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 12:04:56 +0000
    • try using a local resolver in travis
  • Change: 6e4adc13c9a4ae452a51d6054a1b3ceb0b2b0a82 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 11:40:11 +0000
    • new feature vhost_by_policy_context
    • New option vhost_by_policy_context will if activated tell mtpolicyd to select the VirtualHost based on the policy_context.
    • For example in postfix main.cf use advanced syntax:
    • check_policy_service { inet:localhost:12345,
    • policy_context=reputation }
    • ...
    • check_policy_service { inet:localhost:12345,
    • policy_context=accounting }
    • In mtpolicyd.conf:
    • port="127.0.0.1:12345" # only 1 port
    • vhost_by_policy_context=1
    • <VirtualHost 12345>
    • name=reputation
    • ... plugins ...
    • </VirtualHost>
    • <VirtualHost 12345>
    • name=accounting
    • ... plugins ...
    • </VirtualHost>
    • The policy_context feature will be available in postfix 3.1 and later.
  • Change: ed99a4a0be2508937db23f2a8c4ce90b8de8251d Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-04 10:30:48 +0000
    • fix RBL plugin testcase
    • spamhaus removed '"' in response?
  • Change: e4913c8f2f2622924e88803427005963c387c512 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-01 08:05:42 +0000
    • replace README.md with a link to pod docs
  • Change: b79bb53324ff6bc1e3d0172ee900394ad815e9e0 Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-01 07:57:01 +0000
    • add DBD::SQLite as a test prereq
  • Change: 90232892201273263be1c1a0784c51f8febf5c5f Author: Markus Benning <ich@markusbenning.de> Date : 2015-09-01 07:45:10 +0000
    • add cpanm --sudo option in travis
  • Change: 791287bff9ccc1925eb1c21739ec87abddf9eebb Author: Markus Benning <ich@markusbenning.de> Date : 2015-08-31 17:25:11 +0000
    • update .travis.yml
  • Change: eccde3a2a29180e3ed33343ec0f239204588fef4 Author: Markus Benning <ich@markusbenning.de> Date : 2015-08-31 17:16:02 +0000
    • use cpanm --notest for prereqs in travis ci
  • Change: 1ae4fdc01a50d652c6ff417dc0c9d0b46bbe68b7 Author: Markus Benning <ich@markusbenning.de> Date : 2015-08-31 17:13:35 +0000
    • install libdb-dev in travis
  • Change: bb9cf757ed42fc3b9b737284d572c2969a364ed1 Author: Markus Benning <ich@markusbenning.de> Date : 2015-08-31 09:02:14 +0000
    • added minimum perl version

Documentation

the mtpolicyd executable
commandline client to query a policyd server
How to cook with mtpolicyd
how to write your own mtpolicyd plugin
how to archieve certain tasks within a plugin
How to setup smtp level accounting and quotas
How to install mtpolicyd

Modules

a modular policy daemon for postfix
a class for IP address lists
a policyd client class
application interface class for Mail::MtPolicyd::Client
a postfix policyd client request class
a postfix policyd client response class
a base class for plugins
mtpolicyd plugin for accounting in sql tables
mtpolicyd plugin which just returns an action
mtpolicyd plugin for adding the score as header to the mail
mtpolicyd plugin to unset session variables
mtpolicyd plugin for conditions based on session values
mtpolicyd plugin for the Commtouch IP reputation service (ctipd)
mtpolicyd plugin for checking helo,sender domain,rdns against an DBL
mtpolicyd plugin to capture the output of plugins
mtpolicyd plugin to block an address with fail2ban
mtpolicyd plugin for checking geo information of an ip
mtpolicyd plugin for checking geo information of an client_address
This plugin implements a greylisting mechanism with an auto whitelist.
mtpolicyd plugin for creating an honeypot
mtpolicyd plugin for accessing a postfix access map
mtpolicyd plugin to forward request to another policy daemon
mtpolicyd plugin for accounting in sql tables
mtpolicyd plugin for checking the client-address against an RBL
mtpolicyd plugin for checking the client-address against an RBL
result returned by a plugin
role for plugins using configurable fields
role for plugins to support a nested plugin chain
role for plugins using scoring
role with support function for plugins using sql
role for plugins using per user/request configuration
mtpolicyd plugin for remote SMTP address checks
mtpolicyd plugin to apply SPF checks
mtpolicyd plugin for checking spamassassin AWL reputation
mtpolicyd plugin for querying a spamassassin AWL database for reputation
mtpolicyd plugin for running an action based on the score
mtpolicyd plugin which just sets and key=value in the session
mtpolicyd plugin for accessing a SQL white/black/access list
mtpolicyd plugin for retrieving the user config of a user
mtpolicyd plugin for postfix stress mode
class for a VirtualHost instance
a application level profiler for mtpolicyd
a profiler for the mtpolicyd
the request object
class to hold the results of a request returned by plugins
singleton class to hold the sql database connection
class for a VirtualHost instance