This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Recipient Verification: Verify recipients: With callout not working as expected

Helo world,

I am trying to use the Email Protection of a Sophos UTM as a replacement for an aging Barracuda Spam Firewall on which the license will go dark on Jan. 30 and will not be renewed. Sophos Email Protection is my first choice as the company desires migrating to all Sophos UTM hardware in the near future and is working with a Partner. My backup solution is a VM from mailcleaner.org but I really want the Sophos UTM to work. I would love to open a support ticket, but alas I am only using a trail version until...I can prove it actually works so I can get the PO approved for the Sophos hardware.

In my testing it is working except for one important thing. When setting up the SMTP Proxy, I of course wish to use the Recipient Verification With Callout to prevent the huge amount of spam sent to invalid recipients from ever being sent to the destination mail server as this is one of the main reasons to use an SMTP Proxy (a.k.a. Spam Firewall), but it is not working as expected. The Sophos UTM and the destination mail server are both on public static IPs resolvable with reverse DNS, and there is currently no way to move the hosted cPanel that runs the destination mail server behind the Sophos UTM. I am not sure if this is part of my problem or not since mail is flowing. UTM Version I am using is latest 9.306-6 and cPanel Exim is 4.82

The User Guide States:
Recipient Verification
Verify Recipients: Here you can specify whether and how email recipients are to be verified.
With Callout: A request is sent to the server to verify the recipient.

User Guide never states which server but the assumption is that it would get verification from the actual destination mail server as the sending server and the UTM would have no knowledge of if a recipient is valid or not.

Can someone please clarify if my assumption is correct and if so, I can confirm that is not what actually seems to be happening. Instead, the Live Log would seem to indicate that the verification is done by the sending server and it succeeds and then proceeds to Greylisting and then delivers the email to the work queue and sends it to the destination server even if the user does not exist. This makes no sense. How can an address that does not exist on the destination mail server get verified and from whom???

Additionally, a tail of the Exim mainlog on the destination server shows no evidence of ever being asked to perform a recipient verification and only shows the mail being received after it leaves the UTM. For non-existent mail accounts, the destination mail server log shows "Unrouteable address" and bounces a permanent error message to sender which sender receives. For mail accounts that exist, the message is delivered as expected.

I will post some of the logs in a moment, but I sure would appreciate some help. Thanks!


This thread was automatically locked due to age.
Parents
  • Hi, and welcome to the User BB!

    First, there are excellent pre-sales engineers available to help those in a trial.  You access these folks via your reseller, so your first step should be to find a strong reseller and then get them involved.

    Having said that, I can tell you that vilic is 100% correct.  I just checked two domains with external servers, one of which is cPanel (Bluehost) and the other not.  Both use "With callout" and both work fine.  From a test email to the one using cPanel:

    H=mail-oi0-f54.google.com [209.85.218.54]:47734 F= rejected RCPT : Address unknown


    The [verification succeeded] you're seeing in your logs is related to DKIM, not recipient verification.

    Cheers - Bob

     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
Reply
  • Hi, and welcome to the User BB!

    First, there are excellent pre-sales engineers available to help those in a trial.  You access these folks via your reseller, so your first step should be to find a strong reseller and then get them involved.

    Having said that, I can tell you that vilic is 100% correct.  I just checked two domains with external servers, one of which is cPanel (Bluehost) and the other not.  Both use "With callout" and both work fine.  From a test email to the one using cPanel:

    H=mail-oi0-f54.google.com [209.85.218.54]:47734 F= rejected RCPT : Address unknown


    The [verification succeeded] you're seeing in your logs is related to DKIM, not recipient verification.

    Cheers - Bob

     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
Children
  • Vilic and Bob,

    You have helped me to figure out a few things.

    1. I can now see that the verification in my logs was DKIM so not relevant. Thanks Bob.

    2. I have have performed the same tests as both of you by telneting to my destination mail server on port 25 and I do not receive a 550 after RCPT TO: . I get the 250 OK. If I may conclude correctly, this means that the cPanel is not properly configured for recipient callouts, unlike your server(s) that are.

    3. When I send test mails from my Yahoo account they get greylisted by the UTM SMTP Proxy no matter if they are sent to a valid or invalid recipient on the destination cPanel mail server and nothing is ever shown in the UTM SMTP Proxy Live Log that shows communication with the destination mail server at time of sending. Eventually (about 7 min) Greylisting succeeds for both valid and invalid recipients and the message is delivered to the destination mail server and is correctly bounced back to Yahoo for invalid recipents or delivered for valid ones.

    4. Out of desperation I looked at the tail of the Exim main log on the cPanel and discovered at least the UTM does it fact establish communication with the destination mail server at time of sending from Yahoo. I would guess this is in fact the elusive callout to verify the recipient. Yeah! This is some progress; at least the UTM appears to be doing the callout, it is just not working.

    These are the the logs entries I get and I assume that after this fails, the UTM goes go Greylisting since the bad response from the destination mail server is not able to verify the recipient.

    Exim Main Log Entry for callout from UTM for valid-user@test-domain.com:
    2015-01-28 17:49:19 [21032] SMTP connection from [96.253.126.67]:45739 I=[68.166.142.198]:25 (TCP/IP connection count = 1)
    
    2015-01-28 17:49:19 [7330] H=7552-5.UTM-server.com [96.253.126.67]:45739 I=[68.166.142.198]:25 Warning: Sender rate 1.9 / 1h
    2015-01-28 17:49:19 [7330] H=7552-5.UTM-server.com [96.253.126.67]:45739 I=[68.166.142.198]:25 incomplete transaction (QUIT) from <> for valid-user@test-domain.com
    2015-01-28 17:49:19 [7330] SMTP connection from 7552-5.UTM-server.com [96.253.126.67]:45739 I=[68.166.142.198]:25 closed by QUIT


    Exim Main Log Entry for callout from UTM for invalid-user@test-domain.com:
    2015-01-28 17:11:56 [21032] SMTP connection from [96.253.126.67]:45726 I=[68.166.142.198]:25 (TCP/IP connection count = 1)
    
    2015-01-28 17:11:56 [3953] H=7552-5.UTM-server.com [96.253.126.67]:45726 I=[68.166.142.198]:25 Warning: Sender rate 1.0 / 1h
    2015-01-28 17:11:56 [3953] H=7552-5.UTM-server.com [96.253.126.67]:45726 I=[68.166.142.198]:25 incomplete transaction (QUIT) from <> for invalid-user@test-domain.com
    2015-01-28 17:11:56 [3953] SMTP connection from 7552-5.UTM-server.com [96.253.126.67]:45726 I=[68.166.142.198]:25 closed by QUIT


    As you can see, both log entries are identical except for the RCPT TO addresses. Additionally, on line 3 of each, you can see the response form cPanel is "incomplete transaction (Quit)."

    In conclusion, I have documented that it is broken. I do hope one of you superguru gentleman can tell me what to fix and how.

    P.S. Is there a way to enable the callout to be logged in the SMTP Proxy Live Log? What about another log where communication from the UTM to to destination mail server for the callout can be seen on the UTM side? Even a log only accessible from SSH loginuser that I could tail for troubleshooting would be ok. Would "tail -f /var/log/exim_mainlog" work from a UTM SSH session like in does in cPanel since both servers use Exim?

    Best Regards - HTG
    Frustrated Sophos Partner seeing all the things
    that brought me to Sophos slowly slip away.
    RIP astaro.org