Two possible solutions:
1) Relay all mails from Master server to Slave server with global transport or per-domain transport, then all incoming mails will be saved/stored on Slave server.
iRedMail supports per-domain transport and per-user transport by default, of course you can config Postfix to use a global transport setting.
For example:
# File: /etc/postfix/transport
your_domain.com smtp:[IP_ADDRESS_OF_SLAVE_SERVER]:25
# OR:
your_domain.com smtp:[FQDN_DOMAIN_NAME_OF_SLAVE_SERVER]:25
Reference:
- http://www.postfix.org/postconf.5.html#transport_maps
- http://www.postfix.org/transport.5.html
With iRedAdmin-Pro, you can easily configure per-domain or per-user transport. Screenshot attached below.
If you don't have iRedAdmin-Pro, you can also manage per-domain/per-user transport with phpLDAPadmin or phpMyAdmin.
- For OpenLDAP backend, it's stored in attribute "mtaTransport" in domain object or user object.
- For MySQL backend, it's stored in column "domain.transport" (per-domain transport) or "mailbox.transport" (per-user transport) in database "vmail".
2) Try "fetchmail" on slave server:
* On slave server: Fetch mails from master server, deliver fetched mails into virtual mail users hosted on slave server.
* Clients fetch mails from slave server with Thunderbird.
Fetchmail: http://www.fetchmail.info/
Obviously, solution #1 is simpler and easier.
Per-domain transport setting in iRedAdmin-Pro:
Per-user transport setting in iRedAdmin-Pro: