OVH Community, your new community space.

No salen correos con función Mail de PHP


Power
05/02/2009, 10:58
Bueno, una aclaración.
Eso me vale a mí que tengo un servidor físico.

En tu caso con un servidor virtual montado sobre uno físico, la cosa de las IPs puede variar.
Eso dependerá de cómo gestione y enrute VMWare el tráfico que le lleguen a las IPs y a determinados puertos (por ejemplo, puerto 53 - DNS).

Saludos

Power
05/02/2009, 10:54
Cita Publicado inicialmente por fametown
Algo que todavía no entiendo del tema DNS es...

Por ejemplo:

Si en mi caso solo tengo un servidor DNS en el WHM (Centos+Cpanel)... ¿no tendría que crear solo el ns1.fametown.com apuntando a la IP failover del Centos+Cpanel?

En el servidor dedicado (que tiene la IP fija) no hay software DNS funcionando... que yo sepa.
En el registro de los dominios, se exige tener dos DNS.
Y que esos DNS tengan distinta IP.
Pero nadie te obliga a que estén en distinta máquina.

El servidor DNS de tu máquina es único.
Y atiende tanto a las peticiones que se hagan por una IP principal como por una IP FailOver.

Con la ventaja de que, además la IP principal y las IP FailOver de OVH son de distinto rango, con lo que si chequeas tu dominio (por ejemplo en www.intodns.com) no te dará un aviso de que los dos DNS son del mismo rango.

Saludos

Power
05/02/2009, 10:43
Cita Publicado inicialmente por fametown
He cambiado este dato... pero con la diferencia que no me deja poner -all... solo ~all.
No entiendo lo de que no te deja poner -all.
Al editar una zona DNS, en un registro TXT puedes poner lo que te venga en gana
(Eso sí, en WHM -> DNS Functions -> Edit DNS zone el contenido de los registros TXT hay que ponerlos entre comillas)

Cita Publicado inicialmente por fametown
¿Este cambio lo tendría que hacer por cada dominio en el cPanel?
En WHM -> DNS Functions -> Edit Zone Templates en los modelos standard y standarvirtualftp puedes poner un registro TXT para que todos los dominios que se vayan añadiendo tengan ya ese registro para SPF.
Sería:
Código:
%domain%. IN TXT "v=spf1 a mx ip4:XX.XX.XX.XX include:aspmx.googlemail.com -all"
Si tienes ya muchos registros añadidos, para cambiarlos, podrías hacerlo con:
Código:
replace "v=spf1 include:aspmx.googlemail.com ~all" "v=spf1 a mx ip4:XX.XX.XX.XX include:aspmx.googlemail.com -all" -- /var/named/dominio.com.db
Y después service named reload o reiniciar el servidor DNS desde el WHM.

Saludos

fametown
05/02/2009, 10:31
Algo que todavía no entiendo del tema DNS es...

Por ejemplo:

Si en mi caso solo tengo un servidor DNS en el WHM (Centos+Cpanel)... ¿no tendría que crear solo el ns1.fametown.com apuntando a la IP failover del Centos+Cpanel?

En el servidor dedicado (que tiene la IP fija) no hay software DNS funcionando... que yo sepa.

fametown
05/02/2009, 10:15
He cambiado este dato... pero con la diferencia que no me deja poner -all... solo ~all.

¿Este cambio lo tendría que hacer por cada dominio en el cPanel?

Power
05/02/2009, 10:14
Hola,

Se han cruzado nuestras respuestas.

La casilla "Always accept mail locally...", en tu caso, no debe estar marcada.

Yo como DNS de todos mis dominios uso:
ns1.midominio_principal.com y ns2.midominio_principal.com

En el registrador donde tengo registrado midominio_principal.com tengo creados dos host:
ns1.midominio_principal.com con la IP principal de mi servidor
ns2.midominio_principal.com
con una IP FailOver de mi servidor

Así no dependo de servidores DNS ajenos

Saludos

Power
05/02/2009, 10:08
Hola de nuevo, fametown

Otra cosa:

Miro los DNS de tu dominio fametown.com y veo:
Código:
fametown.com    IN    SOA    
server:    dns12.ovh.net
email:    tech@ovh.net
serial:    2009020402
refresh:    86400
retry:    3600
expire:    3600000
minimum ttl:    86400    86400s    (1d)
fametown.com    IN    NS    dns12.ovh.net    86400s    (1d)
fametown.com    IN    NS    ns12.ovh.net    86400s    (1d)
fametown.com    IN    MX    preference:    10
                            exchange:    aspmx2.googlemail.com   86400s (1d)
fametown.com    IN    MX  preference:    1
                            exchange:    aspmx.l.google.com   86400s  (1d)
fametown.com    IN    MX preference:    5
                            exchange:    alt1.aspmx.l.google.com   86400s (1d)
fametown.com    IN    MX preference:    5
                            exchange:    alt2.aspmx.l.google.com  86400s   (1d)
fametown.com    IN    A    94.23.81.130    86400s    (1d)
fametown.com    IN    TXT    v=spf1 include:aspmx.googlemail.com ~all    600s    (10m)
No me convence tu registro TXT para SPF.
Yo incluiría a y mx para que se den como válidos los correos que se envíen también desde el servidor (no sólo los que se envíen desde Google).
Y en vez de ~all yo pondría -all
Con ~all no se define claramente lo que se debe hacer con los emails que no cumplan esas condiciones.
En cambio con -all se dice que no son válidos los que no cumplen una de esas reglas.

Yo lo pondría así:
Código:
fametown.com    IN    TXT    v=spf1 a mx ip4:XX.XX.XX.XX include:aspmx.googlemail.com -all
Donde XX.XX.XX.XX sería la dirección IP principal del servidor (no la IP FailOver)

Saludos

fametown
05/02/2009, 09:58
Lo tengo en la misma máquina si... he cambiado lo que me comentas pero sigue sin funcionar.

Te comento por si te sirve de orientación porque seguro que lo tengo mal.

Todas las DNS de los dominio las gestiono con los servidores que ofrece OVH (ns12.ovh.net, ns13.ovh.net, ...etc) porque me es muy cómodo con el MoM hacer cambios en ellos.

Ahora... dentro del WHM tienes que configurar al menos dos NameServers... y recomienda que el primero sea la misma máquina.

¿Que he de poner en estos NameServers?

Seguro que tengo mal el tema de DNS en el WHM y no sabe qué hacer con el correo que va a dominios que el mismo tiene configurados. (he marcado la casilla que me comentas pero nada)

¡Mil gracias maestro!

Power
05/02/2009, 09:40
Cita Publicado inicialmente por fametown
El problema lo estoy teniendo con cualquier cuenta de correo que sea de un dominio que tenga alojado en el mismo servidor.
¡¡¡ Ah, bueno !!! Eso ya es otra cosa.
Eso ya son temas locales.

El dominio fametown.com ¿lo tienes hospedado en el cPanel que tienes montado sobre el VMWare o en la misma máquina pero fuera del VMWare?

Si está dentro de ese cPanel, comprueba en WHM -> DNS Functions -> Edit DNS zone si tienes marcada "Always accept mail locally..."

Saludos

fametown
05/02/2009, 09:27
El problema lo estoy teniendo con cualquier cuenta de correo que sea de un dominio que tenga alojado en el mismo servidor.

Todos los correos de mis dominios los gestiono con Google Hosted... y si desde el CentOs+Cpanel intento enviar un correo a un loquesea@dominio.com (estando la web de ese dominio en el CentOs+Cpanel) no me llegan.

Si lo mando a cuentas ajenas al server... todo OK.

¿Sabrías donde configurar para permitir el envío de correos?

Mil gracias

Power
05/02/2009, 09:10
Cita Publicado inicialmente por fametown
Arggg... he probado a mandarme a una cuenta de @gmail.com y va perfectamente... pero si me la mando a @fametown.com (que es un Google Hosted) NO VA !!!

¿Alguna idea?
Si llegan bien los correos a Gmail, el correo va bien.
El tema de que algunos correos a otros dominios no lleguen bien puede ser por temas de SPF o porque no incluyes remite de un dominio real hospedado en la máquina.

Saludos

fametown
05/02/2009, 09:01
Arggg... he probado a mandarme a una cuenta de @gmail.com y va perfectamente... pero si me la mando a @fametown.com (que es un Google Hosted) NO VA !!!

¿Alguna idea?

fametown
05/02/2009, 08:58
Hola Power!

He probado desde línea de comandos en el CentOs y no salen los correos.

No me da ningún error en pantalla... pero no llegan.

El CPanel está actualizado.

Power
05/02/2009, 08:51
Hola,

Desde la línea de comendos de tu sistema CentOS montado sobre VMWare ¿puedes enviar emails con la función mail?

Si eso funciona, comprueba tu php.ini
Mira si tiene activa una línea como:
sendmail_path = "/usr/sbin/sendmail -t -i"

Y comprueba que ese sendmail es un enlace simbólico al programa de correo (en cPanel suele ser Exim)

Si todo está correcto, prueba un script en PHP con una única línea con la función mail() de PHP.

Saludos

fametown
05/02/2009, 07:50
Muy buenos días a todos.

Ayer terminé de poner a punto un CentOs 5 + CPanel sobre una máquina VMWare Server 1.8 y todo va como la seda... excepto... que los formularios PHP que hacen envío de correo con la función mail() de PHP no salen.

Desconozco donde mirar/toquetear... ¿Alguna ayuda/orientación?

Mil gracias!!!