I have installed Postfix mail server on my Google Compute Engine instance and configured it with Google Apps SMTP relay service. This works great, and I can send e-mails out from my server.
The problem
When I send an e-mail to the same e-mail address as the e-mail address used to configure the Google Apps SMTP relay service, It does not receive.
I have tested this by:
echo "Test email description" | mail -s "Test mail" -a "From: info@mydomain.com" info@mydomain.com
When I tail the /var/log/mail.log
file you can see that the mail is sent, but when I check the inbox there is no e-mail received.
Sep 8 09:19:43 instance-1 postfix/qmgr[24365]: F12AE63011: from=<info@mydomain.com>, size=356, nrcpt=1 (queue active)
Sep 8 09:19:43 instance-1 postfix/local[14717]: F12AE63011: to=<info@mydomain.com>, relay=local, delay=0.02, delays=0.01/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Sep 8 09:19:44 instance-1 postfix/qmgr[24365]: F12AE63011: removed
My /etc/postfix/main.cf
file:
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mydomain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = mydomain.com
relayhost = [smtp.gmail.com]:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
# Use ipv4 protocol
inet_protocols = ipv4
# enable SASL authentication
smtp_sasl_auth_enable = yes
# disallow methods that allow anonymous authentication.
smtp_sasl_security_options = noanonymous
# where to find sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
# Enable STARTTLS encryption
smtp_use_tls = yes
# where to find CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
I have found the solution already. You need to edit your /etc/postfix/main.cf
file.
Comment the following line:
#mydestination = ...
And add the line:
mydestination =
Then reload postfix:
/etc/init.d/postfix reload