Posfix-Mysql

Bonjour,
J’ai fait une installation complète d’un serveur mail en suivant le document suivant:
lea-linux.org/documentations … sin-amavis

Le problème c’est que j’envoie bien mes mails et j’en reçois dans les dossiers crées à cet effet mais je ne peux accéder à mes comptes virtuels avec mes clients mail(Outlook et Thunderbird).J’ai régulièrement l’erreur suivante:

May 30 16:12:54 firewall imapd: LOGIN FAILED, user=naruto, ip=[::ffff:192.168.0.12]
May 30 16:12:54 firewall imapd: LOGIN FAILED, user=naruto, ip=[::ffff:192.168.0.12]
May 30 16:13:01 firewall imapd: Disconnected, ip=[::ffff:192.168.0.12], time=7
May 30 16:13:01 firewall imapd: LOGIN FAILED, user=naruto, ip=[::ffff:192.168.0.12]
May 30 16:13:19 firewall imapd: Disconnected, ip=[::ffff:192.168.0.12], time=25

Je mets en copie mes fichiers de configuration:

fichier : /etc/postfix/main.cf

#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
#readme_directory = 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
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

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

myhostname = firewall.konoha.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
#myorigin = /etc/mailname
myorigin = konoha.com
#mydestination = mail.konoha.com, firewall.locke-engineering.com, localhost.locke-engineering.com, localhost
#mydestination =
#local_recipient_maps =
relayhost = smtp.menara.ma
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 192.168.0.0/24 192.168.0.12 192.168.0.14
mynetworks_style = host
#mailbox_command = procmail -a "$EXTENSION"
#mailbox_size_limit = 0
#recipient_delimiter = +
inet_interfaces = all


#restrictions d'acc�s
# adresses d'exp�dition
# le "reject_unknown_sender_domain" verifie que le domaine existe

smtpd_sender_restrictions =
        permit_mynetworks,
        reject_unknown_sender_domain,
        warn_if_reject reject_unverified_sender

# adresses de destination
smtpd_recipient_restrictions =
        permit_mynetworks,
        reject_unauth_destination,
        reject_unknown_recipient_domain,
        reject_non_fqdn_recipient

# client
smtpd_client_restrictions =
        reject_unknown_client,
        permit_mynetworks

virtual_mailbox_base = /var/spool/mail/virtual
# this is for the mailbox location for each user
virtual_mailbox_maps = mysql:/etc/postfix/mysql_mailbox.cf
# and their user id
virtual_uid_maps = mysql:/etc/postfix/mysql_uid.cf
# and group id
virtual_gid_maps = mysql:/etc/postfix/mysql_gid.cf
# and this is for aliases
virtual_alias_maps = mysql:/etc/postfix/mysql_alias.cf
# and this is for domain lookups
virtual_mailbox_domains = mysql:/etc/postfix/mysql_domains.cf
# this is how to connect to the domains (all virtual, but the option is there)
# not used yet
# transport_maps = mysql:/etc/postfix/mysql_transport.cf

fichier /etc/courier/authdaemonrc

J’ai ajouté la ligne suivante
authdmodulelist=“authmysql” et ai commenté celle précédente qui était avec authpam

fichier /etc/courier/authmysqlrc

MYSQL_SERVER localhost
MYSQL_USERNAME postfix
MYSQL_PASSWORD postfix
MYSQL_PORT 0
MYSQL_DATABASE maildb
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD crypt
#MYSQL_CLEAR_PWFIELD clear
MYSQL_UID_FIELD 5000
MYSQL_GID_FIELD 5000
MYSQL_LOGIN_FIELD id
MYSQL_HOME_FIELD home
MYSQL_MAILDIR_FIELD CONCAT(home,'/',maildir)
#MYSQL_NAME_FIELD
MYSQL_WHERE_CLAUSE enabled=1
MYSQL_QUOTA_FIELD quota

Quelqu’un saurait-il me dire ce qui ne va pas?
Merci d’avance.

Salut, je ne sais pas si c’est ça…
Mais dans cette table de mysql [code]-- Structure de la table mailbox

CREATE TABLE mailbox (
email varchar(255) NOT NULL default ‘’,
password varchar(255) NOT NULL default ‘’,
quota int(10) NOT NULL default ‘0’,
actif tinyint(1) NOT NULL default ‘1’,
imap tinyint(1) NOT NULL default ‘1’,
pop3 tinyint(1) NOT NULL default ‘1’,
PRIMARY KEY (email)
) ENGINE=MyISAM COMMENT=‘Postfix Admin - Boites Emails Virtuelles’;

[/code]
le nom d’utilisateur est ‘email’, donc serait de type 'naruto@trucmuche.net ?
Mes utilisateurs sur mon serveur s’iditentifient avec l’adresse mail COMPLETE.
J’espère que c’est seulement ça, ce serait cool…

Bonjour,
merci déjà d’avoir répondu.
J’ai essayé de m’authentifier avec tout le nom@domaine.com
mais j’ai toujours la même erreur.

J’ai juste jeté un oeil rapide au tuto que tu as suivi. J’ aurai un peu de temps demain pour regarder, si tu n’ as pas trouvé de solution (j’ai un peu la même config et ça marche bien chez moi - j’ai un peu galéré pour les réglages…). J’espère qu’une bonne âme verra ça ce soir, et du premier coup…

si tu utilise courier-imap et coutier-authlib tu peux activer le debug pour le serveur imap . je crois que c’est dans le fichier authdaemonrc.

tu verras beaucoup d’infos et les password en clair, moi ça m’a permis de savoir ce qui bloquait.

Bonsoir, j’ai mis DEBUG_LOGIN à 2 dans le fichier en question mais ça ne change pas grand chose à mon problème au final.

C’est clair que ça m’aiderait bien si t’as une config semblable.

Salut, quelques questions :
Que donne la commande telnet firewall.konoha.com 143 avec0 login tonutilisateur lemotdepasse
Et que donne la commande ps -ef | grep imap
?

Bonjour,
Désolé du retard de la réponse.
J’ai mis bien testé le telnet comme tu me l’as indiqué
et la réponse fut la suivante:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Copyright 1998-2008 Double Precision, Inc.  See COPYING for distribution information.
0 login naruto naruto
0 NO Login failed.
Connection closed by foreign host.

Pour le ps -ef | grep imap,
voici ce que ça donne:

root      4753     1  0 May29 ?        00:00:00 /usr/sbin/courierlogger -pid=/var/run/courier/imapd.pid -start -name=imapd /usr/sbin/couriertcpd -address=0 -maxprocs=40 -maxperip=20 -nodnslookup -noidentlookup 143 /usr/lib/courier/courier/imaplogin /usr/bin/imapd Maildir
root      4754  4753  0 May29 ?        00:00:00 /usr/sbin/couriertcpd -address=0 -maxprocs=40 -maxperip=20 -nodnslookup -noidentlookup 143 /usr/lib/courier/courier/imaplogin /usr/bin/imapd Maildir
root     22047 21979  0 11:34 pts/2    00:00:00 grep imap

Ok, je pense qu’il s’agit d’un problème de communication entre courrier et mysql.
Si “mysql” est bien démarré, tu dois avoir dans les logs de “mysql” des infos sur le “querry” de courrier pour l’autenthification. Tu peux vérifier ça ?
Tu peux aussi donner l’arborescence des “bal” dans /var/spool/mail/virtual ? Si c’est la qu’elles sont ?
Mais tant que tu ne “telnet” pas convenablement sur le port 143, inutile de t’emmerder a essayer de configurer tes clients !

Mais dis moi, en vérifiant, j’ai trouvé des trucs bizares…

[quote=“kaiser_locke”]
fichier /etc/courier/authmysqlrc

MYSQL_PORT 0
MYSQL_DATABASE maildb
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD crypt
MYSQL_LOGIN_FIELD id
MYSQL_HOME_FIELD home
MYSQL_MAILDIR_FIELD CONCAT(home,'/',maildir)
#MYSQL_NAME_FIELD
MYSQL_WHERE_CLAUSE enabled=1
MYSQL_QUOTA_FIELD quota
[/code][/quote]
Alors que d'après le tuto tu devrais avoir ça :[code]
MYSQL_DATABASE          postfix
MYSQL_USER_TABLE        mailbox
MYSQL_CRYPT_PWFIELD     password
MYSQL_LOGIN_FIELD       email
MYSQL_HOME_FIELD        "/var/spool/vmail/"
MYSQL_MAILDIR_FIELD CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
MYSQL_QUOTA_FIELD       quota

Tu as suivi plusieurs tuto ?
Quelle est la structure exacte de ta base sql ? (nom de la base, des tables…) ?

J’ai fini effectivement par me référer à un autre tutoriel dont le lien est le suivant :
howtoforge.com/virtual_users … ebian_etch

Je le trouve plus complet finalement.
Mon erreur était toute bête en fait.J’ai mal écrit dans le fichier
/etc/courier/authdaemonrc
C’est pour cela que ça ne fonctionnait pas.Maintenant ça fonctionne correctement après
évidemment avoir suivi ce nouveau tuto.
Merci pour ton aide.

Résolu ! C’est cool :slightly_smiling: