Yes, I do something similar (with Amazon SES in my case) but only for domains I know are problematic (Microsoft-hosted domains are the main difficulty - I've never had issues with eg Gmail).
Well, generally you need 2 different programs regardless. Usually an SMTP server for accepting and storing emails and a IMAP server for clients to connect to and read stored emails.
For the parent post, you configure an outgoing SMTP relay
You could do it any way you like, but it you have your own mail server, just configure it to route specific recepient domains (or all domains, this is called a "relayserver" in the postfix documentation) to a specific mail server. Just remember to flag your desired outgoing mail servers as approved for your domain (in the SPF record).
It's moslty due to how the protocol works. Sending and Receiving are asynchronous and may or may not follow the same path.
When sending the other side is the server, when receiving, you are the one. The protocol also has the concept of relaying, where message can go trough intermediary nodes.
So you can set one server for receiving email (yours) and another one for sending (smtpgo).
For actually reading, the server for receiving need to deliver the message (either built-in feature or through a program) to the correct mailbox. That would probably means writing it on disk somewhere. And then you need to use a mail user agent (MUA) to read that file. Protocol like imaps and pop3 are for transfering your inbox to another computer, not for receiving or delivering email.
Yes, I do something similar (with Amazon SES in my case) but only for domains I know are problematic (Microsoft-hosted domains are the main difficulty - I've never had issues with eg Gmail).
How do this work? Do you need to use two different programs to send and read email?
Well, generally you need 2 different programs regardless. Usually an SMTP server for accepting and storing emails and a IMAP server for clients to connect to and read stored emails.
For the parent post, you configure an outgoing SMTP relay
Iirc called smarthost in postfix
You could do it any way you like, but it you have your own mail server, just configure it to route specific recepient domains (or all domains, this is called a "relayserver" in the postfix documentation) to a specific mail server. Just remember to flag your desired outgoing mail servers as approved for your domain (in the SPF record).
It's moslty due to how the protocol works. Sending and Receiving are asynchronous and may or may not follow the same path.
When sending the other side is the server, when receiving, you are the one. The protocol also has the concept of relaying, where message can go trough intermediary nodes.
So you can set one server for receiving email (yours) and another one for sending (smtpgo).
For actually reading, the server for receiving need to deliver the message (either built-in feature or through a program) to the correct mailbox. That would probably means writing it on disk somewhere. And then you need to use a mail user agent (MUA) to read that file. Protocol like imaps and pop3 are for transfering your inbox to another computer, not for receiving or delivering email.