Configuring postfix¶
Authors: | Michael JasonSmith; Fabien Hespul |
---|---|
Contact: | Michael JasonSmith <mpj17@onlinegroups.net> |
Date: | 2015-06-22 |
Organization: | GroupServer.org |
Copyright: | This document is licensed under a Creative Commons Attribution-Share Alike 4.0 International License by OnlineGroups.net. |
Introduction¶
Postfix provides the email interface for GroupServer. GroupServer uses Postfix to queue email that is delivered to groups, and pass the email messages to GroupServer.
Configuration files for Postfix that are specific to GroupServer are created when GroupServer is installed. However, it is necessary to change the main Postfix configuration files for the system so Postfix will send email messages on to GroupServer. The Postfix configuration will achieve the following.
- Each group will have a unique email address.
- The Postfix configuration will work, untouched, for any and all groups once it has been set up.
- A single virtual address will respond to all emails coming in to any possible group on your site.
- When an email comes in for any group on a it is passed on to GroupServer, which then adds the message to the correct group.
There are two configuration files, created by GroupServer during
installation, that will provide what we want once they have been
integrated into the existing Postfix configuration. Both are
found in the postfix_config
directory after GroupServer has
been built.
groupserver.virtual
:- This file maps all email messages that are sent to any of
your GroupServer groups to the single
groupserver-automagic@localhost
email-address. See virtual(5) for more information. groupserver.aliases
:- This file maps the
groupserver-automagic
address to a command: piping the email to the smtp2gs script. See aliases(5) for more information.
See also
The Ubuntu Community Postfix Documentation is useful if you are new to administering Postfix.
Postfix configuration¶
Below are the steps for configuring Postfix for either Debian or Ubuntu.
Note
You will need to be the root
user to carry out most
of these tasks. Commands that need to be run as root
will be shown with #
prompt, rather than a $
.
Copy the configuration files from the GroupServer installation into the Postfix configuration directory.
# cp postfix_config/groupserver.* /etc/postfix
Change the ownership of the files to root:
# chown root.nogroup /etc/postfix/groupserver.*
If you are on a system other than Ubuntu you will need to ensure that the files are owned by the Postfix user. Running the following will display the user-name of the Postfix user.
$ /usr/sbin/postconf | grep default_privs | cut -f3 -d" "
Open the file
/etc/postfix/main.cf
in a text editor.Update the aliases.
Find the line that begins with
alias_maps
.Add the item
hash:/etc/postfix/groupserver.aliases
to the end of thealias_maps
line. Use a comma to separate the new item from any existing items. For examplealias_maps = hash:/etc/aliases,hash:/etc/postfix/groupserver.aliases
Find the line that begins with
alias_database
.Add the item
hash:/etc/postfix/groupserver.aliases
to the end of thealias_database
line. Use a comma to separate the new item from any existing items. For examplealias_database = hash:/etc/aliases,hash:/etc/postfix/groupserver.aliases
Update the virtual alias.
Find the line that begins with
virtual_alias_maps
. If no line exists add one after thealias_database
line.Add the item
hash:/etc/postfix/groupserver.virtual
to the end of thevirtual_alias_maps
line. For examplevirtual_alias_maps = hash:/etc/postfix/groupserver.virtual
Add the following to the bottom of the
main.cf
file, unless it is previously definedsmtpd_authorized_verp_clients = 127.0.0.1,localhost
Generate the Postfix hashes by running postmap and postalias:
# postmap /etc/postfix/groupserver.virtual # postalias /etc/postfix/groupserver.aliases
Restart Postfix using service:
# service postfix restart
See also
More information about the GroupServer smtp2gs command — including optional arguments, return values, and examples — is available from the smtp2gs documentation.