Foros del Web » Administración de Sistemas » Unix / Linux »

Courier SASL + Postfix

Estas en el tema de Courier SASL + Postfix en el foro de Unix / Linux en Foros del Web. Hola grupo, Tengo un servidor de correo y estoy haciendo relay a gmail. Lo que no logro hacer es que los usuarios y contraseñas para ...
  #1 (permalink)  
Antiguo 30/07/2008, 17:16
Avatar de Maxi.Net  
Fecha de Ingreso: abril-2005
Ubicación: R.M. Talagante, Chile!!
Mensajes: 295
Antigüedad: 19 años
Puntos: 2
Courier SASL + Postfix

Hola grupo,

Tengo un servidor de correo y estoy haciendo relay a gmail. Lo que no logro hacer es que los usuarios y contraseñas para autenticar en gmail los saque de una consulta a MYSQL.

Quiero que el "smtp_sasl_password_maps" recoga los users y password de la consulta generada por el archivo:

Código:
# mysql-sasl-passwd.cf
user = user
password = pass
dbname = correo
table = relay
select_field = usuario # = usuario:passwd
where_field = smtp # campo que tiene el "smtp.gmail.com" en la tabla relay
additional_conditions = and email = '%s'
hosts = unix:/var/run/mysqld/mysqld.sock
En el main.cf tengo:

Código:
smtp_sasl_password_maps = mysql:/etc/postfix/mysql/mysql-sasl-passwd.cf
relayhost = smtp.gmail.com
El problema esta en que cuando hace la consulta sale de esta forma:

Código:
SELECT usuario FROM relays WHERE smtp='smtp.gmail.com' and email = 'smtp.gmail.com'
Y la idea es que quede:

Código:
SELECT usuario FROM relays WHERE smtp='smtp.gmail.com' and email = '[email protected]'
Si existe otra forma de hacerlo con MYSQL se agradece.

Saludos y gracias por su atención.
__________________
Amtez de enpezar kom otro idioma,
escrivamos vien el nueztro i como corezpomde. Jracias.
  #2 (permalink)  
Antiguo 31/07/2008, 06:08
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 19 años, 7 meses
Puntos: 47
Respuesta: Courier SASL + Postfix

Uau, que buena idea, no se cómo no se me ocurrió antes.
En el man de mysql_table de Postfix recomiendan usar el el parámetro query en vez de los select_field, table, where_field y additional_conditions.

Probá algo asi:

Código:
# mysql-sasl-passwd.cf
user = user
password = pass
dbname = correo
table = relay
hosts = unix:/var/run/mysqld/mysqld.sock
query = SELECT usuario FROM relays WHERE smtp = '%s' AND email = '%u@%d'
Si funciona, avisame que lo implemento yo,
Esto está buenisimo para evitar el limite de 500 relays por dia de las cuentas de Google.

Saludos.

PD: Amo Postfix!!!!
PD2: Y a mi novia tambien
__________________
¡Volviendo a la programación!
  #3 (permalink)  
Antiguo 31/07/2008, 09:08
Avatar de Maxi.Net  
Fecha de Ingreso: abril-2005
Ubicación: R.M. Talagante, Chile!!
Mensajes: 295
Antigüedad: 19 años
Puntos: 2
Respuesta: Courier SASL + Postfix

No funciona.

%s = smtp.gmail.com
%u = smtp.gmail.com
%d = Cuando lo uso da error. En el log de MYSQL aparece quit al intentar ejecutar la consulta.

Me imagino que será por el contexto de la consulta, por ejemplo, cuando los parametros los uso en virtual_alias_maps el %s es igual a "[email protected]" lo cual no sucede en smtp_sasl_password_maps

Saludos
__________________
Amtez de enpezar kom otro idioma,
escrivamos vien el nueztro i como corezpomde. Jracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:22.