PHP - PHPMailer. Could not authenticate

 
Vista:
sin imagen de perfil
Val: 58
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

PHPMailer. Could not authenticate

Publicado por Marta (39 intervenciones) el 08/06/2022 12:43:02
Buenas, siempre he usado PHPMailer.php para enviar emails, pero desde hace medio año tengo problemas.

Siempre habíamos usado este código y funcionó hasta finales de año.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
    require_once("class.phpmailer.php");
    require_once("class.smtp.php");
 
    $mail = new PHPMailer();
    $mail->IsSMTP();
    $mail->SMTPAuth = true;
 
    $mail->From = "mi cuenta de correo";
    $mail->SMTPSecure = 'tls';
    $mail->Host = "smtp.office365.com";
    $mail->Port = "587";  //
    $mail->Username = "mi cuenta de correo";
    $mail->Password = "contraseña";
 
 
    $mail->CharSet = "UTF-8";
    $mail->IsHTML(true);
    $mail->FromName = "Remitente";
    $mail->Subject = "Test";
 
    $mail->AddEmbeddedImage("../images/logo.jpg", "cabecera");
    $body  = 'robot';
    $mail->Body = utf8_encode($body);
    $mail->AddAddress("cuenta destinatario");
 
    if ($mail->Send())
        echo "ok";
    else {
        echo $mail->ErrorInfo;
    }

Contacté con soporte de Office365, me hicieron cambiar servidores, muchos días testeando, hasta que al final decidí enviar desde gmail, pues nos corría prisa. Usé el mismo código pero cambié los servidores. Funcionó hasta el lunes, que a partir de entonces da el error: SMTP Error: Could not authenticate.

1
2
3
4
5
6
$mail->From = "micuenta@gmail.com";
    $mail->SMTPSecure = 'ssl';
    $mail->Host = "smtp.gmail.com";
    $mail->Port = "465";
    $mail->Username = "micuentat@gmail.com";
    $mail->Password = "contraseña";

He leído que desde el 30 de mayo Google ha desactivado el uso de aplicaciones no seguras, no sé si va por ahí el tema. He mirado, aparece un mensaje como si siguiera activado, pero no me permite modificar.
Tambíen decir, que la primera configuración, en modo local desde mi casa funciona, en cambio, desde la empresa, no, también da el error de no poder autenticar.

Ya sé que el error es de usuario y contraseña, pero no. A través del navegador podemos acceder sin problemas a la cuenta de gmail, y por exchange tengo configurada la cuenta de empresa.

Me estoy volviendo loca. A alguien le ha pasado lo mismo? Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 58
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

PHPMailer. Could not authenticate

Publicado por Marta (39 intervenciones) el 08/06/2022 16:27:04
Bueno, de momento he solucionado el tema cambiando de cuenta de correo. No funciona ni gmail, ni office365, pero de un dominio privado sí. Aúnque quiisiera resolver el problema.

Graicas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ivan

PHPMailer. Could not authenticate

Publicado por Ivan (118 intervenciones) el 09/06/2022 11:40:18
Hola,

el tema de enviar correos a través de un dominio es un tema que, efectivamente, suele canviar a menudo y se está volviendo más restrictivo para prevenir el spam, pishing, y otras actividades fraudulentas, a costa del dominio que ofrece el servicio, que es quien paga los usos indebidos ingresando en blacklist, etc.

A mí personalmente me ocurre de vez en cuando en mis webs. Se pueden enviar y recibir emails entre usuarios a través de mis_dominios.com pero ni el remitente ni el destinatario pertenecen a ese dominio... Un candidato claro al SPAM !!

Como bién dices google ha eliminado el uso de sus servicios a aplicaciones de terceros https://support.google.com/accounts/answer/6010255?hl=es#zippy=

Los servicios de smtp.office365.com dices que te han hecho cambiar ciertas configuraciones.

Es posible que el problema esté relacionado con el registro SPF igual que en mi caso que, por si no sabes lo que es te dejo un par de enlaces.

https://ticket.cdmon.com/es/support/solutions/articles/7000064108-comprobaci%C3%B3n-spf
https://www.cdmon.com/es/blog/aprende-a-configurar-el-registro-spf-y-asegura-la-entrega-de-tus-envios-de-correo

Este registro "obliga" a que los emails que salgan de mi dominio pertenezan a mi dominio, por lo tanto ya no puedo poner el remitente que quiera y usar mi dominio como intermediario "oculto", la única solución que he encontrado es que todos los emails que salen de mi dominio en el from deben de ser [email protected] y es en el cuerpo del mensaje que inserto "Mensaje enviado por [email protected] a traves de NOMBRE DE MI WEB

Espero haberte aclarado tus dudas.

Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 58
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

PHPMailer. Could not authenticate

Publicado por Marta (39 intervenciones) el 09/06/2022 11:59:28
Buenas Iván, he estado hablando con soporte de Office365, ellos insistían que el problema era nuestro y de nuestro aplicativo y que ellos no tenian nada que decir.
A través de powershell me han demostrado que el servicio smtp de office365 funciona. Y yo, con un simple script le he demostrado que con su smtp no funciona, y con el smtp de otro dominio, sí.
Al final ha aceptado hacer una revisión y ha caído que ahora obligan a tener actualizado el protocolo tls a la versión 2. Ha ejecutado un script para eliminar esta restricción y ya funciona.
No tengo problema en actualizar dicho protocolo en nuestro propio servidor, pero usamos aplicativos externos, de contabilidad, facturación, ... a los que no les puedo pedir que actualizen.

Es como si fueran los dueños del mundo
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Ivan

PHPMailer. Could not authenticate

Publicado por Ivan (118 intervenciones) el 09/06/2022 18:23:19
Hola Marta,

ciertamente, hay tantas capas, protocolos y cifrados en un email que cuando falla ya tiemblas porque no sabes por dónde te van a salir ahora jeje

Me alegro que hayas encontrado el problema y, efectivamente, si de repente un día deja de funcionar sin que hayas hecho nada ... Por mucho que insistan el problema NO ES TUYO !!

Simplemente es que ha cambiado algo ...

Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 58
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

PHPMailer. Could not authenticate

Publicado por Marta (39 intervenciones) el 09/06/2022 18:24:56
Muchas gracias. Un apoyo siempre va bien, porqué el cliente no quiere estas explicaciones, sólo que le soluciones el problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

PHPMailer. Could not authenticate

Publicado por jose francisco (1 intervención) el 13/01/2023 18:38:11
me puedes decir como lo solucionaste por favor ya que yo lo quiero usar a traves del servidor exchange de mi empresa y me da error en la autenticacion
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PHPMailer. Could not authenticate

Publicado por Marta (39 intervenciones) el 13/01/2023 19:44:30
Buenas, no lo solucioné. Funciona un tiempo y luego deja de funcionar. Envío desde otro servidor. No encontré solución y te doy mi palavra que la busqué.

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar