Created
December 20, 2011 20:05
-
-
Save cd34/1503041 to your computer and use it in GitHub Desktop.
master.cf
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Postfix master process configuration file. Each logical line | |
# describes how a Postfix daemon program should be run. | |
# | |
# A logical line starts with non-whitespace, non-comment text. | |
# Empty lines and whitespace-only lines are ignored, as are comment | |
# lines whose first non-whitespace character is a `#'. | |
# A line that starts with whitespace continues a logical line. | |
# | |
# The fields that make up each line are described below. A "-" field | |
# value requests that a default value be used for that field. | |
# | |
# Service: any name that is valid for the specified transport type | |
# (the next field). With INET transports, a service is specified as | |
# host:port. The host part (and colon) may be omitted. Either host | |
# or port may be given in symbolic form or in numeric form. Examples | |
# for the SMTP server: localhost:smtp receives mail via the loopback | |
# interface only; 10025 receives mail on port 10025. | |
# | |
# Transport type: "inet" for Internet sockets, "unix" for UNIX-domain | |
# sockets, "fifo" for named pipes. | |
# | |
# Private: whether or not access is restricted to the mail system. | |
# Default is private service. Internet (inet) sockets can't be private. | |
# | |
# Unprivileged: whether the service runs with root privileges or as | |
# the owner of the Postfix system (the owner name is controlled by the | |
# mail_owner configuration variable in the main.cf file). Only the | |
# pipe, virtual and local delivery daemons require privileges. | |
# | |
# Chroot: whether or not the service runs chrooted to the mail queue | |
# directory (pathname is controlled by the queue_directory configuration | |
# variable in the main.cf file). Presently, all Postfix daemons can run | |
# chrooted, except for the pipe, virtual and local delivery daemons. | |
# The proxymap server can run chrooted, but doing so defeats most of | |
# the purpose of having that service in the first place. | |
# The files in the examples/chroot-setup subdirectory describe how | |
# to set up a Postfix chroot environment for your type of machine. | |
# | |
# Wakeup time: automatically wake up the named service after the | |
# specified number of seconds. A ? at the end of the wakeup time | |
# field requests that wake up events be sent only to services that | |
# are actually being used. Specify 0 for no wakeup. Presently, only | |
# the pickup, queue manager and flush daemons need a wakeup timer. | |
# | |
# Max procs: the maximum number of processes that may execute this | |
# service simultaneously. Default is to use a globally configurable | |
# limit (the default_process_limit configuration parameter in main.cf). | |
# Specify 0 for no process count limit. | |
# | |
# Command + args: the command to be executed. The command name is | |
# relative to the Postfix program directory (pathname is controlled by | |
# the daemon_directory configuration variable). Adding one or more | |
# -v options turns on verbose logging for that service; adding a -D | |
# option enables symbolic debugging (see the debugger_command variable | |
# in the main.cf configuration file). See individual command man pages | |
# for specific command-line options, if any. | |
# | |
# General main.cf options can be overridden for specific services. | |
# To override one or more main.cf options, specify them as arguments | |
# below, preceding each option by "-o". There must be no whitespace | |
# in the option itself (separate multiple values for an option by | |
# commas). | |
# | |
# In order to use the "uucp" message tranport below, set up entries | |
# in the transport table. | |
# | |
# In order to use the "cyrus" message transport below, configure it | |
# in main.cf as the mailbox_transport. | |
# | |
# SPECIFY ONLY PROGRAMS THAT ARE WRITTEN TO RUN AS POSTFIX DAEMONS. | |
# ALL DAEMONS SPECIFIED HERE MUST SPEAK A POSTFIX-INTERNAL PROTOCOL. | |
# | |
# DO NOT SHARE THE POSTFIX QUEUE BETWEEN MULTIPLE POSTFIX INSTANCES. | |
# | |
# ========================================================================== | |
# service type private unpriv chroot wakeup maxproc command + args | |
# (yes) (yes) (yes) (never) (100) | |
# ========================================================================== | |
smtp inet n - - - 40 smtpd | |
# -o content_filter=lmtp-amavis:[127.0.0.1]:10024 | |
#submission inet n - - - - smtpd | |
# -o smtpd_etrn_restrictions=reject | |
#628 inet n - - - - qmqpd | |
pickup fifo n - - 60 1 pickup | |
cleanup unix n - - - 0 cleanup | |
qmgr fifo n - - 300 1 qmgr | |
#qmgr fifo n - - 300 1 oqmgr | |
rewrite unix - - - - - trivial-rewrite | |
bounce unix - - - - 0 bounce | |
defer unix - - - - 0 bounce | |
trace unix - - - - 0 bounce | |
verify unix - - - - 1 verify | |
flush unix n - - 1000? 0 flush | |
proxymap unix - - n - - proxymap | |
smtp unix - - - - - smtp | |
relay unix - - - - - smtp | |
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 | |
showq unix n - - - - showq | |
error unix - - - - - error | |
local unix - n n - - local | |
virtual unix - n n - - virtual | |
lmtp unix - - n - - lmtp | |
anvil unix - - n - 1 anvil | |
# | |
# Interfaces to non-Postfix software. Be sure to examine the manual | |
# pages of the non-Postfix software to find out what options it wants. | |
# | |
# maildrop. See the Postfix MAILDROP_README file for details. | |
# | |
maildrop unix - n n - - pipe | |
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient} | |
# | |
# The Cyrus deliver program has changed incompatibly, multiple times. | |
cyrus unix - n n - - pipe | |
flags=R user=cyrus argv=/usr/sbin/cyrdeliver -e -m "${extension}" ${user} | |
#CYRUS## Cyrus 2.1.5 (Amos Gouaux) | |
#CYRUS## Also specify in main.cf: cyrus_destination_recipient_limit=1 | |
#CYRUS#cyrus unix - n n - - pipe | |
#CYRUS# user=cyrus argv=/usr/sbin/deliver -e -r ${sender} -m ${extension} ${user} | |
uucp unix - n n - - pipe | |
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) | |
ifmail unix - n n - - pipe | |
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) | |
bsmtp unix - n n - - pipe | |
flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -d -t$nexthop -f$sender $recipient | |
scalemail-backend unix - n n - 2 pipe | |
flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} | |
# only used by postfix-tls | |
#tlsmgr fifo - - n 300 1 tlsmgr | |
smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes | |
#587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes | |
# Amavis | |
lmtp-amavis unix - - n - 10 lmtp | |
-o smtp_data_done_timeout=1200 | |
# -o content_filter=filter: | |
127.0.0.1:10025 inet n - n - - smtpd | |
-o content_filter=dspam:dummy | |
-o local_recipient_maps= | |
-o relay_recipient_maps= | |
-o smtpd_restriction_classes= | |
-o smtpd_client_restrictions= | |
-o smtpd_helo_restrictions= | |
-o smtpd_sender_restrictions= | |
-o smtpd_recipient_restrictions=permit_mynetworks,reject | |
-o mynetworks=127.0.0.0/8 | |
-o strict_rfc821_envelopes=yes | |
-o smtpd_error_sleep_time=0 | |
-o smtpd_soft_error_limit=1001 | |
-o smtpd_hard_error_limit=1000 | |
dspam unix - n n - - pipe | |
flags=Rhqu user=dspam argv=/usr/local/bin/dspam --deliver=spam,innocent --feature=chained,noise --mode=tum --user ${recipient} -- %u | |
dspam-spam unix - n n - - pipe | |
flags=Rhqu user=dspam argv=/usr/local/bin/dspam --class=spam --source=error --mode=teft --user ${sender} | |
dspam-ham unix - n n - - pipe | |
flags=Rhqu user=dspam argv=/usr/local/bin/dspam --class=innocent --source=error --mode=teft --user ${sender} | |
tlsmgr unix - - - 1000? 1 tlsmgr | |
scache unix - - - - 1 scache | |
discard unix - - - - - discard | |
retry unix - - - - - error |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment