Re: [Exim] Exim and Majordomo

Top Page
Delete this message
Reply to this message
Author: Gordon McKee
Date:  
To: exim-users
Subject: Re: [Exim] Exim and Majordomo
Hi

Here is my exim config file. I have got majordomo as a trusted user.

I have looked at the FAQ example but I need to get it working for multiple
domains names.

Gordon

######################################################################
#                  Runtime configuration file for Exim               #
######################################################################



# This is a default configuration file which will operate correctly in
# uncomplicated installations. Please see the manual for a complete list
# of all the runtime configuration options that can be included in a
# configuration file. There are many more than are mentioned here. The
# manual is in the file doc/spec.txt in the Exim distribution as a plain
# ASCII file. Other formats (PostScript, Texinfo, HTML, PDF) are available
# from the Exim ftp sites. The manual is also online via the Exim web sites.


# This file is divided into several parts, all but the last of which are
# terminated by a line containing the word "end". The parts must appear
# in the correct order, and all must be present (even if some of them are
# in fact empty). Blank lines, and lines starting with # are ignored.



######################################################################
#                    MAIN CONFIGURATION SETTINGS                     #
######################################################################
#extract_addresses_remove_arguments = false
# Specify your host's canonical name here. This should normally be the fully
# qualified "official" name of your host. If this option is not set, the
# uname() function is called to obtain the name.


primary_hostname = gdmckee.local


# Specify the domain you want to be added to all unqualified addresses
# here. An unqualified address is one that does not contain an "@" character
# followed by a domain. For example, "caesar@???" is a fully qualified
# address, but the string "caesar" (i.e. just a login name) is an
unqualified
# email address. Unqualified addresses are accepted only from local callers
by
# default. See the receiver_unqualified_{hosts,nets} options if you want
# to permit unqualified addresses from remote sources. If this option is
# not set, the primary_hostname value is used for qualification.

qualify_domain = gdmckee.com


# If you want unqualified recipient addresses to be qualified with a
different
# domain to unqualified sender addresses, specify the recipient domain here.
# If this option is not set, the qualify_domain value is used.

# qualify_recipient =


# Specify your local domains as a colon-separated list here. If this option
# is not set (i.e. not mentioned in the configuration file), the
# qualify_recipient value is used as the only local domain. If you do not
want
# to do any local deliveries, uncomment the following line, but do not
supply
# any data for it. This sets local_domains to an empty string, which is not
# the same as not mentioning it at all. An empty string specifies that there
# are no local domains; not setting it at all causes the default value (the
# setting of qualify_recipient) to be used.

local_domains = dbm;/usr/local/etc/exim/domains.db
#local_domains = local : localhost : gdmckee.co.uk : gdmckee.com :
gdmckee.local
: birminghamcitadel.org : birminghamcitadel.org.uk :
harlequin-recording.co.uk


# If you want to accept mail addressed to your host's literal IP address,
for
# example, mail addressed to "user@???", then uncomment the
# following line, or supply the literal domain(s) as part of "local_domains"
# above.

local_domains_include_host_literals


# No local deliveries will ever be run under the uids of these users (a
colon-
# separated list). An attempt to do so gets changed so that it runs under
the
# uid of "nobody" instead. This is a paranoic safety catch. Note the default
# setting means you cannot deliver mail addressed to root as if it were a
# normal user. This isn't usually a problem, as most sites have an alias for
# root that redirects such mail to a human administrator.

exim_user = root
exim_group = mail
never_users = root
trusted_users = nobody : majordom

# The use of your host as a mail relay by any host, including the local host
# calling its own SMTP port, is locked out by default. If you want to permit
# relaying from the local host, you should set
#
# host_accept_relay = localhost
#
# If you want to permit relaying through your host from certain hosts or IP
# networks, you need to set the option appropriately, for example
#
# host_accept_relay = my.friends.host : 131.111.0.0/16
#
# If you are an MX backup or gateway of some kind for some domains, you must
# set relay_domains to match those domains. This will allow any host to
# relay through your host to those domains.
#
# See the section of the manual entitled "Control of relaying" for more
# information.

host_accept_relay = 127.0.0.1/32 : 192.168.0.0/24
#host_accept_relay = "127.0.0.1/32"


# The setting below causes Exim to do a reverse DNS lookup on all incoming
# IP calls, in order to get the true host name. If you feel this is too
# expensive, you can specify the networks for which a lookup is done, or
# remove the setting entirely.

#host_lookup = 0.0.0.0/0


# By default, Exim expects all envelope addresses to be fully qualified,
that
# is, they must contain both a local part and a domain. If you want to
accept
# unqualified addresses (just a local part) from certain hosts, you can
specify
# these hosts by setting one or both of
#
# receiver_unqualified_hosts =
# sender_unqualified_hosts =
#
# to control sender and receiver addresses, respectively. When this is done,
# unqualified addresses are qualified using the settings of qualify_domain
# and/or qualify_recipient (see above).


# By default, Exim does not make any checks, other than syntactic ones, on
# incoming addresses during the SMTP dialogue. This reduces delays in SMTP
# transactions, but it does mean that you might accept messages with unknown
# recipients, and/or bad senders.

# Uncomment this line if you want incoming recipient addresses to be
verified
# during the SMTP dialogue. Unknown recipients are then rejected at this
stage,
# and the generation of a failure message is the job of the sending host.

# receiver_verify

# Uncomment this line if you want incoming sender addresses (return-paths)
to
# be verified during the SMTP dialogue. Verification can normally only check
# that the domain exists.

# sender_verify

# GDM - 16/12/00 - REJECT Mail
#sender_reject = gdmckee@??? : *@webfusion.co.uk

#GDM - 20/04/01 - Reject Mail - Betrer Method
sender_reject_recipients = partial-dbm;/usr/local/etc/exim/reject_list.db

# Exim contains support for the Realtime Blocking List (RBL) that is being
# maintained as part of the DNS. See http://maps.vix.com/rbl/ for
background.
# Uncommenting the first line below will make Exim reject mail from any
# host whose IP address is blacklisted in the RBL at maps.vix.com. Some
# others have followed the RBL lead and have produced other lists: DUL is
# a list of dial-up addresses, and ORBS is a list of open relay systems. The
# second line below checks all three lists.

# rbl_domains = rbl.maps.vix.com
# rbl_domains = rbl.maps.vix.com:dul.maps.vix.com:relays.orbs.org


# If you want Exim to support the "percent hack" for all your local domains,
# uncomment the following line. This is the feature by which mail addressed
# to x%y@z (where z is one of your local domains) is locally rerouted to
# x@y and sent on. Otherwise x%y is treated as an ordinary local part.

# percent_hack_domains = *

pid_file_path = /var/run/exim%s.pid

#Added by GDM - 30/10/00 to get Exim to deliver all mail straight away
instead o
f delivering the first ten and then queuing the rest for delivery later.
smtp_accept_queue_per_connection = 0

#Added by GDM - Queue Remote Main and Deliver Local Mail
#queue_remote_domains = ! *.localhost : ! *.gdmckee.local

end



######################################################################
#                      TRANSPORTS CONFIGURATION                      #
######################################################################
#                       ORDER DOES NOT MATTER                        #
#     Only one appropriate transport is called for each delivery.    #
######################################################################


# A transport is used only when referenced from a director or a router that
# successfully handles an address.


# This transport is used for delivering messages over SMTP connections.

remote_smtp:
driver = smtp
fallback_hosts = smtp.blueyonder.co.uk

# This transport is used for local delivery to user mailboxes. By default
# it will be run under the uid and gid of the local user, and requires
# the sticky bit to be set on the /var/mail directory. Some systems use
# the alternative approach of running mail deliveries under a particular
# group instead of using the sticky bit. The commented options below show
# how this can be done.

local_delivery:
driver = appendfile
file = /var/mail/${local_part}
delivery_date_add
envelope_to_add
return_path_add
group = mail
mode = 0660
#mode = 1777


# This transport is used for handling pipe deliveries generated by alias
# or .forward files. If the pipe generates any standard output, it is
returned
# to the sender of the message as a delivery error. Set return_fail_output
# instead of return_output if you want this to happen only when the pipe
fails
# to complete normally. You can set different transports for aliases and
# forwards if you want to - see the references to address_pipe below.

address_pipe:
driver = pipe
return_output


# This transport is used for handling deliveries directly to files that are
# generated by aliassing or forwarding.

address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add


# This transport is used for handling autoreplies generated by the filtering
# option of the forwardfile director.

address_reply:
driver = autoreply

# GDM - 21/12/00 - HylaFAX Config
#fax:
# driver = pipe
# user = gdm
# command ="/usr/local/bin/faxmail -d
${local_part}@${extract{1}{.}{$domain}}"
# home_directory = /usr/bin


end



######################################################################
#                      DIRECTORS CONFIGURATION                       #
#             Specifies how local addresses are handled              #
######################################################################
#                          ORDER DOES MATTER                         #
#   A local address is passed to each in turn until it is accepted.  #
######################################################################
# GDM - 19/12/00
#forced_fail:
#  driver = aliasfile
#  senders = *@webfusion.co.uk
#  file = /usr/local/etc/exim/bouncelist
#  search_type = lsearch*


# GDM - MAJORDOMO - 02/03/01
majordomo_aliases:
driver = aliasfile
domains = lsearch;/usr/local/majordomo/lists/domain.list
file = /usr/local/majordomo/lists/${domain}-lists.aliases
search_type = lsearch*@
user = majordom
group = mail
pipe_transport = address_pipe
qualify_preserve_domain

# Local addresses are those with a domain that matches some item in the
# "local_domains" setting above, or those which are passed back from the
# routers because of a "self=local" setting (not used in this
configuration).


# This director handles aliasing using a traditional /etc/aliases file.
# If any of your aliases expand to pipes or files, you will need to set
# up a user and a group for these deliveries to run under. You can do
# this by uncommenting the "user" option below (changing the user name
# as appropriate) and adding a "group" option if necessary. Alternatively,
you
# can specify "user" on the transports that are used. Note that those
# listed below are the same as are used for .forward files; you might want
# to set up different ones for pipe and file deliveries from aliases.

system_aliases:
driver = aliasfile
file = /etc/aliases
search_type = lsearch
# file_transport = address_file
# pipe_transport = address_pipe
user = nobody


# This director handles forwarding using traditional .forward files.
# If you want it also to allow mail filtering when a forward file
# starts with the string "# Exim filter", uncomment the "filter" option.

# The no_verify setting means that this director will be skipped when
# verifying addresses if sender_verify or receiver_verify is set (though
# they are not set by default). Similarly, no_expn means that this director
# will be skipped if smtp_expn_hosts is set to allow any hosts to use the
# EXPN command.

# The check_ancestor option means that if the forward file generates an
# address that is an ancestor of the current one, the current one gets
# passed on instead. This covers the case where A is aliased to B and B
# has a .forward file pointing to A.

# The three transports specified at the end are those that are used when
# forwarding generates a direct delivery to a file, or to a pipe, or sets
# up an auto-reply, respectively.

userforward:
driver = forwardfile
file = .forward
no_verify
no_expn
check_ancestor
# filter
# file_transport = address_file
# pipe_transport = address_pipe
# reply_transport = address_reply


# This director matches local user mailboxes.

localuser:
driver = localuser
transport = local_delivery

virtual:
driver = aliasfile
domains = dbm;/usr/local/etc/exim/domains.db
no_more
file = /usr/local/etc/exim/aliases/$domain
search_type = lsearch


end



######################################################################
#                      ROUTERS CONFIGURATION                         #
#            Specifies how remote addresses are handled              #
######################################################################
#                          ORDER DOES MATTER                         #
#  A remote address is passed to each in turn until it is accepted.  #
######################################################################


# Remote addresses are those with a domain that does not match any item
# in the "local_domains" setting above.

# GDM 29/10/2000 - This Lines get aroung sendming mail the freeserve. It
gets
# relayed through BT Internet.
send_to_gateway:
driver = domainlist
transport = remote_smtp
route_list = "*.freeserve.co.uk smtp.blueyonder.co.uk byname;aol.com
smtp.blue
yonder.co.uk byname"

# This router routes to remote hosts over SMTP using a DNS lookup with
# default options.

lookuphost:
driver = lookuphost
transport = remote_smtp


# This router routes to remote hosts over SMTP by explicit IP address,
# given as a "domain literal" in the form [nnn.nnn.nnn.nnn]. The RFCs
# require this facility, which is why it is enabled by default in Exim.
# If you want to lock it out, set forbid_domain_literals in the main
# configuration section above.

literal:
driver = ipliteral
transport = remote_smtp

# GDM - 21/12/00 - HylaFAX Config
#fax:
# driver = domainlist
# transport = fax
# route_list ="*.fax"

end



######################################################################
#                      RETRY CONFIGURATION                           #
######################################################################


# This single retry rule applies to all domains and all errors. It specifies
# retries every 15 minutes for 2 hours, then increasing retry intervals,
# starting at 1 hour and increasing each time by a factor of 1.5, up to 16
# hours, then retries every 8 hours until 4 days have passed since the first
# failed delivery.

# Domain               Error       Retries
# ------               -----       -------


*                      *           F,2h,15m; G,16h,1h,1.5; F,4d,8h


end



######################################################################
#                      REWRITE CONFIGURATION                         #
######################################################################


# There are no rewriting specifications in this default configuration file.
#demo@???     gdmckee@???     E
#*@gdmckee.co.uk                *@gdmckee.com           f
*@harlequin-recording.co.uk             geoffrey.poulton@???   E
*@kursk.gdmckee.local
${lookup{$1}lsearch{/usr/local/etc/exim/gdmckee.local-r
ewrite}{$value}fail} bcfrF


# End of Exim configuration file


Gordon

-----Original Message-----
From: exim-users-admin@??? [mailto:exim-users-admin@exim.org]On
Behalf Of exim-users-request@???
Sent: 28 June 2001 12:01
To: exim-users@???
Subject: Exim-users digest, Vol 1 #1206 - 1 msg


Send Exim-users mailing list submissions to
    exim-users@???


To subscribe or unsubscribe via the World Wide Web, visit
    http://www.exim.org/mailman/listinfo/exim-users
or, via email, send a message with subject or body 'help' to
    exim-users-request@???


You can reach the person managing the list at
    exim-users-admin@???


When replying, please edit your Subject line so it is more specific
than "Re: Contents of Exim-users digest..."


Today's Topics:

1. Re: Exim and Majordomo (Julian King)

--__--__--

Message: 1
Subject: Re: [Exim] Exim and Majordomo
To: exim-users@???
Date: Thu, 28 Jun 2001 11:51:09 +0100 (BST)
From: Julian King <jpk28@???>

>
> Hi all
>
> Got majordomo and exim talking to each other quite nicely now. Got two
> problems though. When I send a message to the list to get sent out to

every
> one the replay address is the address of the client that sent the message
> not the user I have specified in the config file. Secondly, the
> authentication system seems to work but any host seems to be able to send
> out the list if they know the correct email address. I have got the
> addresses that can send to the list in a file and put that into the config
> file.


Have you set majordom to be a trusted user?

> The main purpose of the list is so that one person can Email to the list

and
> notify others of changes - like an announce list.


Have you looked at the exim FAQ and followed the example there? Certainly
noone should be able to send to the list and get around the restrictions
remotely. Although of course they can fake being from an allowed poster,
but that is a different issue.

> I have included my majordomo.cf file and my alias file along with the
> director bits I have in my exim conf file and the list conf file.


Your exim conf would probably have been more useful.

> majordomo.cf - renames to gdmckee.com.cf as it does virtual domains as

well
*shudder* I spent ages getting it right when I was playing with virtual
domains and majordomo.


Julian



--__--__--

--
## List details at http://www.exim.org/mailman/listinfo/exim-users Exim
details at http://www.exim.org/ ##


End of Exim-users Digest