I have an Apache server running on my Raspberry Pi. The Pi is behind a router, having local IP address 22.214.171.124. I use the Virtual Server feature of the router to allow traffic through ports 80, 21, 22 and 2000. My website connects to the Apache server through port 80. I use afraid.org for Dynamic DNS.
I also want to run a mail server on the same Pi and have chosen Citadel as the mail server. Since the Apache server is already using port 80, I have to use port 2000 for Citadel.
My problem is that I cannot send or receive e-mails through this server. I have almost no experience with mail servers so there's a good chance I have missed something really basic.
When checking the outbound SMTP queue, all the messages show:
DNS server returned answer with no data
When trying to send an e-mail to firstname.lastname@example.org from a Yahoo! address, the mailer daemon says:
Sorry, we were unable to deliver your message to the following address.
Remote host said: 550 Invalid recipient: email@example.com [RCPT_TO]
My top ideas for why it's not working are:
- My router is blocking the incoming ports. I don't actually know how to configure the virtual server to redirect incoming mail to port 2000 rather than port 80.
- My MX settings are not good. I'm pretty sure about this, but again, I have no idea what I should set the fields to.
- The citadel server is not set correctly. Other than adding my address (shnako.com) to "Local host aliases" and "Directory domains" I did not make any modifications.
I spent most of the day trying to make this work, without success, so any help is greatly appreciated.