Skip to content

haraka/haraka-plugin-qmail-deliverable

Repository files navigation

Build Status Code Climate

haraka-plugin-qmail-deliverable

A client for checking the deliverability of an email address against the qmail-deliverabled daemon.

On incoming messages (relaying=false), validate the RCPT TO address.

Configuration

The host and port that qmail-deliverabled is listening on can be set in config/qmail-deliverable.ini

  • host (Default: localhost)
  • port (Default: 8998)
  • check_mail_from= (Default: true)

When check_mail_from is enabled, the MAIL FROM address is checked for deliverability. The deliverable status can be inspected by checking transaction.notes.local_sender. This information can be used later to influence mail routing.

Fine control of MX routing

MX routing for individual domains can be set by defining queue and next_hop.

  • queue: a queue plugin (smtp_forward, qmail-queue, lmtp), or lmtp. When queue=lmtp, if qmail-deliverable reports that the destination address is a mailbox (ie, not email list, forward, alias, etc.), then this plugin will configure the next_hop to be lmtp://$host/ and will set up that route (via get_mx()) so that outbound delivers the message to the mailbox via LMTP.

  • next_hop: a URL. Examples: smtp://mx.example.com and lmtp://int.mx.example.com:24. This plugin uses next_hop to direct messages to local mailboxes via LMTP. If the LMTP server (dovecot, in my case) is not the same host that is running qmail-deliverabled, set next_hop accordingly.

Per-domain Configuration

Domains can have their own configuration. The defaults are the same, so only the differences needs to be declared. Example:

[example.com]
host=192.168.0.1

[example2.com]
host=192.168.0.2

You can also configure per-domain queue and next_hop settings to steer delivery. Example:

[example.com]
# deliver to a remote LMTP server
queue=lmtp
next_hop=lmtp://192.168.0.10:24

[example2.com]
# send via an outbound relay
queue=smtp_forward
next_hop=smtp://mx-backend.example.com:25

About

Test recipient deliverability against Qmail::Deliverabled

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors