Could a mail server be blocking a domain? - email

Weird question here. Could a mail server be blocking a domain?
I ask because i am in the process of migrating to a new server and i am testing out a few email accounts.
the domain x.com is hosted on server 1
the domain y.com is hosted on server 2
the domain z.com is hosted on server 2
If i email from x.com to y.com, the server replies with
550 sorry, no mailbox here by that name. (#5.7.17)
However, if i send from x.com to x.com also x.com to z.com they send fine.
y.com and z.com are on the server, so i don't see an issue with an IP block or anything like that.

Generally this error happens when mail was hosted on the server at some point, but has since been moved to an external mail server. Qmail will still try to deliver the message locally and fail with this error:
This_address_no_longer_accepts_mail
To correct this check the following two files for the domain in question:
/var/qmail/control/rcpthosts
/var/qmail/control/virtualdomains
Remove the line with this domain from both files then restart Qmail:
/etc/init.d/qmail restart
From http://toastergremlin.com/?p=181

Related

cPanel 'No such user here'. Local account issue?

I have a website hosted outside the organization. The mail server to recieve the message is inside the organization. The website submits a simple form to email using PHP mail function. Works on every domain tested for the recipient except for ones internal to the domain.
So website is www.domain.com. Mail server is mail.domain.com. Hosted at separate sites. When www.domain.com wants to send a message to user#domain.com it should lookup the mx record and notice that mail.domain.com is at another location and forward the message.
If I configure it to send to user#otherdomain.com, the message is successfully sent and received. But sending to the same domain responds with 550 error 'No such user here'. So I'm wondering if the webserver thinks it is supposed to be the recipient of the mail, and thus responds with 'No user here' because, frankly there is no user configured there.
So does anyone know what cpanel/whm settings need to be added/adjusted to allow this server to know that it is not responsible for mail exchanging for this domain. I do have the mx record setup properly, but don't know if it also requires an A record for the address. Any help much appreciated.
I did notice others having the same issues, but no solutions were actually proposed, so I figured I would make my own question, and see if it get's a good answer for others too that may experience the same issue.
It looks like your routing settings are incorrect. Navigate to cPanel >> MX Entry and verify that the routing setting is Remote Mail Exchanger
As the mails are to be delivered externally, setting this as Local Mail Exchanger will make cPanel think the mails are setup locally and cPanel will try to deliver mails locally. As there are no local mail accounts configured with that name, it bounces with the mentioned error.
I would suggest avoiding sending directly to the MX. Submit your message to a local mail server and let it relay to the MX for you. If you send using PHPMailer with SMTP you will get much better feedback on deliveries. As for what cPanel is doing, check the local mail server log, usually in /var/log/mail.log.
You have to change the setting from local to "Remote Mail Exchanger" in dns zone file. and also create mail account at remote location site.

VestaCP/exim mail server returns 550 smtp auth requried

I have just installed VestaCP on a fresh CentOS VPS.
I have set up email for one domain. All mail sent to that domain bounces with the error 550 smtp auth requried
I have commented out the following;
deny message = smtp auth requried
from exim.conf
I have turned off anti-spam.
I still get the bounce with this message.
Specifically, if I send an email from a gmail account google responds:
Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the server for the recipient domain foobar.tld by mail.foobar.tld. [x.x.x.x].
The error that the other server returned was:
550 smtp auth requried
Any experience with this? I have seen the problem on a number of threads but have not found a solution.
I partially solved the problem. It only occurred when sending mail to the smtp server from a domain that was hosted on the same server for web but not for email. When I sent email from a domain that had nothing to do with any domains hosted on the same server as the exim instance, then it got through. I still can't send email from the domain that was causing the problem and I would like to, but I can work around it.
So to be clear in case anyone reads this:
domain1 web is hosted on server1
domain1 email is hosted on google's servers
domain2 is hosted on server1 for web and email
exim is running on server1
when I send email from thunderbird via google's server from email#domain1 to and email#domain2 the exim instance asks google's smtp server for authentication even though the mail is being delivered to a mailbox in its list of domains it can deliver to on the same physical server where it is running.
I suspect that it is suspicious of the from address, which it shouldn't be since the mx records indicate that it does not host mail for that domain.

Will email go down when website goes down if email is hosted elsewhere?

We are hosting email with a hosted exchange provider so it is separate from the website.
The domain is registered with 123 reg and the nameservers are pointing to a server where the web files and database sit. From our control panel we have configured the appropriate MX/DNS entries to point the email to the hosted exchange server.
If our server went down where our website sits, will our email go down too because the MX records and DNS entries are hosted on this server?
Thanks
It depends. DNS is usually cached, so any email server that recently sent you a message and the TTL hasn't expired, should be able to reach you. Any new requests could go unanswered.
That being said, what I described will not provide any reliable redundancy. The best solution is to have another authoritative dns server in a separate location in case your server goes down.
It sounds like you're worried about missing messages. If your downtime isn't more than 24 hours you should be ok. Most email servers will try several times to send a message before it's returned.

How to transfer old email message from PLESK to cPanel

I have redirected a domain from PLESK to another server (cPanel) and also I have transferred the code from PLESK TO cPanel. Now my website is running well. I have created my email on cPanel and i am using webmail to access my email account.
But want to transfer old email messages from PLESK to cPanel. I have searched and found that email messages are stored on PLESK on this location:
# /var/qmail/
Is there any way to transfer email email messages from PLESK to cPanel?
Thanks in advance for any replies.
You can fetch mail from your PLESK server and have it imported into cPanel.
Simply login to your cPanel
Access your webmail and access Horde
Once logged in, on the left hand side, click OPTIONS then Mail
On the center of the screen under “Message Options” click “Fetch Mail”
Create a new account, enter your details from your email account located on your PLESK server (for the incoming/outgoing servers, use your PLESK server hostname)
Email will then begin to be downloaded into your cPanel inbox.
That should do the trick :)
Horde doesn't have the Fetch Mail option anymore.
So, the easiest solution is manual transfer using Outlook or Thunderbird.
How to move email from any server into cPanel use an IMAP client like Microsoft Outlook or Thunderbird?
First, configure each new email account on cPanel (including any sub-folders). Next, configure your IMAP client (Outlook or Thunderbird) with each email account on each server.
One account for the old account (if it is not already there) and one account for the new account created with cPanel.
You may find it easier to use the actual IP addresses of each respective server to avoid name resolution issues.
Replace example.com with IP address (use ping example.com on your CMD console to find out the IP of the old server)
After that, you just need to drag-and-drop the old messages from the old account into the new account on Outlook or Thunderbird and delete the old account.
When finishing with all accounts, change your domain DNS to the new cPanel hosting server and you're done.
It will be downtime?
Depends on the number of email boxes you have to transfer and on other websites or applications you have to move from the old domain name. Normally it should work fast enough to not have any problems but I suggest doing this after working hours.

