Provided by: masqmail_0.2.21-7.1_i386 bug

NAME

       masqmail.conf - masqmail configuration file

DESCRIPTION

       This  man  page  describes the syntax of the main configuration file of
       masqmail. Its usual location is /etc/masqmail/masqmail.conf

       The configuration consists of lines of the form

       val = expression

       Where val is a variable name and expression  a  string,  which  can  be
       quoted  with  ’"’.  If  the expression is on multiple lines or contains
       characters other than letters, digits or the characters ’.’, ’-’,  ’_’,
       ’/’,  it  must  be quoted. You can use quotes inside quotes by escaping
       them with a backslash.

       Each val has a type, which can be boolean, numeric, string or  list.  A
       boolean  variable  can  be  set with one of the values ’on’, ’yes’, and
       ’true’ or ’off’, ’no’ and ’false’. List items are separated  with  ’;’.
       For  some values patterns (like ’*’,’?’) can be used. The spaces before
       and after the ’=’ are optional.

       Most  lists  (exceptions:   local_hosts,local_nets,   listen_addresses,
       online_routes  and  online_gets) accept files. These will be recognized
       by a leading slash ’/’. The contents of these files will be included at
       the position of the file name, there can be items or other files before
       and after the file entry. The format of the files is different  though,
       within these files each entry is on another line. (And not separated by
       semicolons). This makes it easy to include large lists which are common
       in  different  configuration  files,  so  they do not have to appear in
       every configuration file.

       Blank lines and lines starting with ’#’ are ignored.

