I have postfix and dovecot installed on a Centos 6.4 production (www.bw.co.uk) machine. The intent is to send all system and transactional messages and collect bounces. The email id's that resulted in a bounce are then flagged to prevent site from sending further messages to these id's.
I have the necessary SPF records setup on the DNS and PTR records setup on my hosting providers end. My MX records point to a different mail server where our staff sends and receives email.
My issue is though I have been able to send mail from the production machine I am unable to read bounces using my php snippet. Actually I do not even know if the bounces are reaching the machine!
I have a similar setup on my test (www.st.biz) machine with the same hosting provider the MX, SPF and PTR records are setup in a similar fashion i.e. the MX records point to another mail server where the staff sends and receives mail. On the test machine I am able to read the bounces using the PHP program.
The postfix logs /var/log/maillog on the production machine indicates a single bounce which was not initiated by the php program that send out the transactional messages
Mar 3 03:15:03 bw postfix/smtp[22338]: 09420120CA3: to=, relay=mail.st.in[999.999.999.999]:25, delay=0.9, delays=0.05/0.02/0.43/0.41, dsn=4.7.1, status=deferred (host mail.st.in[999.999.999.999] said: 451 4.7.1 Please try again later (in reply to DATA command))
Any idea what could be wrong?
Answer
Bounces will be returned to the relay system. You must arrange for it to forward the bounces back to your system for processing. It may be simpler to process the bounces on it than getting the bounces forwarded back to your system.
Do use a specific sending email address of the form "donotreploy@example.com". It should be in an appropriate domain or sub-domain for your application.
In normal processing, you can expect some email to remain queued for a long time before being bounced. Normally, this will be in the range of 4 to 7 days.
Some systems will accept the mail before deciding whether to deliver it or not. If they are well behaved you will not see bounces from them as they would risk generating backscatter spam if they did send a bounce message.
EDIT: I would expect your email to be sent using the MX server which appears to be a different server than your web server. (Email sent from www.
domains is unusual, and in my experience likely spam.) Using a second domain on the same server to send mail might be more appropriate. Neither of the domains you describe appear to be valid, so I can't verify your configuration.
If you want the bounces to remain on your web server, use it as the MX for itself, or just omit the MX record. Configure a postmaster
address that can be used to send information back about configuration issues. Likewise an abuse
address is recommended so that abuse reports can be sent to you. Both of these can be forward to users on the MX domain you refer to.
Comments
Post a Comment