Forge Home


Sets up smtp through postfix for Amazon SES.


1,599 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 6.0.0 (latest)
  • 0.3.0
  • 0.2.1
  • 0.2.0
  • 0.1.6
  • 0.1.4
  • 0.1.2
released Oct 1st 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
  • Puppet >= 4.10.0 < 7.0.0
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'landcareresearch-amazon_ses', '6.0.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add landcareresearch-amazon_ses
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install landcareresearch-amazon_ses --version 6.0.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



landcareresearch/amazon_ses — version 6.0.0 Oct 1st 2020


Puppet Forge Bitbucket Build Status


Configures and sets up postfix to integrate with Amazon Simple Email Service (Amazon SES).

Module Description

The module installs postfix and configures it to relay smtp to the Amazon SES smtp server.
It uses the self-signed certs for TLS authentication with Amazon SES. By default it connects to port 587 as this port does not have any restrictions. Port 25 by default limits 1 email per minute, if you choose port 25, make sure you apply for that restriction to be removed from your domain.

The intention of this module is to reduce the startup and configuration time of integration with Amazon SES and to avoid simple postfix configuration errors.

The current release is supported for Debian and Redhat based systems with Ubuntu as the tested platform.


amazon_ses affects

  • /etc/postfix/
  • /etc/postfix/sasl_passwd
  • /etc/postfix/sasl_passwd.db

Setup Requirements

In order to use Amazon SES, you must login to your Amazon account and do the following.

Register for Amazon SES

Go to the following link and sign up. (sign-up-for-aws)

Create a SMTP user

Create a SMTP user which is separate from your existing IAM users. The new user can be created via:

SES -> smtp settings -> 'Create My SMTP Credentials' button.

Take note of the username and password which will used by this module.

Verify Email Addresses

In order to test this module (once installed on your amazon ec2 instance), verify at least one email address that will be the recipient of your testing. (verify-email-addresses)

Verify Domain

In order to test this module (once installed), verify the domain that emails will be sent from. Amazon's SMTP servers will reject emails from unverified domains. So this is a very important step in order to start testing Amazon SES. See the following guide: (verify-domains)

Amazon SES Production Access

Your Amazon SES instance is by default setup in a sandbox. Once a domain and emails have been verified, you can start sending emails (only to the verified addresses). This obviously is limiting and only useful in a testing environment. Once you are ready to move to production, you need to apply for production level access which has no restriction on recipient addresses.

Follow this guide to apply for production access: (request-production-access)

Beginning with amazon_ses

To install postfix with Amazon SES configuration with the default parameters.

class { 'amazon_ses':
  domain => '',
  smtp_username => 'USERNAME',
  smtp_password => 'PASSWORD',



AWS Regions

The following table shows the relationship between the puppet option and the region.

Puppet Option Region Name Region
US EAST N. Virginia us-east-1
US WEST Oregon us-west-2
EU Ireland eu-west-1
us-east-1 N. Virginia us-east-1
us-west-1 Oregon us-west-2
us-west-2 Oregon us-west-2
eu-west-1 Ireland eu-west-1
eu-central-1 Ireland eu-west-1


Works with debian and redhat based OS's.


The module is open source and available on github. Please fork!