Forge Home

ssmtp

sSMTP management module

356,225 downloads

9,412 latest version

4.6 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.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 0.6.0 (latest)
  • 0.5.12
  • 0.5.11
  • 0.5.9
  • 0.5.8
  • 0.5.7
  • 0.5.6
  • 0.5.0
  • 0.4.3
  • 0.4.2 (deleted)
  • 0.4.1
  • 0.4.0
  • 0.3.2
  • 0.3.1
  • 0.3.0
  • 0.2.3
  • 0.2.1
  • 0.2.0
released Oct 11th 2018
This version is compatible with:
  • , , , , ,

Start using this module

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

Add this module to your Puppetfile:

mod 'thbe-ssmtp', '0.6.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add thbe-ssmtp
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install thbe-ssmtp --version 0.6.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.

Download

Documentation

thbe/ssmtp — version 0.6.0 Oct 11th 2018

ssmtp

Build Status Puppet Forge Coverage Status

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with ssmtp
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module

Overview

The ssmtp module provides the installation procedure for SSMTP including the setup of the alternate system if not overwritten by class parameter.

Module Description

The SSMTP module prelace the standard mail server configuration with a light wight sending only server. The behavior is the same as sendmail but without the possibility to recieve mails from external systems.

Setup

What ssmtp affects

  • ssmtp package.
  • ssmtp configuration file.
  • ssmtp alternative service configuration.

Setup requirements

You need to activate the EPEL repository before you can setup the SSMTP instance. If you use a rpm based system from the RedHat family you can use my yum module (thbe-yum):

class { "::yum": repo_epel => true }

Beginning with ssmtp

include '::ssmtp' is enough to get you up and running if the parameters point to proper values. If you wish to pass in parameters like which servers to use then you can use:

class { '::ssmtp':
  mail_hub => 'mail.example.local',
}

Usage

All interaction with the ssmtp module can do be done through the main ssmtp class. This means you can simply toggle the options in the ssmtp class to get at the full functionality.

I just want SSMTP, what's the minimum I need?

include '::ssmtp'

I just want to route all mails to central mail gateway, nothing else.

class { '::ssmtp':
  mail_hub => 'mail.example.local',
  root_email => 'john.doe@example.local',
}

Reference

Classes

  • ssmtp: Main class, includes all the rest.
  • ssmtp::install: Handles the packages.
  • ssmtp::config: Handles the configuration file.
  • ssmtp::service: Handles the alternative service link.

Parameters

The following parameters are available in the ssmtp module

default_mta

Replace the default MTA with ssmtp if set to ssmtp.

root_email

Specify which Email address should recieve all mails from root.

mail_hub

Define the mail server which should deliver all mails.

revaliases

Array to define the reverse aliases.

hostname

Override ssmtp.conf parameter, see man 5 ssmtp.conf

from_line_override

Override ssmtp.conf parameter, see man 5 ssmtp.conf

rewritedomain

Override ssmtp.conf parameter, see man 5 ssmtp.conf

authuser

Override ssmtp.conf parameter, see man 5 ssmtp.conf

authpass

Override ssmtp.conf parameter, see man 5 ssmtp.conf

authmethod

Override ssmtp.conf parameter, see man 5 ssmtp.conf

tlscert

Override ssmtp.conf parameter, see man 5 ssmtp.conf

tlskey

Override ssmtp.conf parameter, see man 5 ssmtp.conf

authuser

Override ssmtp.conf parameter, see man 5 ssmtp.conf

tlscafile

Override ssmtp.conf parameter, see man 5 ssmtp.conf

tlscadir

Override ssmtp.conf parameter, see man 5 ssmtp.conf

require_yum (bool, default=true)

Override ssmtp.conf parameter, see man 5 ssmtp.conf

Limitations

This module has been built on and tested against Puppet 3.4 and higher.

The module has been tested on:

  • RedHat Enterprise Linux 5, 6, 7
  • CentOS Linux 5, 6, 7
  • Scientific Linux 5, 6, 7
  • Ubuntu 16.04
  • Debian 7, 8
  • FreeBSD 11, 12

Testing on other platforms has been light and cannot be guaranteed.

Development

If you like to add or improve this module, feel free to fork the module and send me a merge request with the modification.