dovecot_proxy for Multi-Server Setup email sync

Version 1.531

Feature
Finished

BETA With the introduction of the E-Mail clustering option a while back: https://www.directadmin.com/features.php?id=1745 This new feature allows you to add: dovecot_proxy=1 to the directadmin.conf on both the local and remote servers that are involved in the email clustering. When this is enabled, anytime a value is changed on the master server, it will locally save a dovecot proxy line to the local /etc/virtual/domain.com/passwd file. With regards to the sync, <a target=_blank href='https://www.directadmin.com/features.php?id=1745'>this will push the info to the remote box</a>, as before, but with dovecot_proxy=1 enabled remotely, it will also add the proxy into to the remote passwd file on the slave box, pointing to the master server's IP. This has the effect, such that you can in theory have the remote slave box as mail.domain.com, with all emails arriving there with smtp. On that slave box, when exim tries to save the email with lmtp, it will be redirected back to the master server to be saved, so email is saved locally. Clients can connect to either the master or slave box to check their imap. This task.queue option has been updated to rewrite the master data on the master box: echo "action=rewrite&value=email_passwd" >> /usr/local/directadmin/data/task.queue or: echo "action=rewrite&value=email_passwd&user=fred" >> /usr/local/directadmin/data/task.queue which makes one API per domain, pushing all master email accounts to the slave box. On the slave, for each account, it will either add the account, or update the password, just as if a client had done it through a browser (except the master proxy IP is set). This means all of the hook scripts are used, so the remote box can still use email_create_pre.sh, or email_change_pass_pre.sh normally (and post scripts) NOTE: the "passwd" field will be the crypted value, and not the plaintext password. If you rely on this, only the master will know the plaintext. But you'll know it's crypted because passwd_is_crypted=1 will be set in your .sh scripts.

Interested to try DirectAdmin? Get a 30-day Free Trial!