Cannot send or receive e-mail messages behind a Cisco PIX or Cisco ASA firewall

Article translations Article translations
Article ID: 320027 - View products that this article applies to.
This article was previously published under Q320027
Important This article contains information that shows you how to help lower security settings or how to turn off security features on a computer. You can make these changes to work around a specific problem. Before you make these changes, we recommend that you evaluate the risks that are associated with implementing this workaround in your particular environment. If you implement this workaround, take any appropriate additional steps to help protect the computer.
Expand all | Collapse all

On This Page

SYMPTOMS

You may experience one or more of the following behaviors:
  • You cannot receive Internet-based e-mail messages.
  • You cannot send e-mail messages with attachments.
  • You cannot establish a telnet session with the Microsoft Exchange server on port 25.
  • When you send an EHLO command to the Exchange server, you receive a "Command unrecognized" or an "OK" response.
  • You cannot send or receive mail on specific domains.
  • Problems with Post Office Protocol version 3 (POP3) authentication - 550 5.7.1 relaying denied from local server.
  • Problems with duplicate e-mail messages being sent (sometimes five to six times).
  • You receive duplicate incoming Simple Mail Transfer Protocol (SMTP) messages.
  • Microsoft Outlook clients or Microsoft Outlook Express clients report an 0x800CCC79 error when trying to send e-mail.
  • There are problems with binary mime (8bitmime). You receive the following text in a non-delivery report (NDR):
    554 5.6.1 Body type not supported by Remote Host.
  • There are problems with missing or garbled attachments.
  • There are problems with the link state routing between routing groups when a Cisco PIX or Cisco ASA firewall device is between the routing groups.
  • The X-LINK2STATE verb is not passed.
  • There are authentication problems between servers over a routing group connector.

CAUSE

This issue may occur in the following situation:
  • The Exchange server is placed behind a Cisco PIX or Cisco ASA firewall device.

    -and-
  • The PIX or ASA firewall has the Mailguard feature turned on.
  • The Auth and Auth login commands (Extended Simple Mail Transfer Protocol [ESMTP] commands) are stripped by the firewall, and this makes the system think that you are relaying from a non-local domain.
To determine whether Mailguard is running on your Cisco PIX or Cisco ASA firewall, Telnet to the IP address of the MX record, and then verify whether the response looks similar to the following:
220*******************************************************0*2******0***********************
2002*******2***0*00

Old versions of PIX or ASA:

220 SMTP/cmap_________________________________________ read
For more information, visit the following Cisco Web sites:
http://www.cisco.com/en/US/tech/tk331/tk897/tsd_technology_support_sub-protocol_home.html
http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_tech_note09186a00800b2ecb.shtml
Note If you have an ESMTP server behind the PIX or ASA firewall, you may have to turn off the Mailguard feature to permit mail to flow correctly. Also, establishing a Telnet session to port 25 may not work with the fixup protocol smtp command, especially with a Telnet client that uses character mode.

Note Besides the Cisco PIX or Cisco ASA firewall, there are several firewall products that have SMTP Proxy capabilities that may produce the issues that are mentioned earlier in this article. The following is a list of firewall manufacturers whose products have SMTP Proxy features:
  • Watchguard Firebox
  • Checkpoint
  • Raptor

For additional information, visit the Web sites listed in the "More Information" section.

RESOLUTION

Warning This workaround may make a computer or a network more vulnerable to attack by malicious users or by malicious software such as viruses. We do not recommend this workaround but are providing this information so that you can implement this workaround at your own discretion. Use this workaround at your own risk.

Note A firewall is designed to help protect your computer from attack by malicious users or by malicious software such as viruses that use unsolicited incoming network traffic to attack your computer. Before you disable your firewall, you must disconnect your computer from all networks, including the Internet.

To resolve this issue, turn off the Mailguard feature of the PIX or ASA firewall. 

Warning If you have an ESMTP server behind the PIX or ASA, you may have to turn off the Mailguard feature to make it possible for mail to correctly flow. If you use the Telnet command to port 25, this may not work with the fixup protocol smtp command, and this is more noticeable with a Telnet client that performs character mode.

To turn off the Mailguard feature of the PIX or ASA firewall:  
  1. Log on to the PIX or ASA firewall by establishing a telnet session or by using the console.
  2. Type enable, and then press ENTER.
  3. When you are prompted for your password, type your password, and then press ENTER.
  4. Type configure terminal, and then press ENTER.
  5. Type no fixup protocol smtp 25, and then press ENTER.
  6. Type write memory, and then press ENTER.
  7. Restart or reload the PIX or ASA firewall.

