## [![DebOps project](http://debops.org/images/debops-small.png)](http://debops.org) postfix

[![Travis CI](http://img.shields.io/travis/debops/ansible-postfix.svg?style=flat)](http://travis-ci.org/debops/ansible-postfix) [![test-suite](http://img.shields.io/badge/test--suite-ansible--postfix-blue.svg?style=flat)](https://github.com/debops/test-suite/tree/master/ansible-postfix/)  [![Ansible Galaxy](http://img.shields.io/badge/galaxy-debops.postfix-660198.svg?style=flat)](https://galaxy.ansible.com/list#/roles/1589)

This role installs and manages [Postfix](http://postfix.org/), an SMTP server.

The `debops.postfix` role is designed to manage Postfix on different hosts in
a cluster, with different "capabilities". At the moment the role can configure
Postfix to act as:

* a null client: Postfix sends all mail to another system specified
  either via DNS MX records or an Ansible variable, no local mail is enabled
  (this is the default configuration);
* a local SMTP server: local mail is delivered to local user accounts;
* a network SMTP server: network access is enabled separately from other
  capabilities, to avoid exposing misconfigured SMTP server by mistake and
  becoming an open relay;
* an incoming MX gateway: Postfix will listen on the port 25 (default SMTP
  port) and process connections using `postscreen` daemon with automatic
  greylisting and optional RBL checking;
* an outgoing SMTP client: Postfix will relay outgoing mail messages to
  specified remote MX hosts, you can optionally enable SMTP client
  authentication, the passwords will be stored separate from the inventory in
  the `secret/` directory (see `debops.secret` role). Sender dependent
  authentication is also available.

More "capabilities" like user authentication, support for virtual mail,
spam/virus filtering and others will be implemented in the future.

This role can also be used as a dependency of other roles which then can
enable more features of the Postfix SMTP server for their own use. For
example, the `debops.mailman` role enables mail forwarding to the configured
mailing lists, and the `debops.smstools` role uses Postfix as mail-SMS gateway.

### Installation

This role requires at least Ansible `v1.7.0`. To install it, run:

    ansible-galaxy install debops.postfix

### Documentation

More information about `debops.postfix` can be found in the
[official debops.postfix documentation](http://docs.debops.org/en/latest/ansible/roles/ansible-postfix/docs/).


### Role dependencies

- `debops.ferm`
- `debops.secret`
- `debops.pki`

### Are you using this as a standalone role without DebOps?

You may need to include missing roles from the [DebOps common
playbook](https://github.com/debops/debops-playbooks/blob/master/playbooks/common.yml)
into your playbook.

[Try DebOps now](https://github.com/debops/debops) for a complete solution to run your Debian-based infrastructure.





### Authors and license

`postfix` role was written by:
- Maciej Delmanowski | [e-mail](mailto:drybjed@gmail.com) | [Twitter](https://twitter.com/drybjed) | [GitHub](https://github.com/drybjed)

License: [GPLv3](https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29)

***

This role is part of the [DebOps](http://debops.org/) project. README generated by [ansigenome](https://github.com/nickjj/ansigenome/).
