Fetchmail -> postfix -> filtrage(s)

bonjour à tous;
Je suis confronté à un petit problème.
J’ai un serveur sous postfix qui fonctionne bien, configuré pour éviter de faire du relais bien sur.
A présent, j’ai des soucis avec mon adresse sur free, n’étant pas en dégroupé total.
Je cherche donc à faire ceci (une partie fonctionne):

  1. récupérer le courrier sur free via pop3 avec fetchmail (la, ça marche)
  2. le passer à postfix pour qu’il le passe par spamassain et consort (la ça merdois)
  3. refiltrer certain des mails en particulier ceux qui correspondent à mon répondeur téléphonique pour le transférer sur ma boite gmail afin de recevoir sur mon smartphone. (la, pas pu encore tester)

En premier problème, comme postfix est configuré ne pas faire de relais, il ne prend pas les mails de fetchmail quand celui ci est configuré en smtphost :

$ cat .fetchmailrc
 defaults:
  timeout 3000
  antispam -1
  batchlimit 100
  limit 0
  no rewrite
  dropdelivered
  smtphost master.suinot.org
poll pop.free.fr with protocol POP3
     user 'ben_moi' there with password 'mon_pas_de_la_mort' is 'moi_meme_tout_seul' here

La question sera ensuite: procmail sera t il mon ami pour retransférer les mails du répondeur de free (correspondance de l'entête et tout et tout)?

Merci de vos avis.
Rémi.

Salut,

[quote=“rsuinux”]1) récupérer le courrier sur free via pop3 avec fetchmail (la, ça marche)[/quote]Bon, c’est cool, c’est déjà ça… :wink:

[quote=“rsuinux”]2) le passer à postfix pour qu’il le passe par spamassain et consort (la ça merdois)[/quote]Avec amavisd c’est pourtant pas si compliqué. Qu’est-ce qui merdois ?

[quote=“rsuinux”]3) refiltrer certain des mails en particulier ceux qui correspondent à mon répondeur téléphonique pour le transférer sur ma boite gmail afin de recevoir sur mon smartphone. (la, pas pu encore tester)
[/quote]Ça je le fais mais avec Dovecot 2 (qui inclue Sieve et managesieve). Mais c’est peut-être trop de modif par rapport à ta conf actuelle ? wiki2.dovecot.org/

merci de ton aide.

[quote=“rsuinux”]1) récupérer le courrier sur free via pop3 avec fetchmail (la, ça marche)[/quote]Bon, c’est cool, c’est déjà ça… :wink:

Simple (enfin, presque), postfix me répond: ‘relais denied’

[quote][quote=“rsuinux”]3) refiltrer certain des mails en particulier ceux qui correspondent à mon répondeur téléphonique pour le transférer sur ma boite gmail afin de recevoir sur mon smartphone. (la, pas pu encore tester)
[/quote]Ça je le fais mais avec Dovecot 2 (qui inclue Sieve et managesieve). Mais c’est peut-être trop de modif par rapport à ta conf actuelle ? wiki2.dovecot.org/[/quote]
[/quote]effectivement, j’ai eu du mail, houps, mauvais jeu de mot, du mal, à règler mon postfix/spamassassin/…
La, j’ai installé fetchmail juste pour tester la 'faisabilité’
j’avoue que tout refaire me ferait un peu…

Salut,
A priori pour spamassassin et clamav c’est simple…# apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

Ajouter ceci à la fin de master.cf[code]
dovecot unix - n n - - pipe
flags=DRhu user=facteur:facteur argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop}
amavis unix - - - - 2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes

127.0.0.1:10025 inet n - - - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_bind_address=127.0.0.1[/code]
Un dovecot.conf qui doit ressembler à quelquechose comme ça (c’est la partie socket listen)

protocols = imap imaps pop3 pop3s log_timestamp = "%Y-%m-%d %H:%M:%S " mail_privileged_group = mail disable_plaintext_auth = no mail_location = maildir:/home/facteur/%d/%n:INDEX=/home/facteur/%d/%n/indexes protocol imap { } protocol pop3 { pop3_uidl_format = %08Xu%08Xv } protocol lda { postmaster_address = admin@zehome.org mail_plugin_dir = /usr/lib/dovecot/modules/lda auth_socket_path = /var/run/dovecot/auth-master mail_plugins = sieve quota } protocol managesieve { } auth default { mechanisms = plain digest-md5 cram-md5 apop login userdb sql { args = /etc/dovecot/dovecot-mysql.conf } passdb sql { args = /etc/dovecot/dovecot-mysql.conf } userdb passwd { } user = root socket listen { master { path = /var/run/dovecot/auth-master mode = 0600 user = facteur # User running Dovecot LDA } client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix } } } dict { } plugin { }
Et enfin dé-commenter 4 lignes dans le fichier /etc/amavis/conf.d/15-content_filter_mode

@bypass_virus_checks_maps = (
   \%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re);

@bypass_spam_checks_maps = (
   \%bypass_spam_checks, \@bypass_spam_checks_acl, \$bypass_spam_checks_re);

Ajouter 2 lignes à postfix (à main.cf)[code]# postconf -e ‘content_filter = amavis:[127.0.0.1]:10024’

postconf -e ‘receive_override_options = no_address_mappings’

[/code]
Puis[code]# adduser clamav amavis

service amavis restart

service clamav-daemon restart

service postfix restart[/code]

Pour le filtrage sur IMAP je ne connais que Dovecot…

merci lol pour ton aide.
J’ai testé mais j’ai toujours mon problème. Démonstration:

$ fetchmail
2 messages pour 'moi_meme' dans pop.free.fr (20079 octets).
fetchmail: Erreur SMTP: 554 5.7.1 <remi@master.suinot.org>: Relay access denied
fetchmail: message depuis MAILER-DAEMON@master.suinot.org ayant rebondi sur bounced@bid-bee.com
fetchmail: il n'est même pas possible d'expédier vers remi
lecture du message 'moi_meme'@pop.free.fr:1 parmi 2 (12315 octets) non éliminé
fetchmail: Erreur SMTP: 554 5.7.1 <remi@master.suinot.org>: Relay access denied
fetchmail: message depuis MAILER-DAEMON@master.suinot.org ayant rebondi sur perl-bounces@mongueurs.net
fetchmail: il n'est même pas possible d'expédier vers remi
lecture du message 'moi_meme'@pop.free.fr:2 parmi 2 (7764 octets) non éliminé

dans syslog:

Apr  1 10:30:22 master postfix/smtpd[18144]: 3C3793C253B: client=localhost[127.0.0.1]
Apr  1 10:30:22 master postfix/cleanup[18200]: 3C3793C253B: message-id=<20110401082959.23ED93C2536@master.suinot.org>
Apr  1 10:30:22 master postfix/qmgr[18104]: 3C3793C253B: from=<>, size=3042, nrcpt=1 (queue active)
Apr  1 10:30:22 master postfix/smtpd[18144]: disconnect from localhost[127.0.0.1]
Apr  1 10:30:22 master amavis[9990]: (09990-11) Passed CLEAN, LOCAL [127.0.0.1] [127.0.0.1] <> -> <bounced@bid-bee.com>, Message-ID: <20110401082959.23ED93C2536@master.suinot.org>, mail_id: 8aJ7wbnI+Bf2, Hits: -1, size: 2603, queued_as: 3C3793C253B, 23166 ms
Apr  1 10:30:22 master postfix/smtp[18201]: 23ED93C2536: to=<bounced@bid-bee.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=23, delays=0.08/0.05/0.02/23, dsn=2.0.0, status=sent (250 2.0.0 Ok, id=09990-11, from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as 3C3793C253B)
Apr  1 10:30:22 master postfix/qmgr[18104]: 23ED93C2536: removed
Apr  1 10:30:23 master postfix/smtp[18251]: 3C3793C253B: to=<bounced@bid-bee.com>, relay=bid-bee.com[94.23.17.125]:25, delay=1, delays=0.04/0.1/0.8/0.06, dsn=5.7.0, status=bounced (host bid-bee.com[94.23.17.125] said: 530 5.7.0 Must issue a STARTTLS command first (in reply to MAIL FROM command))
Apr  1 10:30:23 master postfix/qmgr[18104]: 3C3793C253B: removed

pareil pour le suivant.
je me demande si ce ne serait pas n problème au niveau de la connexion entre dovecot et postfix, limité à imaps et pop3s. C’est le “STARTTLS command first” qui m’inquiète (façon de parler).
Je n’ai pas voulu mettre pop3 pour les utilisateurs.
J’ai bon? :041

Non, fetchmail essaye de parler à postfix (Erreur SMTP: 554 5.7.1) - pas à Dovecot.
Tu peut montrer le main.cf ?

No soucis:

# cat /etc/postfix/main.cf 
# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

# Enregistrer dans un en-tete Received
smtpd_tls_received_header = yes
smtpd_tls_loglevel = 1


smtpd_use_tls=yes
smtp_use_tls=yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_auth_only = yes
smtpd_tls_received_header = yes
smtpd_tls_loglevel = 1
smtpd_tls_security_level = may

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = master.suinot.org
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = suinot.org, localhost, localhost.localdomain
relayhost = 
mynetworks = 192.168.0.0/16, 127.0.0.0/8

smtpd_sasl_application_name = smtpd
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_sasl_local_domain =
# $myhostname
broken_sasl_auth_clients = yes

# Restrictions:
smtpd_recipient_restrictions = 
    permit_mynetworks
    permit_sasl_authenticated
    reject_unauth_destination
    reject_non_fqdn_sender
    reject_non_fqdn_recipient
    reject_invalid_hostname
    reject_non_fqdn_hostname
    reject_unknown_sender_domain
    permit

    mailbox_size_limit = 51200000
    message_size_limit = 31457280
    recipient_delimiter = +
    inet_interfaces = all

#
# Mail virus filtering
#
    content_filter=smtp-amavis:[127.0.0.1]:10024
    smtp-amavis_destination_concurrency_limit = 2

    inet_protocols = all
    smtpd_helo_required = yes
    readme_directory = /usr/share/doc/postfix
    html_directory = /usr/share/doc/postfix/html
    receive_override_options = no_address_mappings

Re,
Effectivement tu avais en partie raison.
C’est le “postfix/smtp” + “530 5.7.0 Must issue a STARTTLS” command first qui bloque.
Tu devrais essayer de désactiver le smtpd_tls et/ou le smtpd_sasl dans postfix pour cerner exactement ce qui coince.

Edit: Je déplace le sujet dans support.

[quote=“lol”]Re,
Effectivement tu avais en partie raison.
C’est le “postfix/smtp” + “530 5.7.0 Must issue a STARTTLS” command first qui bloque.
Tu devrais essayer de désactiver le smtpd_tls et/ou le smtpd_sasl dans postfix pour cerner exactement ce qui coince.
[/quote]
Si je me réfère à ce que j’ai pu lire, le chemin du mail est dans le cas ici présent:
serverur free > [ fetchmail chez moi ] > postfix > filtres anti pourritures
mais j’ai lu que fetchmail pouvait faire tu ssl, non? mais dans quel sens pour la récupération ou pour ‘relayer’ vers un serveur ?

[quote]
Edit: Je déplace le sujet dans support.[/quote]
c’est noté :slightly_smiling: