EHLO localhost
[250] xxxxxxxxxxxxxxxxxxxx
[250] PIPELINING
[250] SIZE 10485760
[250] VRFY
[250] ETRN
[250] ENHANCEDSTATUSCODES
[250] 8BITMIME
[250] DSN
[250] SMTPUTF8
[250] CHUNKING
Could not send the test email.
Error: SMTP server did not accept the connection or trying to connect to non TLS SMTP server using TLS.
root@7938369eae56:/usr/share/php/passbolt# echo $EMAIL_TRANSPORT_DEFAULT_TLS
false
root@7938369eae56:/usr/share/php/passbolt#
For some reason using the CE Docker image I am unable to disable TLS
Running: [3.2.0] (latest) but noticed the same in the previous version.
EHLO localhost
[250] xxxxxxxxxxxxxxxxxx
[250] PIPELINING
[250] SIZE 10485760
[250] VRFY
[250] ETRN
[250] ENHANCEDSTATUSCODES
[250] 8BITMIME
[250] DSN
[250] SMTPUTF8
[250] CHUNKING
Could not send the test email.
Error: SMTP server did not accept the connection or trying to connect to non TLS SMTP server using TLS.
root@af4858aece8d:/usr/share/php/passbolt# echo $EMAIL_TRANSPORT_DEFAULT_TLS
null
root@af4858aece8d:/usr/share/php/passbolt#
I set them in the docker-compose file, the container understands them as you can see in the last command. If I do an echo of the environment variable it is there but Passbolt does not use it for the email send function.
I tried that too, same result. The container understands the variable, otherwise it would not show with the echo command. The passbolt config file is missing the variable somewhere I guess.
If I disable TLS in /usr/share/php/passbolt/vendor/cakephp/cakephp/src/Mailer/Transport/SmtpTransport.php
It works by commenting out the part
try {
$this->_smtpSend(“EHLO {$host}”, ‘250’);
/* if ($config[‘tls’]) {
$this->_smtpSend(‘STARTTLS’, ‘220’);
$this->_socket()->enableCrypto(‘tls’);
$this->_smtpSend(“EHLO {$host}”, ‘250’);
}
*/ }
This value “$config[‘tls’]” is probably not functioning correctly.