MORE INFORMATION

 The PIX or ASA Software Mailguard feature (also called Mailhost in early versions) filters Simple Mail Transfer Protocol (SMTP) traffic. For PIX or ASA Software versions 4.0 and 4.1, the mailhost command is used to configure Mailguard. In PIX or ASA Software version 4.2 and later, the fixup protocol smtp 25 command is used.

Note You must also have static IP address assignments and conduit statements for your mail server.

When Mailguard is configured, Mailguard allows only the seven SMTP minimum-required commands as described in request for comment (RFC) 821, section 4.5.1. These seven required commands are the following:
HELO
MAIL
RCPT
DATA
RSET
NOOP
QUIT
 Other commands, such as KILL and WIZ are not forwarded to the mail server by the PIX or ASA firewall. Early versions of the PIX or ASA firewall return an "OK" response, even to commands that are blocked. This is intended to prevent an attacker from the knowledge that the commands have been blocked. 

To view RFC 821, visit the following RFC Web site:
http://www.faqs.org/rfcs/rfc821.html
All other commands are rejected with the "500 Command unrecognized" response.

 On Cisco PIX and ASA firewalls with firmware versions 5.1 and later, the fixup protocol smtp command changes the characters in the SMTP banner to asterisks except for the "2", "0", "0 " characters. Carriage return (CR) and linefeed (LF) characters are ignored. In version 4.4, all characters in the SMTP banner are converted to asterisks.

Test Mailguard for proper function

Because the Mailguard feature may return an "OK" response to all commands, it may be hard to determine whether it is active. To determine whether the Mailguard feature is blocking commands that are not valid, follow these steps.

Note The following steps are based on PIX or ASA software version 4.0 and 4.1. To test later versions of PIX or ASA software (version 4.2 and later), use the  fixup protocol smtp 25 command and the appropriate static and conduit statements for your mail server.

With Mailguard turned off

  1. On the PIX or ASA firewall, use the static and conduit commands to allow all hosts in on TCP port 25 (SMPT).
  2. Establish a telnet session on the external interface of the PIX or ASA firewall on port 25.
  3. Type a command that is not valid, and then press ENTER. For example, type goodmorning, and then press ENTER.

    You receive the following response:
    500 Command unrecognized.

With Mailguard turned on

  1. Use the mailhost or the fixup protocol smtp 25 command to turn on the Mailguard feature on the external interface of the PIX or ASA firewall.
  2. Establish a telnet session on the external interface of the PIX or ASA firewall on port 25.
  3. Type a command that is not valid, and then press ENTER. For example, type goodmorning, and then press ENTER.

    You receive the following response:
    OK.
 When the Mailguard feature is turned off, the mail server responds to the command that is not valid with the "500 Command unrecognized" message. However, when the Mailguard feature is turned on, the PIX or ASA firewall intercepts the command that is not valid, because the firewall passes only the seven minimum required SMTP commands. The PIX or ASA firewall responds with "OK" whether the command is valid or not. 

 By default, the PIX or ASA firewall blocks all outside connections from accessing inside hosts. Use the static, access-list, and access-group command statements to permit outside access. For additional information about these commands, visit the following Cisco Web site: 
http://www.cisco.com/univercd/cc/td/doc/product/iaabu/pix/pix_60/config/commands.htm
 For additional information about how to configure the Cisco PIX or ASA firewall, please visit the following Cisco Web sites: 
http://www.cisco.com/univercd/cc/td/doc/product/iaabu/pix/pix_v52/config/commands.htm#xtocid1604922
http://www.cisco.com/en/US/products/sw/secursw/ps2120/products_installation_and_configuration_guides_list.html
http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_tech_note09186a00800b2ecb.shtml


For more information about firewall products that have SMTP Proxy capabilities, visit the following Web sites:
http://www.watchguard.com
http://www.checkpoint.com
http://www.symantec.com/business/index.jsp
The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.Microsoft provides third-party contact information to help you find technical support. This contact information may change without notice. Microsoft does not guarantee the accuracy of this third-party contact information.

Properties

Article ID: 320027 - Last Review: January 18, 2011 - Revision: 15.0
APPLIES TO
  • Microsoft Exchange Server 2010 Standard
  • Microsoft Exchange Server 2010 Enterprise
  • Microsoft Exchange Server 2007 Standard Edition
  • Microsoft Exchange Server 2007 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • Microsoft Exchange Server 5.5 Standard Edition
Keywords: 
kbprb KB320027

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com