Probléme de configuration Postfix + ldap + maildrop

Probléme de configuration Postfix + ldap + maildrop - Logiciels - Linux et OS Alternatifs

Marsh Posté le 14-01-2005 à 10:36:26    

Salut,
 
J'ai le message suivant quand j'essaye d'envoyer des mail à mes virtual users Postfix stokés dans mon annuaire LDAP quand je passe par Maildrop :
 
Jan 12 00:46:59 debian postfix/pipe[1318]: 95C371A6E3: to=<test4@apavesudeurope.net>, relay=maildrop, delay=1, status=bounced (user unknown. Command output: Invalid user specified. )
Jan 12 00:46:59 debian postfix/cleanup[1316]: 0D4891A6E4: message-id=<20050111234659.0D4891A6E4@apavesudeurope.net>
 
Mes fichiers de conf :
 
# /etc/postfix/main.cf :
 
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
 
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
setgid_group = vmail
biff = no
debug_peer_level = 5
append_dot_mydomain = no
 
mail_owner = postfix
myhostname = apavesudeurope.net
alias_maps = hash:/etc/aliases, ldap:aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
#mydestination = debian, localhost, $transport_maps
mydestination = debian, localhost
 
relayhost =
mynetworks = 127.0.0.0/8
 
#mailbox_command = procmail -a $EXTENSION
mailbox_command = /usr/local/bin/maildrop -d ${recipient}
local_destination_concurrency_limit = 1
 
mailbox_size_limit = 0
recipient_delimiter = +
home_mailbox = Maildir/
in_flow_delay = 10s
 
header_checks = regexp:/etc/postfix/header_checks.cf
body_checks = regexp:/etc/postfix/body_checks.cf
 
 
# Transport
 
transport_server_host = localhost
transport_search_base = o=ldapapavesudeurope,dc=fr
transport_query_filter = (&(virtualDomain=%s)(objectClass=ocbergeVirtualDomain))
transport_result_attribute = postfixTransport
transport_scope = one
transport_cache = no
transport_bind = yes
transport_bind_dn = cn=admin,dc=fr
transport_bind_pw = monpassword
 
transport_maps = ldap:transport
 
# Aliases
 
aliases_server_host = localhost
aliases_search_base = o=ldapapavesudeurope,dc=fr
aliases_query_filter = (&(&(objectClass=ocbergeMailAlias)(mail=%s))(accountActive=TRUE))
aliases_result_attribute = maildrop
aliases_scope = sub
aliases_cache = no
aliases_bind = yes
aliases_bind_dn = cn=admin,dc=fr
aliases_bind_pw = monpassword
 
# Comptes
 
accounts_server_host = localhost
accounts_search_base = o=ldapapavesudeurope,dc=fr
accounts_query_filter = (&(&(objectClass=ocbergeMailAccount)(mail=%s))(accountActive=TRUE))
accounts_result_attribute = mailbox
accounts_scope = sub
accounts_cache = no
accounts_bind = yes
accounts_bind_dn = cn=admin,dc=fr
accounts_bind_pw = monpassword
 
accountsmap_server_host = localhost
accountsmap_search_base = o=ldapapavesudeurope,dc=fr
accountsmap_query_filter = (&(&(objectClass=ocbergeMailAccount)(mail=%s))(accountActive=TRUE))
accountsmap_result_attribute = mail
accountsmap_scope = sub
accountsmap_cache = no
accountsmap_bind = yes
accountsmap_bind_dn = cn=admin,dc=fr
accountsmap_bind_pw = monpassword
 
# Distribution
local_recipient_maps = $alias_maps unix:passwd.byname $virtual_mailbox_maps
 
virtual_transport = maildrop
virtual_uid_maps = static:800
virtual_gid_maps = static:800
virtual_mailbox_base = /home/vmail/domains
virtual_mailbox_maps = ldap:accounts
virtual_maps = ldap:aliases, ldap:accountsmap
maildrop_destination_recipient_limit = 1
 
 
# /etc/postfix/master.cf :  
 
maildrop  unix  -       n       n       -       -       pipe
 flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${user}
 
cat /etc/passwd | grep vmail
vmail:x:800:800::/home/vmail:/bin/false
 
 
Mon arborescence LDAP:  
 
  dc=fr  
    o=ldapapavesudeurope  
      virtualDomain=apavesudeurope.net    
         mail=test4@apavesudeurope.net  
 
Detail de mon utilisateur LDAP :
 
objectClass: ocbergeMailAccount
objectClass: inetOrgPerson
mail: test4@apavesudeurope.net
cn: 'compte test4'
sn: test4
accountActive: TRUE
mailhome: /home/vmail/domains/
userPassword: {MD5}XpHJo+u41i6F+7IdFExmeg==
mailbox: apavesudeurope.net/test4/Maildir/
gidNumber: 800
uidNumber: 800
uid: test4
 
J'ai un virtualdomain dans mon annuaire ou sont stocké les users :
 
dn:virtualDomain=apavesudeurope.net,o=ldapapavesudeurope,dc=fr
virtualDomain: apavesudeurope.net
objectClass: ocbergeVirtualDomain
postfixTransport: maildrop:
 
Quand je mets virtual dans postfixTransport je peu envoyer des mails mais quand je veus passer par maildrop ca ne marche pas avec l'erreur suivante dans mon /var/log/mail.log :
 
... relay=maildrop, delay=1, status=bounced (user unknown. Command output: Invalid user specified. ...
 
Quand je fais un :  su - vmail | maildrop -d "vmail" ca fonctionne.
 
j'ai bien un fichier /home/vmail/.maildrop.log ce qui signifie que mon fichier /home/vmail/.mailfilter à bien été pros en compte
 
# /home/vmail/.mailfilter
 
HOME="/home/vmail"
MAILDIR="$HOME/domains/apavesudeurope.net/test4/Maildir/"
DEFAULT="$MAILDIR"
 
logfile "/home/vmail/.maildrop.log"
log " Mail généré par Maildrop pour l'utilistateur $LOGNAME dans $HOME: "
log ""
 
 
Mais quand je fais un : maildrop -d test4@apavesudeurope.net
j'ai Invalid user specified.
 
Pourtant j'ai bien compilé maildrop-1.6.3 avec le support LDAP :
 
./configure --disable-userdb --without-db --disable-tempdir --enable-syslog=1 --enable-use-flock=1 --enable-maildirquota --enable-use-dotlock=1 --enable-maildrop-uid=vmail --enable-maildrop-gid=vmail --enable-restrict-trusted=0 --enable-trusted-users=root mail daemon postmaster qmaild stephane vmail --with-default-maildrop=Maildir/ --enable-maildropldap --with-ldapconfig=/etc/maildrop/maildropldap.config --with-etcdir=/etc/maildrop
 
Quand je fais :
 
# maildrop -v
maildrop 1.6.3 Copyright 1998-2003 Double Precision, Inc.
Maildir quota extension enabled.
Virtual user database via LDAP extension enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.
 
J'ai bien mon fichier de conf pour LDAP dans /etc/maildrop/maildropldap.config
 
hostname        localhost
basedn          o=ldapapavesudeurope,dc=fr
filter          (&(&(objectClass=ocbergeMailAccount)(mail=%s))(accountActive=TRUE))
binddn          cn=admin, dc=fr
bindpw          amandine
timeout         10
search_method           mail
default_uidnumber       800
default_gidnumber       800
mail_attr               mail
uid_attr                uid
uidnumber_attr          uidnumber
gidnumber_attr          gidnumber
maildir_attr            mailbox
homedirectory_attr      mailhome
quota_attr              quota
 
Voila je vous ai donné tous les détail de ma config en espérant que quelqu'un m'indique ou j'ai commis une erreur.
 
Au j'oubliais j'ai aussi ca dans mon /var/log/mail.log quand je démarre Postfix :
 
Jan 13 20:07:23 debian authdaemond.ldap: modules="authpam authldap", daemons=5
Jan 13 20:07:34 debian postfix/postfix-script: warning: not owned by group vmail: /usr/sbin/postqueue
Jan 13 20:07:34 debian postfix/postfix-script: warning: not owned by group vmail: /usr/sbin/postdrop
Jan 13 20:07:34 debian postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postqueue
Jan 13 20:07:34 debian postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postdrop
Jan 13 20:07:34 debian postfix/postfix-script: starting the Postfix mail system
Jan 13 20:07:35 debian postfix/master[449]: daemon started -- version 2.1.5
 
 
Merci d'avance pour ceux qui auront eu la patience de lire mon post jusqu'a la fin.

Reply

Marsh Posté le 14-01-2005 à 10:36:26   

Reply

Marsh Posté le 14-01-2005 à 10:41:23    

il faudrait t'assurer que maildrop converse bien avec le ldap .
avec un coup de maildrop -V9 -d tonuservirtuel@beaudomaine.tld
 
une fois que tu auras un truc de ce genre :
root@parmenion # maildrop -V9 -d mikala@littleboboy.net
maildrop: Changing to /var/virtual/littleboboy.net/mikala@littleboboy.net/
tu auras fait la moitié du chemin avec maildrop ;)

