Configure the postfix mailserver

Marius Rieder



5,799 latest version

4.3 quality score

Version information

  • 0.1.0 (latest)
  • 0.0.1
released Dec 26th 2016
This version is compatible with:
  • Puppet Enterprise 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 3.8.7 < 5.0.0
  • RedHat

Start using this module


jiuka/postfix — version 0.1.0 Dec 26th 2016

postfix module for Puppet

Build Status Coverage Status

Table of Contents

  1. Description
  2. Setup - The basics of getting started with postfix
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations


Puppet module to manage your postfix installation. Manage settings and entries by postconf backed native types. Both types include support for multiple postfix instances. The postfix instances can be managed with a native type too.


Setup Requirements

This module requires pluginsync to be enabled to sync the type/provider to the agent.

Beginning with postfix

The very basic steps needed for a user to get the module up and running. This can include setup steps, if necessary, or it can be an example of the most basic use of the module.


This section is where you describe how to customize, configure, and do the fancy stuff with your module here. It's especially helpful if you include usage examples and code samples for doing things with your module.




The postconf type enables you to set or rest postconf parameters.

  postconf { 'myhostname':
    value => '',

The config_dir param allows you to manage different postfix instances and the parameter param allows you to define the postconf parameter independently from the resource name.

  postconf { 'myhostname':
    value => '',

  postconf { 'foo:myhostname':
    parameter  => 'myhostname',
    config_dir => '/etc/postfix-foo',
    value      => '',


The postconf_master type enables you to manage the entries.

  postconf_master { 'mytransport/unix':
    command => 'smtp',

The config_dir param allows you to manage different postfix instances and the service and type param allows you to define the postconf_master service/type independently from the resource name.

  postconf_master { 'mytransport/unix':
    command => 'smtp',

  postconf { 'foo:mytransport/unix':
    service    => 'mytransport',
    type       => 'unix',
    config_dir => '/etc/postfix-foo',
    command    => 'smtp',


The postmulti type allows you to create, de/activate and destroy postfix postmulti instances with pupppet.

By default ensure is set to active but can be set to inactive or absent respectively to deactivate or remove an postmulti instance.

As the postmulti the resource name must begin with postfix-.

  postmulti { 'postfix-out': }


Known Issues

  • The postfix version of el7 does not yet support postconf_master.

  • The puppet resource interfacte is not working on postconf_master doe to PUP-3732