OPTIONS

       run_as_user = boolean

              If this is set, masqmail runs with the user id of the  user  who
              invoked  it and never changes it. This is for debugging purposes
              only. If the user is not root, masqmail  will  not  be  able  to
              listen  on  a  port < 1024 and will not be able to deliver local
              mail to others than the user.

       use_syslog = boolean

              If this is set, masqmail  uses  syslogd  for  logging.  It  uses
              facility MAIL. You still have to set log_dir for debug files.

       debug_level = n

              Set  the  debug  level.  Valid  values are 0 to 6, increasing it
              further makes no difference. Be careful if you set this as  high
              as 5 or higher, the logs may very soon fill your hard drive.

       mail_dir = file

              The    directory   where   local   mail   is   stored,   usually
              /var/spool/mail or /var/mail.

       spool_dir = file

              The directory where masqmail stores its spool files  (and  later
              also  other  stuff). It must have a subdirectory input. Masqmail
              needs read and write permissions for this directory.  I  suggest
              to use /var/spool/masqmail.

       host_name = string

              This  is used in different places: Masqmail identifies itself in
              the greeting banner on incoming connections and in the HELO/EHLO
              command  for  outgoing connections with this name, it is used in
              the Received: header and to qualify  the  sender  of  a  locally
              originating message.

              If  the string begins with a slash ’/’, it it assumed that it is
              a filename, and the first  line  of  this  file  will  be  used.
              Usually this will be ’/etc/mailname’ to make masqmail conform to
              Debian policies.

              It is not  used  to  find  whether  an  address  is  local.  Use
              local_hosts for that.

       remote_port = n

              The remote port number to be used. This defaults to port 25.

              This   option   is   deprecated.  Use  host_name  in  the  route
              configuration instead. See masqmail.route (5).

       local_hosts = list

              A semicolon ’;’ separated list of hostnames which are considered
              local.  Normally  you  set  it to "localhost;foo;foo.bar.com" if
              your host has the fully qualified domain name ’foo.bar.com’.

       local_nets = list

              A semicolon ’;’ separated list of hostnames  which  are  on  the
              ’local’  net.  Delivery to these hosts is attempted immediately.
              You can use patterns with ’*’, eg. "*.bar.com".

       local_addresses = list

              A  semicolon  ’;’  separated  list  of  fully  qualified  email-
              addresses  which are considered local although their domain name
              part is not in the list of local_hosts.

              For  example:  There  are  two  people  working  at  your   LAN:
              person1@yourdomain  and  person2@yourdomain. But there are other
              persons @yourdomain which are NOT local.  So  you  can  not  put
              yourdomain  to  the list of local_hosts. If person1 now wants to
              write to person2@yourdomain and this mail should not  leave  the
              LAN then you can put

              local_addresses = "person1@yourdomain;person2@yourdomain"

              to your masqmail.conf.

       not_local_addresses = list

              A  semicolon  ’;’  separated  list  of  fully  qualified  email-
              addresses which are considered not local although  their  domain
              name part is in the list of local_hosts.

              This  is  the  opposite  of  the  previous case. The majority of
              addresses of a specific domain are local.  But  some  users  are
              not. With this option you can easily exclude these users.

              Example:

              local_hosts = "localhost;myhost;mydomain.net"

              not_local_addresses = "eric@mydomain.net"

       listen_addresses = list

              A   semicolon   ’;’   separated  list  of  interfaces  on  which
              connections will be accepted. An  interface  ist  defined  by  a
              hostname,  optionally  followed  by a colon ’:’ and a number for
              the port. If this is left out, port 25 will be used.

              You can set this to "localhost:25;foo:25" if  your  hostname  is
              ’foo’.

              Note  that  the  names are resolved to IP addreses. If your host
              has different names which resolve to the same IP, use  only  one
              of them, otherwise you will get an error message.

       do_save_envelope_to = boolean

              If  this is set to true, a possibly existing Envelope-to: header
              in an incoming mail which is received via either  pop3  or  smtp
              will be saved as an X-Orig-Envelope-to: header.

              This  is  useful  if  you  retrieve mail from a pop3 server with
              either masqmail or fetchmail, and the server supports  Envelope-
              to:  headers,  and  you  want  to  make use of those with a mail
              filtering tool, eg. procmail. It  cannot  be  preserved  because
              masqmail sets such a header by itself.

              Default is false.

       do_relay = boolean

              If  this  is  set  to false, mail with a return path that is not
              local and a destination that is  also  not  local  will  not  be
              accepted  via  smtp  and  a  550 reply will be given. Default is
              true.

              Note that this will not protect you  from  spammers  using  open
              relays, but from users unable to set their address in their mail
              clients.

       do_queue = boolean

              If this is set, mail will  not  be  delivered  immediately  when
              accepted. Same as calling masqmail with the -odq option.

       online_routes.name = list

              Replace name with a name to identify a connection. Set this to a
              filename  (or  a  list  of  filenames)  for  the  special  route
              configuration  for  that  connection.  You will use that name to
              call masqmail with the -qo option every  time  a  connection  to
              your ISP is set up.

              Example:  Your  ISP  has  the  name  FastNet. Then you write the
              following line in the main configuration:

              online_routes.FastNet = "/etc/masqmail/fastnet.route"

              /etc/masqmail/fastnet.route is the route configuration file, see
              masqmail.route  (5).  As  soon as a link to FastNet has been set
              up, you call masqmail -qo FastNet. Masqmail will then  read  the
              specified file and send the mails.

       connect_route.name = list

              Old name for online_routes.

       local_net_route = file

              This  is  similar  to  online_routes.name but for the local net.
              Recipient addresses that are in local_nets will be routed  using
              this  route  configuration.  Main  purpose  is  to define a mail
              server  with  mail_host  in  your  local  network.   In   simple
              environments  this  can be left unset. If unset, a default route
              configuration will be used.

       alias_file = file

              Set this to the location  of  your  alias  file.  If  unset,  no
              aliasing will be done.

       alias_local_caseless = boolean

              If  this  is  set, local parts in the alias file will be matched
              disregarding upper/lower case.

       pipe_fromline = boolean

              If this is set, a from line will  be  prepended  to  the  output
              stream  whenever  a  pipe  command  is  called  after  an  alias
              expansion. Default is false.

       pipe_fromhack = boolean

              If this is set, each line beginning with  ’From  ’  is  replaced
              with  ’>From  ’ whenever a pipe command is called after an alias
              expansion. You probably want this if you have set  pipe_fromline
              above. Default is false.

       mbox_default = string

              The  default  local  delivery method. Can be one of mbox, mda or
              maildir (the latter  only  if  maildir  support  is  enabled  at
              compile  time).  Default is mbox. You can override this for each
              user by using the mbox_users, mda_users or maildir_users options
              (see below).

       mbox_users = list

              A  list  of  users  which  wish  delivery  to an mbox style mail
              folder.

       mda_users = list

              A list of users which wish local delivery to an mda. You have to
              set mda (see below) as well.

       maildir_users = list

              A  list  of  users which wish delivery to a qmail style maildir.
              The path to maildir is ~/Maildir/. The maildir will  be  created
              if it does not exist.

       mda = expand string

              If  you  want  local  delivery to be transferred to an mda (Mail
              Delivery Agent), set this to a command.  The  argument  will  be
              expanded  on delivery time, you can use variables beginning with
              a ’$’ sign, optionally enclosed in curly braces.  Variables  you
              can use are:

              uid  -  the unique message id. This is not necessarily identical
              with the Message ID as given in the Message ID: header.

              received_host - the host the mail was received from

              ident - the ident, this is either the  ident  delivered  by  the
              ident  protocol  or the user id of the sender if the message was
              received locally.

              return_path_local - the local part of the return path  (sender).

              return_path_domain   -  the  domain  part  of  the  return  path
              (sender).

              return_path - the complete return path (sender).

              rcpt_local - the local part of the recipient.

              rcpt_domain - the domain part of the recipient.

              rcpt - the complete recipient address.

              Example:

              mda="/usr/bin/procmail -Y -d ${rcpt_local}"

              For the mda, as for pipe commands, a few  environment  variables
              will  be  set  as  well.  See  masqmail  (8). To use environment
              variables for the mda, the ’$’ sign has to  be  escaped  with  a
              backslash,  otherwise they will be tried to be expanded with the
              internal variables.

       mda_fromline = boolean

              If this is set, a from line will  be  prepended  to  the  output
              stream  whenever  a  message  is delivered to an mda. Default is
              false.

       mda_fromhack = boolean

              If this is set, each line beginning with  ’From  ’  is  replaced
              with  ’>From  ’  whenever  a message is delivered to an mda. You
              probably want this if you have set mda_fromline  above.  Default
              is false.

       online_detect = string

              Defines  the  method  MasqMail  uses  to detect whether there is
              currently an online connection. It can  have  the  values  file,
              pipe or mserver.

              When  it is set to file, MasqMail first checks for the existence
              of online_file (see below) and if it exists, it  reads  it.  The
              content of the file should be the name of the current connection
              as defined with connect_route.name (without a  trailing  newline
              character).

              When  it  is set to pipe, MasqMail calls the executable given by
              the online_pipe option (see below) and reads the current  online
              status from its standard output.

              When  it  is set to mserver, MasqMail connects to the masqdialer
              server using the value of mserver_iface and asks  it  whether  a
              connection  exists and for the name, which should be the name of
              the current connection as defined with connect_route.name.

              No matter how MasqMail detects the online status, only  messages
              that  are  accepted  at  online time will be delivered using the
              connection. The spool still has  to  be  emptied  with  masqmail
              -qoconnection.

       online_file = file

              This  is  the  name  of  the  file  checked  for  when  MasqMail
              determines whether it is online. The file should only exist when
              there  is currently a connection. Create it in your ip-up script
              with eg.

              echo -n <name> > /tmp/connect_route

              chmod 0644 /tmp/connect_route

              Do not forget to delete it in your ip-down script.

       online_pipe = file

              This is the name of the  executable  which  will  be  called  to
              determine  the  online status. This executable should just print
              the name oif the current connection to the standard  output  and
              return a zero status code. masqmail assumes it is offline if the
              script returns with a non zero status. Simple example:

              #!/bin/sh

              [ -e /tmp/connect_route ] || exit 1

              cat /tmp/connect_route

              exit 0

              Of course, instead of the example above you could  as  well  use
              file  as  the  online detection method, but you can do something
              more sophisticated.

       mserver_iface = interface

              The interface the masqdialer server  is  listening  to.  Usually
              this  will  be "localhost:224" if mserver is running on the same
              host as masqmail. But  using  this  option,  you  can  also  let
              masqmail run on another host by setting mserver_iface to another
              hostname, eg. "foo:224".

       get.name = file

              Replace name with a name to identify a  get  configuration.  Set
              this  to  a filename for the get configuration. These files will
              be used to retrieve mail when called with the -g option.

       online_gets.name = list

              Replace name with a name to identify  an  online  configuration.
              Set  this  to  a  filename  (or a list of filenames) for the get
              configuration. These files will be used to  retrieve  mail  when
              called with the -go option.

       ident_trusted_nets = list

              list   is  a  list  of  networks  of  the  form  a.b.c.d/e  (eg.
              192.168.1.0/24),  from  which  the  ident  given  by  the  ident
              protocol will be trusted, so a user can delete his mail from the
              queue if the ident is identical to his login name.

       errmsg_file = file

              Set this to a template which will be used to  generate  delivery
              failure reports. Variable parts within the template begin with a
              dollar sign and are identical to those  which  can  be  used  as
              arguments  for  the  mda  command,  see  mda  above.  Additional
              information can be included with @failed_rcpts, @msg_headers and
              @msg_body,  these must be at the beginning of a line and will be
              replaced with the list of the  failed  recipients,  the  message
              headers and the message body of the failed message.

              Default is /usr/share/masqmail/tpl/failmsg.tpl.

       warnmsg_file = file

              Set  this  to a template which will be used to generate delivery
              warning reports. It uses the same mechanisms  for  variables  as
              errmsg_file, see above.

              Default is /usr/share/masqmail/tpl/warnmsg.tpl.

       warn_intervals = list

              Set this to a list of time intervals, at which delivery warnings
              (starting with the receiving  time  of  the  message)  shall  be
              generated.

              A  warning  will  only  be  generated  just  after an attempt to
              deliver the mail and if that attempt failed  temporarily.  So  a
              warning  may  be  generated after a longer time, if there was no
              attempt before.

              Default is "1h;4h;8h;1d;2d;3d"

       max_defer_time = time

              This is the maximum time, in which  a  temporarily  failed  mail
              will  be  kept in the spool. When this time is exceeded, it will
              be handled as a  delivery  failure,  and  the  message  will  be
              bounced.

              The  excedence  of this time will only be noticed if the message
              was actually tried to be delivered. If, for example, the message
              can  only be delivered when online, but you have not been online
              for that time, no bounce will be generated.

              Default is 4d (4 days)

       log_user = name

              Replace name with a valid local or remote mail address.

              If this option is not empty, then a copy  of  every  mail,  that
              passes trough the masqmail system will also be sent to the given
              mail address.

              For example  you  can  feed  your  mails  into  a  program  like
              hypermail  for  archiving purpose by placing an appropriate pipe
              command in masqmail.alias

AUTHOR

       masqmail was written by Oliver Kurth <oku@masqmail.cx>

       You    will    find    the    newest    version    of    masqmail    at
       http://masqmail.cx/masqmail/    or   search   for   it   in   freshmeat
       (http://www.freshmeat.net). There is also a mailing list, you will find
       information about it at masqmails main site.

BUGS

       You should report them to the mailing list.

SEE ALSO

       masqmail (8), masqmail.route (5), masqmail.get (5)

COMMENTS

       This man page was written using xml2man (1) by the same author.