Reply

Marsh Posté le 14-01-2005 à 10:46:23    

J'ai bien compris que le problème devait venir de la car quand je fais un maildrop -d test4@apavesudeurope.net  
j'ai Invalid user specified. comme réponse mais je sais pas d'ou ca peu venir.
Ca marche avec l'utilisateur vmail ce qui voudrait dir que mailrop ne prend pas en compte mon fichier /etc/maildrop/maildropldap.config ou que celui ci est mal renseigné.
Mais comment je peu le savoir ?
 

Reply

Marsh Posté le 14-01-2005 à 10:52:40    

needsomehelp a écrit :

J'ai bien compris que le problème devait venir de la car quand je fais un maildrop -d test4@apavesudeurope.net  
j'ai Invalid user specified. comme réponse mais je sais pas d'ou ca peu venir.
Ca marche avec l'utilisateur vmail ce qui voudrait dir que mailrop ne prend pas en compte mon fichier /etc/maildrop/maildropldap.config ou que celui ci est mal renseigné.
Mais comment je peu le savoir ?


cela marche avec vmail car l'utilisateur est un utilisateur unix .
a priori maildrop ne converse pas ( ou mal ) avec la base ldap .
je ne peux pas te renseigner sur le fonctionnement ldap ( je me sers en ce qui me concerne d'une base mysql )
 
ceci dit tu peux voir les fichiers de conf ici du maildropmysql et du maildroprc ( ainsi que de postfix ).
Sinon essayes un strace pour voir ou cela coince .
 

Reply

Marsh Posté le 14-01-2005 à 10:56:30    

Ok merci, mais c'est koi un "strace" :-)

Reply

Marsh Posté le 14-01-2005 à 10:58:28    

j'ai ca dans mon syslog :
 
Jan 13 19:46:55 debian slapd[181]: slap_open_listener: socket() failed for AF_INET6 errno=97 (Address family not supported by protocol)
Jan 13 19:46:56 debian slapd[181]: /etc/ldap/schema/mail.schema: line 57: unknown directive "#" outside backend info and database definitions (ignored)

Reply

Marsh Posté le 14-01-2005 à 11:01:57    

Mais ca na rien a voir je pense car mon serveur ldap fonctionne et j'arrive bien à me loguer avec un compte mail ldap (test4@apavesudeurope.net) à partir de quirrelmail et je peu bien lire et recevoir des mail tant que je ne passe pas par maildrop.

Reply

Marsh Posté le 14-01-2005 à 11:11:42    

needsomehelp a écrit :

Mais ca na rien a voir je pense car mon serveur ldap fonctionne et j'arrive bien à me loguer avec un compte mail ldap (test4@apavesudeurope.net) à partir de quirrelmail et je peu bien lire et recevoir des mail tant que je ne passe pas par maildrop.


cela n'a effectivement aucun rapport ;)
pour strace :  man strace :D

Reply

Marsh Posté le 14-01-2005 à 11:14:37    

-:) oui mais d'abord un apt-get install strace

Reply

Marsh Posté le 14-01-2005 à 11:23:03    

