#Step 1: Update /etc/postfix/main.cf
$ sudo vim /etc/postfix/main.cf
Add the following lines, anywhere really, but preferably under the relayhost section:
relayhost = smtp.gmail.com:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_use_tls = yes
smtp_sasl_mechanism_filter = plain
#Step 2: Create /etc/postfix/sasl_passwd
sudo vim /etc/postfix/sasl_passwd
Add the following information. Note update and <app_password> with your application password. This requires setting up 2FA on your Gmail account first.
See https://opensource.com/article/21/7/gmail-linux-terminal for more info.
smtp.gmail.com:587 <username>@<gmail.com>:<app_password>
#Step 3: Restart postfix
sudo chmod 600 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
sudo launchctl stop org.postfix.master
sudo launchctl start org.postfix.master
#Test
$ echo "Hello" | mail -s "Test" <someone>@gmail.com
#Troubleshooting
log stream --predicate '(process == "smtpd") || (process == "smtp")' --info