Bonjour à tous,

Voila, j'ai une fc11 a jour. Et j'ai installé postfix dovecot et spamassassin. Je n'arrive pas a passer avec procmail.

Des que je met :
mailbox_command = /sbin/procmail
dans main.cf
la conf de /home/toto/.procmailrc n'est pas pris en compte.

ci joint :

main.cf
[root@toto ~]# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
mail_owner = postfix
mailbox_command = /sbin/procmail
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, toto.test,
mydomain = toto.test
myhostname = www.toto.test
mynetworks = 192.168.1.0/24, 127.0.0.0/8
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.5.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.5.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 550
master.cf
smtp    inet    n       -       n       -       -       smtpd
#smtp    inet    n       -       -       -       -       smtpd -o content_filter=spamassassin
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay     unix  -       -       n       -       -       smtp
        -o smtp_fallback_relay=
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
spamassassin    unix  -       n       n       -       -       pipe
    user=nobody argv=/usr/bin/spamc -f -e /usr/sbin/sendmail.postfix -oi -f ${sender} ${recipient}
.procmailrc dans /home/toto

pour voir sir c'est pris en compte je fais juste une redirection et cela ne fonctionne pas.
:0
! tata@domaine2.test
ai-je oublier qq chose ou est-ce mal configurer ????

Merci de m'aider ce serait sympas de votre part !

Evelyne.
Bonsoir,

réussis tu déjà à envoyer un mail avec : echo "test" | mail -s 'sujet' destinataire
et les reçois tu ?
Pour .procmailrc, je te conseille le test de boucle infinie :
MOI=vraie-adresse
*$ ^X-Loop:.*$MOI
/dev/null
:0

! tata@domaine2.test
Bonsoir proxy,

Comme tu peut le voir dans main.cf, j'ai mis mailbox_command = /sbin/procmail.

Si je met le # devant et que je fasse:

#smtp inet n - n - - smtpd
smtp inet n - - - - smtpd -o content_filter=spamassassin

dans le fichier master.cf, alors tout est ok aussi bien vers l'exterieur que l'interieur plus spamassassin ok.

Une idée ?

Evelyne
On est d'accord :
il faut laisser dans main.cf : mailbox_command = /usr/bin/procmail

et faire un fichier .procmailrc dans le home des users concernés

Je ne comprends pas ta réponse
Re Proxy,

J'ai un conf sur ma fc11 avec postfix, dovecot et spamassassin qui fonctionne tres bien.

Je souhait maintenant utiliser procmail pour fair du filtrage spam et renvoyer sur une autre BAL.

Donc j'utilise procmail dans /home/toto/.procmailrc et je le declare dans main.cf.

Mais une fois ca fait, quand j'envoie un mail, je ne le recoit pas.

comment faire ?


Merci pour ton aide proxy.

Evelyne
On est bien d'accord : /home/toto/.procmailrc est utilisé quand un mail à destination de toto arrive ?

Quand tu envoies un mail à toto, tu dois le voir dans /var/log/maillog ( status=sent (delivered to command: /usr/bin/procmail)), est ce le cas ?
Bonjour Proxy,

Oui, quand j'envoie un mail, j'ai mes logs dans /var/log/maillog

Nov 26 09:22:22 ks34635 postfix/smtpd[23833]: connect from -xxx-xxx-xxx-.mondomain.net[XX.XX.XX.XX.]
Nov 26 09:22:22 ks34635 postfix/smtpd[23833]: EC32D120FB5: client=-xxx-xxx-xxx-.mondomain.net[XX.XX.XX.XX.]
Nov 26 09:22:23 ks34635 postfix/cleanup[23836]: EC32D120FB5: message-id=<6AA0C2812B4E4A808A79DDAB1B07CAF5@xp63c6cd4a54c1>
Nov 26 09:22:23 ks34635 postfix/qmgr[6383]: EC32D120FB5: from=<toto@toto.test>, size=1422, nrcpt=1 (queue active)
Nov 26 09:22:23 ks34635 local[23838]: fatal: execvp /sbin/procmail: No such file or directory
Nov 26 09:22:23 ks34635 postfix/local[23837]: EC32D120FB5: to=<toto@toto.test>, relay=local, delay=0.32, delays=0.28/0.02/0/0.02, dsn=4.3.0, status=deferred (temporary failure. Command output: local: fatal: execvp /sbin/procmail: No such file or directory )
Nov 26 09:22:23 ks34635 postfix/smtpd[23833]: disconnect from -xxx-xxx-xxx-.mondomain.net[XX.XX.XX.XX.]

Et ca , c'est quand je fait une demande sur le serveur:

Nov 26 09:23:23 ks34635 dovecot: pop3-login: Login: user=<toto>, method=PLAIN, rip=ipsource, lip=ipserver
Nov 26 09:23:23 ks34635 dovecot: POP3(toto): Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0


Une piste !

Evelyne
C'est /usr/bin/procmail
Tu dois modifier main.cf
Merci Proxy,

(delivered to command: /usr/bin/procmail)🙂

Je pense que l'on avance mais dans les log j'ai ceci:

Nov 26 10:48:12 ks34635 procmail[28052]: Suspicious rcfile "/home/toto/.procmailrc"🙁
et je n'ai pas de redirection sur une autre adresse email.🙁

Evelyne
Suspicious : c'est un pb de droits : le fichier .procmailrc doit être en toto:toto et 600 je crois
Oui effectivement c'est bien un probleme de droit la redirection fonctionne!

mon .procmail:

:0
# Concernés : tous les mails dont le sujet contient « essai »
* ^Subject:.*essai.*
! tata@domaine2.test


Mais tous les autres mails, qui ne contient pas "essai" dans le sujet je ne les reçoit pas, j'ai remarqué aussi, que le mail reste 3 a 4 secondes dans la boite d'envois avant de partir. Alors qu'avant c'etait quasi immediat. est-ce normal ?


Evelyne
C'est normal qu'il filtre sur essai : tu as mis la condition 🙂
ok, mais pq je ne recoit pas les autres mails dont le sujet est différent ?

Evelyne
Ben parce que ta règle dit : si contient essai, forward sinon rien
encore la chieuse :hammer:

regarde mon .procmail:

PATH=/bin:/usr/bin
MAILDIR=$HOME/Maildir
LOGFILE=$MAILDIR/procmail.log
:0fw
* < 256000

| /usr/bin/spamc -f


:0e
{
EXITCODE=$?
}


:0
* ^X-Spam-Status: Yes
! tata@domaine2.test

:0
$MAILDIR/

La redirection du spam ne fonctionne pas, est-ce un problème venant du code ?

En tous les cas, merci de passer un peut de temps pour m'aider à trouver une solution.

Evelyne
Désolé, mais je ne suis pas super spécialiste de la syntaxe procmail (qui est un langage à part !! 😉).

En général, je me contente de ça :
:0 fw
| MONFILTRE
:0
! dest@domaine
Merci Beaucoup Proxy, pour le temp que tu ma accordé.

@+ Evelyne