On 09/27/01 04:11 PM, Tarjei Huse sat at the `puter and typed:
> Now that all is working well, would you mind making a brief sumary to what is
> needed (deliverymethods, account ACL's etc. ) to make plussed users work? 
> 
> I'd like to add it to the faq.
> 
> Tarjei

Ok, for starters, I'd say be VERY careful about the difference between
'all' and 'anyone'.  You want to use 'anyone p' for the acl to any
folder you want to be able to recieve mail via plussed users :|

If you are using procmail like me, the following bait & switch trick
works for sendmail to deliver to procmail - add this to sendmail.mc:

I have never bothered to try the default sendmail->procmail delivery,
but it may work fine.

Note that the last section (LOCAL_RULE_0) uses tabs, spaces would
break it.
##################################################################
define(`confDEF_USER_ID',``cyrus:mail'')

define(`CYRUS_MAILER_FLAGS',`SA5@|:/w')
define(`CYRUS_MAILER_PATH',`/usr/local/bin/procmail')
define(`CYRUS_MAILER_USER',`cyrus:mail')

define(`CYRUS_MAILER_ARGS',`procmail -Y -m /etc/procmailrc $u $h')
define(`CYRUS_MAILER_MAX',`eval(5*1024*1024)')

define(`CYRUS_BB_MAILER_FLAGS',`S')
define(`CYRUS_BB_MAILER_ARGS',`procmail -Y -m /usr/local/procmail/procmailrc $u $h')

define(`confLOCAL_MAILER',`cyrus')

MAILER(`local')
MAILER(`smtp')
MAILER(`cyrus')

LOCAL_RULE_0
R$=N                    $: $#local $: $1
R$=N < @ $=w . >        $: $#local $: $1
Rbb + $+ < @ $=w . >    $#cyrusbb $: $1
##################################################################

Now, procmail must be able to deliver mail to cyrus via deliver.  To
that end, your /etc/procmailrc file should look something like this:
##################################################################
LOGNAME = $1     # Passed by sendmail - the mail account
FOLDER = $2   # The folder given in the userid+folder address.
PATH=$1/bin:/usr/bin:/bin:/usr/local/bin:.
SHELL=/bin/sh
MAILDIR=/usr/cyrus   # This may be wrong on your system.
LOGFILE=$HOME/.procmail.log
DEFAULT=$HOME/
VERBOSE=no

# Place any antispam or other universal filters here.  Don't
# write to files or pipe to programs unless you are ABSOLUTELY
# SURE you know what you are doing!

# this enables automated procmail recipe creation for users;
# roll your own tool to allow creation of procmail recipes on a
# per-user basis and place them there, but don't let users edit
# their own recipes.  These recipes should only change the value of 
# FOLDER or redirect messages to /dev/null, and should not
# call deliver.
INCLUDERC=/home/$1/.procmailrc

# Put your own global recipes here.  If you match a recipe
# designed to redirect mail, you can do it by simply modifying
# $FOLDER.  IE, if you are blocking mail from certain locations
# simply set FOLDER to trash, or redirect it to another user
# by changing the value of LOGNAME.

# My own recipe for adding a Lines: header.
:0 Bfhw
* H ?? !^Lines:
*  1^1 ^.*$
* -1^0 ($)($)^^
| /usr/bin/formail -Y -f -A "Lines: $="

:0 w
* FOLDER ?? .
| /usr/cyrus/bin/deliver -q -m "$FOLDER" -- "$LOGNAME"

# Only if there was no folder do we try this
:0 wE
| /usr/cyrus/bin/deliver -q -- "$LOGNAME"

# Whichever one we tried, failed
EXITCODE = $?
HOST       # This is correct.  Do not modify this line.
##################################################################

Remember that deliver is an interface to lmtp, If you want to use
procmail, lmtp has to be bypassed at this point.  If procmail ever
develops an lmtp interface in the future, then this may change.

You must correct the paths to procmail, procmailrc, and the
userid:group as befits your system.  For suitable recipes, syntax,
etc. for procmail, see the procmail documentation or join the
procmail-users list.

If you do not intend to use procmail, use the cyrus2.m4 file
distributed with Cyrus 2.x.  Correct paths, user:group as described
above, and it should work without a hitch.

Keep in mind that sendmail configuration is NOT trivial.  You will
have to read docs.  Start with the /usr/lib/sendmail-cf/README file
(for the typical RH install - .../sendmail/README on others.  It is
a very large file, so read it with an editor that can do searches for
text (like vi).

###
I realize this may require some 'boiling down', so take your liberties
as you see fit.

My only consolation for the ridiculous error I made earlier, is that
this may actually help someone.  Check your ACLs VERY carefully!

Lou
-- 
Louis LeBlanc       [EMAIL PROTECTED]
Fully Funded Hobbyist, KeySlapper Extrordinaire :)
http://acadia.ne.mediaone.net                 ԿԬ

Johnson's law:
  Systems resemble the organizations that create them.

Reply via email to