Cannot send mail: Difference between revisions

From MozillaZine Knowledge Base
Jump to navigationJump to search
(→‎ISP's blocking port 25: Added link to more options for SBC customers)
Line 45: Line 45:


The fix is simple but may not work for all servers. In Thunderbird's "Outgoing Mail Server" panel, replace the default 25 with 587. [http://www.ietf.org/rfc/rfc2476.txt RFC 2476] explains why this works for newer SMTP servers. (For sbcglobal.net, the fix is to change port to 26.)
The fix is simple but may not work for all servers. In Thunderbird's "Outgoing Mail Server" panel, replace the default 25 with 587. [http://www.ietf.org/rfc/rfc2476.txt RFC 2476] explains why this works for newer SMTP servers. (For sbcglobal.net, the fix is to change port to 26.)
SBC Yahoo customers can also look at "[http://help.sbcglobal.net/article.php?item=4640 Why am I unable to send email...]" on the SBC site for more solutions.


===SSH tunneling to a box that isn't blocked===
===SSH tunneling to a box that isn't blocked===

Revision as of 06:16, 24 August 2005

This article was written for Thunderbird but also applies to the Mozilla Suite (though some menu choices may differ).

If you've followed instructions for configuring Thunderbird and still cannot send mail for one or more of accounts, the following may help:

Basic troubleshooting

Firewalls and antivirus software

Verify that your firewall or antivirus program is not blocking Thunderbird. If you recently upgraded Thunderbird, verify that the firewall is not blocking the new version.

Offline mode

Verify Thunderbird is in online mode, not offline mode: click "File -> Offline"; "Work Offline" should be unchecked. If you send a message while in offline mode, it goes to the Unsent Messages folder in Local Folders. See below for Advanced tips.

Outgoing mail settings

First, get the correct outgoing mail (SMTP) settings from your service provider, usually your Internet Service Provider (ISP): try their website, search Google for your ISP plus the word "smtp", or call them.

Verify the settings in Thunderbird exactly match what your ISP provides: no typos (e.g., "smpt"), extra spaces, punctuation mistakes (e.g., no commas instead of periods) or capitalization errors (e.g., lowercase instead of Caps).

Click "Tools -> Account Settings -> Outgoing Server (SMTP)" (at the bottom of the left pane—you may need to scroll down), and double-check:

  • Server Name
  • Use name and password: Check this box if your e-mail service provider supports or requires SMTP authentication. If you receive error messages when trying to send, try unchecking this box. Also, your username (if needed) might be your full e-mail address (e.g., "johndoe@domain.com") or only the part before the "@" ("johndoe"), depending on your service provider; check with them which is correct.
  • Use secure connection: Unless your service provider supports SSL connections for outgoing mail, select "No".
  • Port: Some service providers use non-standard ports (25 is standard). If you're having problems, ask them which ports they support for SMTP or outgoing e-mail.
  • (For help with multiple servers, see Advanced tips, below.)

Also, click "Tools -> Account Settings -> [account name] Server Settings -> Advanced -> SMTP" and verify the correct SMTP server is selected there. If you see "Relay access denied" or "Relaying denied" errors, be sure to verify this setting.

For advanced users

  • If you installed Thunderbird without Offline Support: Close Thunderbird and go to your profile folder. Back up the "prefs.js" file, then open it with a text editor (e.g., Notepad) and delete only the line containing the "network.online" preference. (Be careful editing "prefs.js"; if you make a mistake—you'll notice many settings changed when restarting—close Thunderbird and restore the backup copy.)
  • Follow these instructions for logging and advanced troubleshooting. (The log will include your username, password and possibly other private information, so be sure to remove the private info if you send the log to anyone else.)

ISP's blocking port 25

In an effort to stop spam, many ISP's (Comcast, Cox, many others) block all traffic to port 25 on anything except their own SMTP servers. This plays out like this:

Say you configure your laptop's Thunderbird's "Outgoing Mail Server" to use smtp.mycompany.com port 25. When you test sending e-mail, it works, because you're not subject to Comcast rules on your company's network.

Now take the laptop home and try sending mail. Everything looks normal, no errors or anything. But that mail simply vanishes. Comcast drops it because it was addressed to port 25 and not to Comcast's SMTP server.

The fix is simple but may not work for all servers. In Thunderbird's "Outgoing Mail Server" panel, replace the default 25 with 587. RFC 2476 explains why this works for newer SMTP servers. (For sbcglobal.net, the fix is to change port to 26.)

SBC Yahoo customers can also look at "Why am I unable to send email..." on the SBC site for more solutions.

SSH tunneling to a box that isn't blocked

If port 25 is blocked by your internet provider, say Comcast, but you have SSH access to a server on a network that doesn't block port 25, you can can relay traffic from port 25. Use the following command:

ssh -L 25:<IP of the SMTP Server>:25 -N <IP of your server>

Replace <IP of the SMTP Server> with the IP of the SMTP server you'd like to reach, but that you can't reach because port 25 is blocked. Replace <IP of your server> with the IP address of the server that is on the alternative network. It won't look like anything is happening when the command is running, but you'll be forwarding traffic from port 25 on your computer via SSH to your server and your server will send that traffic to the real SMTP server.

You can now use the kind-of-elaborate setup to send e-mail over port 25. Configure Thunderbird to use 127.0.0.1, port 25, as the SMTP server. When you send e-mail it'll work as expected. The traffic won't be blocked by your ISP because it is being tunneled through SSH.