Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
AlternateAccount
Apr 25, 2005
FYGM
Problem description: Setup a Cenos 7 based postfix/dovecot e-mail server. It appears to work fine, I can connect to it alright. If I try to send an outgoing e-mail to external recipient, /var/log/maillog shows:
code:
Apr 18 15:36:35 myhostnameishere postfix/smtp[12952]: 509BE61CBE: to=<externaltestaddress@me.com>, relay=mx2.mail.icloud.com[17.172.34.11]:25, delay=1.9, delays=0.05/0.01/0.63/1.2, dsn=2.5.0, status=sent (250 2.5.0 Ok.)
The e-mail never arrives. Also, I an send e-mail from the outside to a mailbox on my server. I never get any kind of bounceback or error, but it's not showing up in the user's mailbox. Am I missing something obvious?
There's no filtering

Attempted fixes: Restarted postfix/dovecot. No firewall is running. IP and domain are all green for blocklists. Can't think of anything else.

Recent changes: Just installed this, it's never worked. I DID have a similar setup working not long ago, but I reloaded the server to do some different stuff.

--

Operating system: CentOS 7 64-bit

System specs: Simple VPS

Location: What country are you in?

I have Googled and read the FAQ: Yes

Adbot
ADBOT LOVES YOU

CaptainSarcastic
Jul 6, 2013



Who is your ISP? A lot of them block port 25 and others in order to prevent people from running email servers on individual accounts. The log you posted appears to show success on port 25, but I'm not sure how a block at the ISP level would look there.

AlternateAccount
Apr 25, 2005
FYGM

CaptainSarcastic posted:

Who is your ISP? A lot of them block port 25 and others in order to prevent people from running email servers on individual accounts. The log you posted appears to show success on port 25, but I'm not sure how a block at the ISP level would look there.

It did successfully send messages during a previous installation and I have confirmed with the hoster that no filtering is present.

I bulldozed the whole box and started over, and now I can RECEIVE messages, but sending still gives success messages to multiple different domains but no actual delivery. I assume receiving messages means both postfix and dovecot are working properly, so I am fully confused at this point.

telcoM
Mar 21, 2009
Fallen Rib

AlternateAccount posted:


The e-mail never arrives. Also, I an send e-mail from the outside to a mailbox on my server. I never get any kind of bounceback or error, but it's not showing up in the user's mailbox. Am I missing something obvious?


Does your domain have SPF records in the DNS?
If you're unsure, run (replace example.net with the name of your actual DNS domain):
code:
$ dig +short example.net TXT @8.8.8.8
If you get back a line that starts with "v=spf1", your domain has a SPF record that identifies valid outgoing email servers from that domain.
It might specify IP addresses explicitly, and/or it might include "+mx" indicating that the servers within your domain with MX records associated with them are also valid email senders.
In that case, check the MX records too:
code:
$ dig +short example.net MX @8.8.8.8
If you have set up a SPF record for your domain at some point, and haven't updated it to match your current server installation, that might be where the problem is.

You said you've already checked your IP and domain against blocklists, but have you checked that your server has a valid _reverse_ DNS mapping?
code:
$ dig +short yourhostnameishere.example.net @8.8.8.8
should return your IP address, and
code:
$ dig +short -x your.IP.addr.ess @8.8.8.8
should return the same hostname as you used with the previous command, with an extra dot at the end, like "yourhostnameishere.example.net."

Failing this old test (at least 20 years old at this point!) gets your email treated as "coming from some spammer server that doesn't even have a proper domain registration" - and today, that means your outgoing emails will very likely go to /dev/null without any error reply.

Note that all the "dig" commands I showed here have a "@8.8.8.8" at the end. That tells the "dig" command to contact Google's public DNS server and have it query your domain - this way, you'll get an idea of how your domain actually looks "from the outside". If some of the answers are not what you expect, try the commands again without the "@8.8.8.8" at the end - if the answers change when omitting the "@8.8.8.8", you have found a DNS data propagation problem.

  • Locked thread