Update README to be more fully fleshed out
This commit is contained in:
parent
5f55183299
commit
4ee607c219
1 changed files with 164 additions and 28 deletions
192
README
192
README
|
@ -14,34 +14,6 @@ This module now uses parameterized classes, where it used global variables
|
||||||
before. So please whatch out before pulling, you need to change the
|
before. So please whatch out before pulling, you need to change the
|
||||||
class declarations in your manifest !
|
class declarations in your manifest !
|
||||||
|
|
||||||
Config
|
|
||||||
------
|
|
||||||
- set $use_amavisd="yes" to include postfix::amavis
|
|
||||||
- set $anon_sasl="yes" to hide the originating IP in email
|
|
||||||
relayed for an authenticated SASL client; this needs Postfix
|
|
||||||
2.3 or later to work; beware! Postfix logs the header replacement
|
|
||||||
has been done, which means that you are storing this information,
|
|
||||||
unless you are anonymizing your logs.
|
|
||||||
- set $manage_header_checks="yes" to manage header checks (see
|
|
||||||
postfix::header_checks for details)
|
|
||||||
- set $manage_transport_regexp="yes" to manage header checks (see
|
|
||||||
postfix::transport_regexp for details)
|
|
||||||
- set $manage_virtual_regexp="yes" to manage header checks (see
|
|
||||||
postfix::virtual_regexp for details)
|
|
||||||
- set $manage_tls_policy="yes" to manage TLS policy (see
|
|
||||||
postfix::tlspolicy for details)
|
|
||||||
- by default, postfix will bind to all interfaces, but sometimes you don't want
|
|
||||||
that. To bind to specific interfaces, use the $inet_interfaces
|
|
||||||
variable and set it to exactly what would be in the main.cf file.
|
|
||||||
- some hosts have weird-looking host names (dedicated servers and VPSes). To
|
|
||||||
set the server's domain of origin, set the $myorigin value
|
|
||||||
|
|
||||||
== Example:
|
|
||||||
|
|
||||||
class { 'postfix': }
|
|
||||||
|
|
||||||
postfix::config { "relay_domains": value => "localhost host.foo.com" }
|
|
||||||
|
|
||||||
Deprecation notice
|
Deprecation notice
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
|
@ -63,3 +35,167 @@ This is not supported anymore.
|
||||||
|
|
||||||
Every such snippet much now be configured using the (respectively)
|
Every such snippet much now be configured using the (respectively)
|
||||||
postfix::header_checks_snippet and postfix::tlspolicy_snippet defines.
|
postfix::header_checks_snippet and postfix::tlspolicy_snippet defines.
|
||||||
|
|
||||||
|
Postfix class configuration parameters
|
||||||
|
--------------------------------------
|
||||||
|
|
||||||
|
* use_amavisd => 'yes' - to include postfix::amavis
|
||||||
|
|
||||||
|
* anon_sasl => 'yes' - to hide the originating IP in email
|
||||||
|
relayed for an authenticated SASL client; this needs Postfix
|
||||||
|
2.3 or later to work; beware! Postfix logs the header replacement
|
||||||
|
has been done, which means that you are storing this information,
|
||||||
|
unless you are anonymizing your logs.
|
||||||
|
|
||||||
|
* manage_header_checks => 'yes' - to manage header checks (see
|
||||||
|
postfix::header_checks for details)
|
||||||
|
|
||||||
|
* manage_transport_regexp => 'yes' - to manage header checks (see
|
||||||
|
postfix::transport_regexp for details)
|
||||||
|
|
||||||
|
* manage_virtual_regexp => 'yes' - to manage header checks (see
|
||||||
|
postfix::virtual_regexp for details)
|
||||||
|
|
||||||
|
* manage_tls_policy => 'yes - to manage TLS policy (see
|
||||||
|
postfix::tlspolicy for details)
|
||||||
|
|
||||||
|
* inet_interfaces: by default, postfix will bind to all interfaces, but
|
||||||
|
sometimes you don't want that. To bind to specific interfaces, use the
|
||||||
|
'inet_interfaces' parameter and set it to exactly what would be in the
|
||||||
|
main.cf file.
|
||||||
|
|
||||||
|
* myorigin: some hosts have weird-looking host names (dedicated servers and VPSes). To
|
||||||
|
set the server's domain of origin, set the 'myorigin' parameter
|
||||||
|
|
||||||
|
* smtp_listen: address on which the smtp service will listen (Default: 127.0.0.1)
|
||||||
|
|
||||||
|
* root_mail_recipient: who will receive root's emails (Default: 'nobody')
|
||||||
|
|
||||||
|
* tls_fingerprint_digest: fingerprint digest for tls policy class (Default: 'sha1')
|
||||||
|
|
||||||
|
* use_dovecot_lda: include dovecot declaration at master.cf
|
||||||
|
|
||||||
|
* use_schleuder: whether to include schleuder portion at master.cf
|
||||||
|
|
||||||
|
* use_sympa: whether to include sympa portion at master.cf
|
||||||
|
|
||||||
|
* use_firma: whether to include firma portion at master.cf
|
||||||
|
|
||||||
|
* use_mlmmj: whether to include mlmmj portion at master.cf
|
||||||
|
|
||||||
|
* use_submission: set to "yes" to enable submission section at master.cf
|
||||||
|
|
||||||
|
* use_smtps: set to "yes" to enable smtps section at master.cf
|
||||||
|
|
||||||
|
* mastercf_tail: set this for additional content to be added at the end of master.cf
|
||||||
|
|
||||||
|
== Examples:
|
||||||
|
|
||||||
|
class { 'postfix': }
|
||||||
|
|
||||||
|
class { 'postfix': anon_sasl => 'yes', myorigin => 'foo.bar.tz' }
|
||||||
|
|
||||||
|
postfix::config { "relay_domains": value => "localhost host.foo.com" }
|
||||||
|
|
||||||
|
|
||||||
|
Convience classes
|
||||||
|
=================
|
||||||
|
|
||||||
|
postfix::config
|
||||||
|
---------------
|
||||||
|
this can be used to pass arbitrary postfix configurations by passing the $name
|
||||||
|
to postconf to add/alter/remove options in main.cf
|
||||||
|
|
||||||
|
Parameters:
|
||||||
|
- *name*: name of the parameter.
|
||||||
|
- *ensure*: present/absent. defaults to present.
|
||||||
|
- *value*: value of the parameter.
|
||||||
|
- *nonstandard*: inform postfix::config that this parameter is not recognized
|
||||||
|
by the "postconf" command. defaults to false.
|
||||||
|
|
||||||
|
Requires:
|
||||||
|
- Class["postfix"]
|
||||||
|
|
||||||
|
Example usage:
|
||||||
|
|
||||||
|
postfix::config {
|
||||||
|
"smtp_use_tls" => "yes";
|
||||||
|
"smtp_sasl_auth_enable" => "yes";
|
||||||
|
"smtp_sasl_password_maps" => "hash:/etc/postfix/my_sasl_passwords";
|
||||||
|
"relayhost" => "[mail.example.com]:587";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
postfix::hash
|
||||||
|
=============
|
||||||
|
|
||||||
|
This can be used to create postfix hashed "map" files. It will create "${name}",
|
||||||
|
and then build "${name}.db" using the "postmap" command. The map file can then
|
||||||
|
be referred to using postfix::config.
|
||||||
|
|
||||||
|
Parameters:
|
||||||
|
- *name*: the name of the map file.
|
||||||
|
- *ensure*: present/absent, defaults to present.
|
||||||
|
- *source*: file source.
|
||||||
|
|
||||||
|
Requires:
|
||||||
|
- Class["postfix"]
|
||||||
|
|
||||||
|
Example usage:
|
||||||
|
|
||||||
|
postfix::hash { "/etc/postfix/virtual":
|
||||||
|
ensure => present,
|
||||||
|
}
|
||||||
|
postfix::config { "virtual_alias_maps":
|
||||||
|
value => "hash:/etc/postfix/virtual"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
postfix::virtual
|
||||||
|
================
|
||||||
|
Manages content of the /etc/postfix/virtual map
|
||||||
|
|
||||||
|
Parameters:
|
||||||
|
- *name*: name of address postfix will lookup. See virtual(8).
|
||||||
|
- *destination*: where the emails will be delivered to. See virtual(8).
|
||||||
|
- *ensure*: present/absent, defaults to present.
|
||||||
|
|
||||||
|
Requires:
|
||||||
|
- Class["postfix"]
|
||||||
|
- Postfix::Hash["/etc/postfix/virtual"]
|
||||||
|
- Postfix::Config["virtual_alias_maps"]
|
||||||
|
- common::line (from module common)
|
||||||
|
|
||||||
|
Example usage:
|
||||||
|
|
||||||
|
postfix::hash { "/etc/postfix/virtual":
|
||||||
|
ensure => present,
|
||||||
|
}
|
||||||
|
postfix::config { "virtual_alias_maps":
|
||||||
|
value => "hash:/etc/postfix/virtual"
|
||||||
|
}
|
||||||
|
postfix::virtual { "user@example.com":
|
||||||
|
ensure => present,
|
||||||
|
destination => "root",
|
||||||
|
}
|
||||||
|
|
||||||
|
postfix::mailalias
|
||||||
|
==================
|
||||||
|
Wrapper around Puppet mailalias resource, provides newaliases executable.
|
||||||
|
|
||||||
|
Parameters:
|
||||||
|
- *name*: the name of the alias.
|
||||||
|
- *ensure*: present/absent, defaults to present.
|
||||||
|
- *recipient*: recipient of the alias.
|
||||||
|
|
||||||
|
Requires:
|
||||||
|
- Class["postfix"]
|
||||||
|
|
||||||
|
Example usage:
|
||||||
|
|
||||||
|
postfix::mailalias { "postmaster":
|
||||||
|
ensure => present,
|
||||||
|
recipient => 'foo'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue