Olá, eu tenho um ambiente Ubuntu LAMP e estou tendo dificuldades para enviar emails utilizando o PHPMailer (biblioteca para envio de emails). No meu caso estou utilizando o PHPMailer para utilizar o servidor SMTP do GMail para o envio do email, então não é necessário configuração local com postfix etc.
De alguma maneira, o Ubuntu está bloqueando o PHPMailer de conectar-se ao servidor SMTP do Gmail, posso afirmar isso pois usei o mesmo script em ambiente Windows e em outro ambiente LAMP da Hostgator(hospedagem compartilhada) e funcionou perfeitamente. Pesquisando no Google vi que o problema pode ser firewall, SELinux ou apparmor bloqueando o acesso ao SMTP do GMail. No momento não estou utilizando nenhum firewall, nenhuma regra no iptables, o SELinux e o AppArmor nem sequer estão instalados.
Como disse, em ambiente Windows a mensagem é enviada, na hospedagem compartilhada da hostgator(linux) é enviada e no meu VPS Ubuntu o PHPMailer retorna o seguinte erro:
2014-09-20 07:41:43 SMTP ERROR: Failed to connect to server: Connection timed out (110) 2014-09-20 07:41:43 SMTP connect() failed. Message was not sent.Mailer error: SMTP connect() failed.
Segue código do PHPMailer que estou utilizando:
require("phpmailer/PHPMailerAutoload.php"); // path to the PHPMailer class.
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->Host = "smtp.gmail.com";
$mail->Port = "465";
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'ssl';
$mail->Username = "xxxx@gmail.com";
$mail->Password = "xxxxx";
$mail->From = "xxxx@gmail.com";
$mail->FromName = "Teste";
$mail->AddAddress("xxxx@live.com", "Teste Recipient");
$mail->AddReplyTo("xxxx@live.com", "Teste Name");
$mail->Subject = "Olá";
$mail->Body = "Teste de email";
$mail->WordWrap = 50;
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
exit;
} else {
echo 'Message has been sent.';
}
Onde o Ubuntu pode estar fazendo esse bloqueio sendo que não é configuração do PHPMailer, firewall, selinux ou apparmor? Também como posso ter certeza que o SELinux ou AppArmor estão desinstalados/desabilitados? Obrigado.
EDIT---
O problema parece estar relacionado a conexão com o SMTP do GMail, utilizei o comando telnet smtp.gmail.com 465 e o servidor não consegue se conectar. Meu firewall não tem nenhuma regra. O que pode estar bloqueando essa conexão?