How to resolve email error 550 in cPanel/WHM Linux servers (550: No such user here)
- 1. 1. Check if the Email Account Exists
- 2. 2. Duplicate sender account in recipient server
- 3. 2. Verify MX Records
- 4. 3. Check Email Routing Configuration
- 5. 4. Review Exim Logs for Details
- 6. 5. Check Local Domains File
- 7. 6. Confirm DNS Propagation
- 8. 7. Check the Catch-All/Default Email Address
- 9. 8. Review SPF and DKIM Records
- 10. 9. Mail Client Configuration
- 11. 10. Email Forwarders or Aliases
- 12. 11. Contact Support or Review Server Logs
The “550: No such user here” error in cPanel/WHM typically occurs when an email is being sent to a recipient address that does not exist on the server. This can happen for various reasons, such as misconfiguration, DNS issues, or incorrect email routing settings. Below are some common causes and solutions to resolve this error:
1. Check if the Email Account Exists
When a user tries to send mail through the server, the sending mail account should be present on the server. In domain migrations that are not done properly, the email accounts may be missing.
The customer would try to connect using the old email username, but the server would return an error as it could not find a matching account. Such situations can be quickly fixed by creating the relevant email accounts.
In cPanel servers, it is also possible that the mail configuration files have incorrect access permissions due to any updates. This prevents the server from confirming the existence of an account and results in an error.
Such issues are quickly fixed by correcting the file and folder permissions of the account. If the domain’s entry is missing from the mail config file, that too can end up giving ‘550: No such user here’ error.
- Log into the cPanel account of the domain in question.
- Go to Email Accounts and verify if the email address exists.
- If it doesn’t exist, you can create it under the same interface.
2. Duplicate sender account in recipient server
At times, we see cases where a user is unable to send mails to domains that belong to his old service provider, or to another server within the same network.
For instance, domainONE.com and domainTWO.com used to be with the same provider. DomainONE.com was migrated to a new server but is now unable to send mail to domainTWO.com.
This happens because the name servers of domainTWO.com may still have entries of domainONE.com due to improper migration or other mistakes.
In such situations, we contact the recipient server’s administrators and get the phantom account deleted from their servers. In case the recipient server is in our network, the duplicate account is deleted from that server.
2. Verify MX Records
- Make sure that the domain’s MX (Mail Exchange) records point to the correct mail server.
- To check the MX records, you can:
- Go to cPanel > Zone Editor.
- Verify that the MX records point to the appropriate mail server (e.g.,
mail.yourdomain.com
).
- Alternatively, use online tools like MXToolbox to confirm MX record settings.
3. Check Email Routing Configuration
- In cPanel, navigate to Email Routing.
- Make sure the routing is set correctly for your setup:
- Local Mail Exchanger: If the emails should be delivered to the local server.
- Remote Mail Exchanger: If the domain uses an external mail server (e.g., G Suite, Office 365).
- If you have external MX records (e.g., pointing to Google or Microsoft), set the Email Routing to Remote Mail Exchanger.
- Backup Mail Exchanger – This setup is used when the MX record of the domain with lower priority points to the web hosting server.
This can be done by following the steps below:
- Login to cPanel and navigate to the Emails Tab
- Click On Email Routing
- Select the appropriate option for your domain.
4. Review Exim Logs for Details
- SSH into your cPanel server as the root user.
- Review the mail logs located in
/var/log/exim_mainlog
to get more detailed information:tail -f /var/log/exim_mainlog | grep "550"
- Look for any additional error messages or clues as to why the recipient could not be found.
5. Check Local Domains File
- Sometimes, the issue arises if the domain is missing in the
localdomains
orremotedomains
files. - Check the
/etc/localdomains
file to see if your domain is listed. If it is missing, add it manually.echo "yourdomain.com" >> /etc/localdomains
- Similarly, if the domain should not be on the local server, ensure it is in
/etc/remotedomains
instead.
6. Confirm DNS Propagation
- If the domain or MX records were recently modified, ensure that DNS has fully propagated. This process can take up to 24–48 hours in some cases.
7. Check the Catch-All/Default Email Address
- Ensure that the domain’s catch-all (default address) is set up correctly.
- Go to cPanel > Default Address.
- Choose either “Discard the email while your server processes it by SMTP time with an error message” or forward the email to a specific address if you want to catch all unrouted emails.
8. Review SPF and DKIM Records
- Incorrect SPF or DKIM settings can also lead to delivery issues.
- Ensure that your SPF record allows the sending server’s IP, and DKIM is correctly configured.
9. Mail Client Configuration
- If you’re using an email client like Outlook or Thunderbird, verify that the settings (SMTP server, port, and authentication) are correct.
10. Email Forwarders or Aliases
- Check if there are any email forwarders or aliases set up that might be causing the issue.
- Navigate to cPanel > Forwarders and confirm if any misconfiguration exists.
11. Contact Support or Review Server Logs
- If you’re still encountering the issue after verifying all the above, it might be necessary to contact your hosting provider or check more detailed logs on your server for additional troubleshooting.
After following these steps, you should be able to resolve the “550: No such user here” error. If the problem persists, it may be due to a more specific server configuration issue that requires further investigation.