Mail server redirect to another server

I have a site, which has a server with "Parallels Plesk Panel" installed. I want to send an email from that site a "Contact Us" message to info#domain.com email.
The problem is that this email was already created by one of the programmers using the google mail system (apparently you can create accounts there with a domain name different from gmail.com).
So now, the server rejects my message, telling me that it can't find an email with this name. It works fine when I send to any other domain, but when sending to the same one, it fails. I've created another email info2#domain.com and sent emails there and it works.
My question now is, how do I send emails to the existent info#domain.com which is already created in gmail without making the server block me. One of the options I saw at this panel is to redirect the request for that email to another mailing system (and to specify its IP). Maybe that would help if I would to put there gmails IP?
Thanks.
EDIT:
Using my contact us form I am sending an email to info#domain.com. I get an SMTP error 550, can't find the mail box. When sending to anything but #domain.com it works. When adding that email to my server, it is also fine.
Now, the previous programmer already created info#domain.com, but not with our plesk panel, but using gmail server. Apparently, using gmail you can create an email of the type info#domain.com and not just info#gmail.com. The obvious problem is then that I try to send to this email. It sees that the server is domain.com and tries to find it there (same domain as the site from which I send the message). It fails and gives me the 550 error.
I want the server to send the email with that message to info#domain.com which is actually on gmail.
if I understand correctly, your problem is that two servers think they host the maildomain: your plesk server and gmail.
solution: disable local mail delivery for that domain on the plesk server and make sure plesk can correctly resolve the mx records of that domain , runing dig mx +short domain.com on the plesk server should return a google owned hostname, not the local hostname.
I don't own a plesk server, so I can't tell how how exactly to disable the mail domain, but a quick google search returns: http://www.serveridol.com/2011/03/16/disabling-email-service-for-a-domain-in-plesk/
http://search.yahoo.com/search?p=email+form+service&ei=UTF-8&fr=chr-greentree_ff&type=827316
try a remote email form service. most hosting companies' mail servers are local. to do this, you would have to make your own .htaccess file which contains php.ini mail server settings. i THINK this is correct. you can install php yourself to see what those settings are.
this is something you will probably have to do through the web hosting control panel.
and by the way, XHTML is served up as HTML unless you configure the server to serve XHTML up as XHTML. so use HTML when possible unless you know how to do that. here's how.
http://jesusnjim.com/web-design/setup-test-server.html