Cannot send or receive e-mail messages behind a Cisco PIX firewall
This article was previously published under Q295725 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 your system. This article is a consolidation of the following previously available article: 320027
The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.
On This PageSYMPTOMSWhen you try to send or receive messages behind a Cisco PIX firewall, you experience one or more of the following issues:
CAUSEThese issues may occur if the Microsoft Exchange server is positioned behind a Cisco PIX firewall device. The Cisco PIX firewall device uses an SMTP protocol filtering feature that is named Mailguard. When the Mailguard feature is turned on, it blocks all Extended Simple Mail Transfer Protocol (ESMTP) commands. Mailguard allows only seven basic Simple Mail Transfer Protocol (SMTP) commands to pass. Therefore, the PIX firewall does not forward the ESMTP commands to the mail server. The ESMTP commands include commands such as X-LINK2STATE, Auth, Auth login, KILL, and WIZ. Additionally, there is a known issue with Mailguard that causes duplicate incoming messages. Cisco has corrected this issue in later software releases. For more information about this known issue, see the “Duplicate incoming SMTP messages" section later in this article. To check for the presence of Mailguard, follow these steps:
Note On Cisco PIX firewalls with firmware version 5.1 and with later versions, the fixup protocol smtp command changes most characters in the SMTP banner to asterisks. The exceptions to this are the "2" character, the "0" character, and the "0 " character. The carriage return (CR) character and the linefeed (LF) character are ignored. In version 4.4, all characters in the SMTP banner are converted to asterisks. WORKAROUNDWarning This workaround may make your computer or your 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.To work around these issues, turn off the Mailguard feature of the PIX firewall. To do this, follow these steps:
http://www.cisco.com/support/index.shtml (http://www.cisco.com/support/index.shtml) 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.MORE INFORMATIONThe PIX Software Mailguard feature filters SMTP traffic. This feature was also referred to as Mailhost in earlier versions. In PIX Software versions 4.0 and 4.1, you use the mailhost command to configure Mailguard. In PIX Software version 4.2 and in later versions, you use the fixup protocol smtp 25 command.
Mailguard allows connections to an e-mail host only through Transport
Control Protocol (TCP) port 25. It logs all SMTP activity. Additionally, it allows only the minimum SMTP server commands found in Request for Comments (RFC) 821, Section 4.5.1.These SMTP server commands are the following seven commands:
Duplicate incoming SMTP messagesIn a typical SMTP session, a sending host marks the end of the DATA part of the message with CRLF.CRLF on a line by itself. The receiving host acknowledges receipt of the message data by issuing a 250 OK response back to the sending host. The sending host replies with the QUIT command. The normal response from the receiving host would be 221 closing connection. Once the sending host receives this last response, the session is complete.If for any reason the CRLF.CRLF terminating string is broken into separate packets during transmission, Mailguard rejects it and does not pass it to the mail server. The connection eventually times out and the message queues for delivery on the receiving host. Because the sending host never receives confirmation of receipt, it assumes delivery failure. It re-queues the message for attempted delivery at a later time. This goes on repeatedly until the message time-out on the sending host is exhausted. Further testing with SMTP Protocol Logging can be used to pinpoint the failure in a message session. From a sample captured SMTP log below, observe the missing response of the receiving host to the CRLF.CRLF command. 2/7/01 5:01:20 PM : A connection was accepted from mail.domain1.com 2/7/01 5:01:21 PM : <<< HELO mail.domain1.com 2/7/01 5:01:21 PM : >>> 250 OK 2/7/01 5:01:21 PM : <<< MAIL From:<user@domain1.com> 2/7/01 5:01:21 PM : >>> 250 OK - mail from <user@domain1.com> 2/7/01 5:01:22 PM : <<< RCPT To:<user@domain2.com> 2/7/01 5:01:22 PM : >>> 250 OK - Recipient <user@domain2.com> 2/7/01 5:01:23 PM : <<< DATA 2/7/01 5:01:23 PM : >>> 354 Send data. End with CRLF.CRLF 2/7/01 5:05:44 PM : A connection was accepted from mail.domain3.com Cisco has determined this to be an issue in certain versions of PIX operating software. This issue is linked to bug: CSCds90792. Registered users of Cisco Connection Online (CCO) have access to release notes for this bug in Cisco's Software Bug Toolkit. For more information, visit the folowing Cisco Web site: http://www.cisco.com/kobayashi/bugs/bugs.html (http://www.cisco.com/kobayashi/bugs/bugs.html) How to test the Mailguard featureWhen the Mailguard feature is turned off, the mail server responds to an invalid command with the "500 Command unrecognized" error message. However, when the Mailguard feature is turned on, the Cisco PIX firewall responds with the "OK" message, regardless of whether the command is valid or is not valid. To determine whether the Mailguard feature is blocking commands that are not valid, follow these steps.Note The following steps are based on PIX software version 4.0 and 4.1. To test PIX software version 4.2 and later versions, use the fixup protocol smtp 25 command and the appropriate Static statement and the appropriate Conduit statement for your mail server. When Mailguard is turned off
When Mailguard is turned on
REFERENCESTo view RFC 821, visit the following RFC Web site:
http://www.faqs.org/rfcs/rfc821.html (http://www.faqs.org/rfcs/rfc821.html) For more information about how to configure the Cisco PIX firewall, 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/univercd/cc/td/doc/product/iaabu/pix/pix_v52/config/commands.htm#xtocid1604922) http://www.cisco.com/warp/public/110/22.html (http://www.cisco.com/warp/public/110/22.html) http://www.cisco.com/en/US/products/sw/secursw/ps2120/products_installation_and_configuration_guides_list.html (http://www.cisco.com/en/US/products/sw/secursw/ps2120/products_installation_and_configuration_guides_list.html) http://www.cisco.com/en/US/tech/tk331/tk897/tsd_technology_support_sub-protocol_home.html (http://www.cisco.com/en/US/tech/tk331/tk897/tsd_technology_support_sub-protocol_home.html) APPLIES TO
| Article Translations
|

Back to the top
