[Postfix] Utilisation de Mysql pour gerer les utilisateurs

Utilisation de Mysql pour gerer les utilisateurs [Postfix] - Linux et OS Alternatifs

Marsh Posté le 13-09-2004 à 16:50:13    

Salut,
 
bon voila mon probleme,
je voudrai mettre en place un serveur de mail smtp qui s'appuie
sur une base mysql qui existe deja ( contenant des comptes utilisateurs ) pour recevoir des mails a destination des users declarés dans cette base.
 
Donc je parametre mon postfix pour utiliser une base alias avec  :
 
dans le main.cf  
> alias_maps = mysql:/etc/postfix/mysql_aliases.cf
 
dans le mysql_aliases.cf :
 
>hosts    = localhost
>user     = monuser
>password = monmotdepass
>dbname   = postfix  
>table    = alias
>select_field = email
>where_field  = user
>additional_conditions =
 
Dans les logs mysql postfix fait bien les requetes dans la base.
Mais il faut lui retourner quoi exactement pour qu'il accepte
de recevoir des mails ?
j'ai un "user unknown" pour tous les utilisateurs de la base.
 
merci d'avance.
a+./
 
 :bounce:

Reply

Marsh Posté le 13-09-2004 à 16:50:13   

Reply

Marsh Posté le 13-09-2004 à 16:53:02    

http://www.postfix.org/MYSQL_README.html ainsi que http://www.postfix.org/mysql_table.5.html


Message édité par mikala le 13-09-2004 à 16:53:43

---------------
Intermittent du GNU
Reply

Marsh Posté le 13-09-2004 à 16:54:19    

configurer mydestination


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:00:50    


 
Merci,
j'ai deja lut ces tutos, et j'ai fait exactement
comme décrit.
 
Mais il ne reconnai pas les utilisateurs.

Reply

Marsh Posté le 13-09-2004 à 17:01:22    

tomate77 a écrit :

configurer mydestination


 
J'utilise ca :
 
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

Reply

Marsh Posté le 13-09-2004 à 17:02:26    

et myhostname c est quoi ?
ton domaine dans ta base c est quoi ?
 
pourquoi ne pas utiliser postfixadmin ?


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:04:36    

momch a écrit :

Merci,
j'ai deja lut ces tutos, et j'ai fait exactement
comme décrit.
 
Mais il ne reconnai pas les utilisateurs.


il faudrait peut etre fournir des logs . ( et pas des logs niveau 'info' mais plus des warn & co )
ensuite il faudrait peut etre vérifié que les bons champs sont interrogés .


---------------
Intermittent du GNU
Reply

Marsh Posté le 13-09-2004 à 17:04:50    

myhostname c'est le nom local de mon serveur sr013.undomaine.com
 
j'ai pas de domaine dans ma base. c'est ca qu'il manque ?
j'ai essayé de lui faire faire une requete qui lui renvoie  
une adresse email, mais c'est pareil, il dit "user unknown".
 

Reply

Marsh Posté le 13-09-2004 à 17:09:42    

bah en général une base SQL pour postfix c est pour gérer des users virtuels, donc il faut un domaine, même fictif (en interne donc :D)
 
voila t'as plus qu'à mettre un domaine comme il faut


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:10:43    

Les logs :
 
--------------------------------------------------
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: public/cleanup socket: wanted attribute: status
Sep 13 18:43:38 EL38SR013 postfix/cleanup[6223]: 643EDBE5E: message-id=<20040913164310.643EDBE5E@EL38SR013.elsa.com>
Sep 13 18:43:38 EL38SR013 postfix/qmgr[6218]: 643EDBE5E: from=<momchy@elsa.com>, size=363, nrcpt=1 (queue active)
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: input attribute name: status
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: input attribute value: 0
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: public/cleanup socket: wanted attribute: reason
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: input attribute name: reason
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: input attribute value: (end)
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: public/cleanup socket: wanted attribute: (list terminator)
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: input attribute name: (end)
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: > localhost[127.0.0.1]: 250 Ok: queued as 643EDBE5E
Sep 13 18:43:38 EL38SR013 postfix/smtpd[6221]: watchdog_pat: 0x809d088
Sep 13 18:43:38 EL38SR013 postfix/local[6224]: 643EDBE5E: to=<momch@elsa.com>, relay=local, delay=28, status=bounced (unknown user: "momch" )
Sep 13 18:43:38 EL38SR013 postfix/cleanup[6223]: 5A127BE67: message-id=<20040913164338.5A127BE67@EL38SR013.elsa.com>
Sep 13 18:43:38 EL38SR013 postfix/qmgr[6218]: 5A127BE67: from=<>, size=2036, nrcpt=1 (queue active)
Sep 13 18:43:38 EL38SR013 postfix/qmgr[6218]: 643EDBE5E: removed
Sep 13 18:43:38 EL38SR013 postfix/local[6224]: 5A127BE67: to=<momchy@elsa.com>, relay=local, delay=0, status=bounced (unknown user: "momchy" )
Sep 13 18:43:38 EL38SR013 postfix/qmgr[6218]: 5A127BE67: removed
Sep 13 18:48:38 EL38SR013 postfix/smtpd[6221]: > localhost[127.0.0.1]: 421 EL38SR013.elsa.com Error: timeout exceeded
Sep 13 18:48:38 EL38SR013 postfix/smtpd[6221]: timeout after END-OF-MESSAGE from localhost[127.0.0.1]
Sep 13 18:48:38 EL38SR013 postfix/smtpd[6221]: disconnect from localhost[127.0.0.1]
--------------------------------------------------
 
 
Merci.

Reply

Marsh Posté le 13-09-2004 à 17:10:43   

Reply

Marsh Posté le 13-09-2004 à 17:11:45    

la requete sql retourne :
 
momch@elsa.com

Reply

Marsh Posté le 13-09-2004 à 17:11:59    

bah normal, ton mysql il connait pas le domaine elsa.com nan ?


Message édité par Tomate le 13-09-2004 à 17:12:14

---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:27:14    

Ca marche si dans la requete faite par postfix, le resultat
est le fichier de destination du mail. Par exemple :
 
/var/spool/mail/momch
 
donc je cree une table de test avec comme champs :
 
user varchar ( 20 )
email varchar ( 60 )
 
dans mon example j'ai un enregistrement :
user=momch email=/var/spool/mail/momch
 

Reply

Marsh Posté le 13-09-2004 à 17:29:44    

:heink:


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:32:21    

Ben ouai,  
 
du coup, j'ai plus qu'a ajouter une table dans ma base radius
et ca roule.
 
si je supprime l'utilisateur dans la base ca donne ceci :
 
550 <momch@elsa.com>: Recipient address rejected: User unknown in local recipient table
 
si je met autre chose que le fichier de destination des mails pour l'utilisateur, ca ne fonctionne plus.
 
merci.

Reply

Marsh Posté le 13-09-2004 à 17:33:25    

ah ok ;)


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:34:15    

Thanks a lot.

Reply

Marsh Posté le 13-09-2004 à 17:34:50    

it's allright :p


Message édité par Tomate le 13-09-2004 à 17:34:56

---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:35:08    

un champ user du type user@domaine.tld serait peut etre plus aproprié non ?


---------------
Intermittent du GNU
Reply

Marsh Posté le 13-09-2004 à 17:35:50    

oue mais radius


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:37:29    

bah un coup de concat  ou dans le genre :o
(regarde donc la gueule de ton  username dans ta base postfix et tu comprendras :o )


---------------
Intermittent du GNU
Reply

Marsh Posté le 13-09-2004 à 17:38:45    

hummm
bon ok je regarde :p


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:39:33    

pour moi ca fonctionne pas avec une valeur du type user@domaine.tld, dans ce cas le mail est pris en compte et ensuite j'ai un user unknown.
 
l'avantage c'est que je crée pas de base spécifique, je vais integrer directement le user dans la base radius et pointer postfix dessus.

Reply

Marsh Posté le 13-09-2004 à 17:40:21    

bah je vois rien de particulier :o


---------------
:: Light is Right ::
Reply

Marsh Posté le 13-09-2004 à 17:41:21    

moi j'ai bien user@domain et le chemin de mon maildir


---------------
:: Light is Right ::
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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