hum ... :-(
 
debian:/usr/src/maildrop-1.6.3# apt-get install  
Reading Package Lists... Done
Building Dependency Tree... Done
The following NEW packages will be installed:
  strace
0 packages upgraded, 1 newly installed, 0 to remove and 93  not upgraded.
Need to get 83.4kB of archives. After unpacking 225kB will be used.
Err http://ftp.debian.org testing/main strace 4.5.5-1
  503 Service Unavailable
Failed to fetch http://ftp.debian.org/debian/pool/ [...] 1_i386.deb  503 Service Unavailable

Reply

Marsh Posté le 14-01-2005 à 11:23:03   

Reply

Marsh Posté le 14-01-2005 à 11:31:53    

J'ai quand meme l'impression que maildrop à bien été compilé avec LDAP :
 
# maildrop -v
maildrop 1.6.3 Copyright 1998-2003 Double Precision, Inc.
Maildir quota extension enabled.
Virtual user database via LDAP extension enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.
 
et que maildrop va bien chercher mon fichier de configuration ldap au bon endroit :
 
--enable-maildropldap --with-ldapconfig=/etc/maildrop/maildropldap.config --with-etcdir=/etc/maildrop
 
Donc le probleme doit venir de mon fichier =/etc/maildrop/maildropldap.config  
 
hostname        localhost  
basedn          o=ldapapavesudeurope,dc=fr  
filter          (&(&(objectClass=ocbergeMailAccount)(mail=%s))(accountActive=TRUE))  
binddn          cn=admin, dc=fr  
bindpw          amandine  
timeout         10  
search_method           mail  
default_uidnumber       800  
default_gidnumber       800  
mail_attr               mail  
uid_attr                uid  
uidnumber_attr          uidnumber  
gidnumber_attr          gidnumber  
maildir_attr            mailbox  
homedirectory_attr      mailhome  
quota_attr              quota

Reply

Marsh Posté le 14-01-2005 à 11:34:56    

Quand je lance mon .configure il met met :
 
configure: WARNING: you should use --build, --host, --target
 
Je sais pas si ca peu venir de la ???

Reply

Marsh Posté le 14-01-2005 à 11:38:26    

ah non pardon j'avais une erreur dans mon configure

Reply

Marsh Posté le 14-01-2005 à 12:19:15    

Par ailleurs mon authenfication ldap marche avec courier :
 
# courierauthtest test4@apavesudeurope.net
Trying authdaemon...
Authenticated: module authdaemon
Home directory: /home/vmail/domains
UID/GID: 800/800
Maildir: apavesudeurope.net/test4/Maildir/
AUTHADDR=test4@apavesudeurope.net
AUTHFULLNAME='compte test4'
OPTIONS=<none>

Reply

Marsh Posté le 14-01-2005 à 13:07:24    

Apparement cela viendrai du fais que je suis sur une debian et que j'ai installer les packages par apt et le courier-maildrop de debian n'est pas compilé avec le sipport ldap.
 
J'ai donc installer et compiler maildrop avec un ./configure classique mais ca marche toujours pas meme avec la version 1.8.0

Reply

Marsh Posté le 14-01-2005 à 15:39:19    

le maildropldap.config doit etre mal configuré a mon avis

Reply

Marsh Posté le 14-01-2005 à 16:30:24    

Je suis en train de reconfigurer le package debian courier-maildrop avec le support ldap mais c'est hyper long.
 
Il font ch..r chez debian ils aurai pas pu le faire ;-)
 
Ca fais 1h que ca tourne et je sais meme pas si ca va marcher.
 
Bon merci pour ton aide Bon week-end

Reply

Marsh Posté le 22-01-2005 à 16:32:25    

n'oublie pas courier-authlib, ça passe par ça sur les dernières versions de maildrop, vu sur une ML et expérience vécue (postfix + mysql + maildrop)

Reply

Marsh Posté le 13-04-2005 à 14:34:55    

BMOTheKiller a écrit :

n'oublie pas courier-authlib, ça passe par ça sur les dernières versions de maildrop, vu sur une ML et expérience vécue (postfix + mysql + maildrop)


Bon vous avez tous resolu vos problemes !!!!
Et be moi je suis en plein dedans ....
Problemes avec unknown user dans syslog
Besoin d'aide s'il vous plait ??

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed