Setelah upgrade dari Roundcube 1.4.0 ke 1.4.3 muncul error
[14-Mar-2020 20:46:24 +0700]: <8tjoqvuv> PHP Error: SMTP server does not support authentication (POST /?_task=mail&_unlock=loading1584193583621&_framed=1&_lang=en_US&_action=send) [14-Mar-2020 20:46:24 +0700]: <8tjoqvuv> SMTP Error: Authentication failure: SMTP server does not support authentication (Code: ) in /var/www/domain.co.id/webmail/program/lib/Roundcube/rcube.php on line 1702 (POST /?_task=mail&_unlock=loading1584193583621&_framed=1&_lang=en_US&_action=send)
Pada kasus ini user tidak bisa mengirim emai, tetapi hanya bisa menerima email.
Cek changelog dari roundcube release notes, ada yang relevan, di 1.4.1
new defaults for smtp_* config options: Upon many requests and in order to get closer to the default setup of most SMTP servers, we changed the defaults as follows: // SMTP port (default is 587) $config['smtp_port'] = 587; // SMTP username (if required). %u will use the current username for login $config['smtp_user'] = '%u'; // SMTP password (if required). %p will use the current user's password for login $config['smtp_pass'] = '%p';
Dilihat dari error diatas, sebenarnya kita sudah bisa memastikan itu gagal waktu melakukan koneksi ke SMTP server. Karena ini adalah upgrade Roundcube, dan versi sebelumnya bisa mengirim email dengan baik, maka kesalahan di setting SMTP server bisa dianggap tidak ada.
Setelah cari-cari lebih lanjut, ternyata solusinya ada commit ini Explain difference between ssl:// and tls:// for default_host
Setting sebelumnya saya menggunakan
$config['smtp_server'] = 'localhost';
diganti menjadi
$config['smtp_server'] = 'tls://mail.domain.co.id';
sukses mengirim email.
Walaupun anda menggunakan multi domain, domain yang perlu di setting disitu adalah subdomain/domain SMTP Servernya.