Cyrus - Transport mittels Procmail funktioniert nicht

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
niemandwichtiges
Posts: 25
Joined: 2006-11-17 17:14

Cyrus - Transport mittels Procmail funktioniert nicht

Post by niemandwichtiges » 2006-11-17 17:26

Hallo,

ich bin gerade dabei, mir einen Mailserver mittels Postfix und Cyrus aufzubauen.

Wenn ich als mailbox_delivery = cyrus angebe, funktioniert der Transport in die IMAP Postfächer.
Da ich den Transport aber gern über procmail abwickeln würde, habe ich also als mailbox_delivery = procmail angegeben.

In der master.cf ist die Procmail instanz korrekt eingetragen:

Code: Select all

procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
Wenn nun jedoch Mails eingehen, bekomme ich folgende Meldung in den Logs:

Code: Select all

postfix/pipe[31323]: 7A24341036: to=<web1p1@XXXX>, orig_to=<web1p1@XXX.de>, relay=procmail, delay=0, status=deferred (temporary failure. Command output: couldn't connect to lmtpd: Permission denied_ procmail: Programm failure (75) of "/usr/lib/cyrus/bin/deliver")
Kann mir vielleicht jemand sagen was hier schief läuft ?
Sowohl procmail als auch /usr/lib/cyrus/bin/lmtpd gehören root:root

Müssten die Besitzer evtl. root:mail sein ?[/code]

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by Roger Wilco » 2006-11-17 18:42

Zeig deine procmailrc und deine Cyrus Konfiguration.

niemandwichtiges
Posts: 25
Joined: 2006-11-17 17:14

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by niemandwichtiges » 2006-11-17 19:06

procmailrc:

Code: Select all

#OPPRIVS=yes
#LOGFILE=/var/log/procmail
VERBOSE=Off

# Mailbox-Zustellung
DELIVERMAIL="/usr/lib/cyrus/bin/deliver"
INBOX="$DELIVERMAIL -e -a $USER -q -m user.$USER"

# --- From-Zeile löschen, ---
# --- sonst funktioniert deliver nicht !! ---
:0fw
| formail -f -I "From "

# --- Spam Test ---
:0fw
* < 256000
| /usr/bin/spamc -f

# --- an INBOX zustellen ---
:0w
| $INBOX

# --- und Schluss ---
:0w
{
EXITCODE=$?
HOST
}
/etc/cyrus.conf:

Code: Select all

# standard standalone server implementation

START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"
  mboxlist      cmd="ctl_cyrusdb -r"
  deliver       cmd="ctl_deliver -r"
  # this is only necessary if using idled for IMAP IDLE
#  idled                cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/socket
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="imap" prefork=1
#  imaps                cmd="imapd -s" listen="imaps" prefork=0
  pop3          cmd="pop3d" listen="pop3" prefork=1
#  pop3s                cmd="pop3d -s" listen="pop3s" prefork=0
  sieve         cmd="timsieved" listen="sieve" prefork=0

  # at least one LMTP is required for delivery
#  lmtp         cmd="lmtpd" listen="lmtp" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=0

  # this is only necessary if using notifications
#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1
}

EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30

  # this is only necessary if using duplicate delivery suppression
  delprune      cmd="ctl_deliver -E 3" period=1440


  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" period=1440

  # Uncomment the next entry, if you want to automatically remove
  # old messages of EVERY user.
  # This example calls ipurge every 60 minutes and ipurge will delete
  # ALL messages older then 30 days.
  # enter 'man 8 ipurge' for more details

  # cleanup      cmd="ipurge -d 30 -f" period=60


Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by Roger Wilco » 2006-11-17 19:11

Mach aus "lmtpd" ein "lmtpd -a" bei dem Dienst lmtpunix in der cyrus.conf und starte den Cyrus IMAPd danach neu.

niemandwichtiges
Posts: 25
Joined: 2006-11-17 17:14

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by niemandwichtiges » 2006-11-17 19:31

Hat leider nichts gebracht. Noch immer permission denied.

flo
RSAC
Posts: 2297
Joined: 2002-07-28 13:02
Location: Berlin

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by flo » 2006-11-17 21:23

Code: Select all

procmail  unix   -       n       n       -       -       pipe
  flags=R user=cyrus argv=/usr/bin/procmail -t - m USER=${user} EXTENSION=${extension} /etc/procmail/procmailrc
(pfade natürlich anpassen)

das sollte schon als Cyrus laufen - der Rest war auch noch für irgendetwas gut, aber ich bin wieder auf cyrus als backend zurück, um sieve nutzen zu können.

Deine Deliver-Parameter unterscheiden sich auch noch - kann es sein, daß das ein 1er Cyrus ist?

flo.

niemandwichtiges
Posts: 25
Joined: 2006-11-17 17:14

Re: Cyrus - Transport mittels Procmail funktioniert nicht

Post by niemandwichtiges » 2006-11-18 11:45

aaah das war das problem ! procmail wurde nicht als user cyrus aufgerufen.

vielen herzlichen dank ! :-D