Guest User!

You are not Sophos Staff.

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

Local DNS Behaviour

So I've run into a problem using local DNS resolution with Sophos UTM 9.313.

The network is 1 internal subset ( 192.168.55.0/24 ) and has four external IP addresses. The web server is located at 192.168.55.25. In order to support applications that require websockets, I have used one of the four external IP addresses as a passthrough ( we'll call it xx.xx.xx.xx on port 80 / 443 are routed / NAT / firewalled directly to 192.168.55.25 ) and another external IP ( say yy.yy.yy.yy ) is setup with WAF applications.

Here's the issue: When using local DNS entries, Sophos appears to assign wildcard matching status even when no wildcard is specified. Thus, the setup is seen as:

computer.name.local
Reverse DNS -> Checked
Additional Host names:
domain.name
www(dot)domain.name
sub1.domain.name
sub2.domain.name
sub3.domain.name

All of these domains are hosted on the external IP that points directly to the webserver ( xx.xx.xx.xx ), so in order for them to work internally ( due to the routing issues mentioned elsewhere on these boards ) internal DNS must be configured ( preferred ) or a full NAT setup to allow proper redirection.

The domains all work fine, until you try to access the WAF on the alternate external IP address ( yy.yy.yy.yy ). Then things go bad. For example, I type in sub4.domain.name which is hosted on yy.yy.yy.yy instead of xx.xx.xx.xx, and my browser tells me it cannot resolve the domain. Okay, odd, start troubleshooting. The problem goes away as soon as I remove the non-sub address.

In other words, the host entry now looks like:

computer.name.local
Reverse DNS -> Checked
Additional Host names:
www(dot)domain.name
sub1.domain.name
sub2.domain.name
sub3.domain.name

Now, both xx.xx.xx.xx and yy.yy.yy.yy hosted domains work, but on the internal network I can no longer resolve domain.name. The easiest solution would be to setup domain.name and www(dot)domain.name on the WAF so that both resolve, but the WAF still does not support websockets in 2015 without modifications that do not persist across reboots of the Sophos UTM ( see here regarding feature requests about websockets ). Another solution would of course be to setup an actual dedicated internal DNS server, but that seems pretty heavy handed for what I require ( only a few addresses ).




I guess my question then is, is this the expected behaviour? Is not including a a subdomain in the DNS resolution of Host objects on a Sophos UTM supposed to be the same as specifying a wildcard address?


This thread was automatically locked due to age.
Parents
  • So, you've setup WAF virtual servers on your internal interface?  Are your internal clients also using the Web Filtering Proxy for connections to your internally hosted sites?  Although you've provided a good deal of information here, the presentation is confusing.  As Bob says, screenshots and maybe flow diagrams would be helpful.  A bit more clarity on the example host entries would go a long way too.  You've obfuscated the entries too much.  In several, you use the entry "name" in the TLD part of an FQDN and in another you use "name" in the domain part of an FQDN.  You have to use a variable consistently.  [:)]
    __________________
    ACE v8/SCA v9.3

    ...still have a v5 install disk in a box somewhere.

    http://xkcd.com
    http://www.tedgoff.com/mb
    http://www.projectcartoon.com/cartoon/1

  • PS Should this post be moved to the Webserver Protection (WAF) forum?


    This is not a WAF issue, this is a DNS issue. The reason WAF is brought up at all is because that is my preferred choice for routing traffic to the webservers ( particularly due to the UTM's ability for simplistic user form authorization ), but I cannot use the WAF for anything that requires websockets to work ( as noted previously ) which then requires me to port forward directly to an internal server for apps requiring websockets.

    So, you've setup WAF virtual servers on your internal interface?  Are your internal clients also using the Web Filtering Proxy for connections to your internally hosted sites?  Although you've provided a good deal of information here, the presentation is confusing.  As Bob says, screenshots and maybe flow diagrams would be helpful.  A bit more clarity on the example host entries would go a long way too.  You've obfuscated the entries too much.  In several, you use the entry "name" in the TLD part of an FQDN and in another you use "name" in the domain part of an FQDN.  You have to use a variable consistently.  [:)]


    The names are used consistently. Specifics on internal networks are "...local". I only included a simplified form to show internally they are addressed differently. Externally, the items are as listed. I did not include the names previously given the NSFW content that can be found there with some of the artwork I have up from various commissions - it is best not to accidentally get someone into trouble at work and this isn't something you could have tested externally.


    Here is a simplistic flow diagram - I myself am not an artist:



    Things currently follow KISS internally. 192.168.55.1 is the Sophos UTM internal. This is bonded by multiple CAT6 to the Cisco Switch ( SG200-18 model ) 192.168.55.2. From there things go elsewhere. Everything is on the 192.168.55.x/24 layout.

    Previously, the webservers were on separate subnets ( 192.168.53.x and 192.168.57.x ) but I have since consolidated them into the same network as I reduce hardware appliances, which began all my problems.

    Thus, I encountered the routing problem now that everything was on the same subnet, and took action as required here. I setup solution #1. This works for everything except one case.




    This setup does not allow any internal client to connect to the websites hosted by the WAF. For example, read.deoremann.com is hosted by the WAF; you will note it is not listed above in the DNS resolution. Only external clients can connect. What you will receive from an internal client is the following:

    > ipconfig /flushdns
    
    > ping read.deoremann.com
    Ping request could not find host read.deoremann.com. Please check the name and try again.



    Changing the setup to the following:



    > ipconfig /flushdns
    
    > ping read.deoremann.com
    Pinging read.deoremann.com [184.188.106.179] with 32 bytes...


    Allows resolution to work as expected.

    Note again that read.deoremann.com. is not included. It appears that including the domain name without a proceeding subdomain works as blocking / wildcard to domains being served by the WAF. IE: because I specified 'deoremann.com' with no subdomain as a DNS entry in the hosts records, 'read.deoremann.com' does not resolve. Changing the order it is listed in has no effect.



    There are two resolutions I see from my end without going full NAT ( which I had difficulties setting up ): making the www and @ domains WAF hosted ( which means no websockets ) or proceeding without internal resolution for the @ domain ( since resolving it would appear to require another DNS which I honestly do not need for the simple network I have ).
Reply

  • PS Should this post be moved to the Webserver Protection (WAF) forum?


    This is not a WAF issue, this is a DNS issue. The reason WAF is brought up at all is because that is my preferred choice for routing traffic to the webservers ( particularly due to the UTM's ability for simplistic user form authorization ), but I cannot use the WAF for anything that requires websockets to work ( as noted previously ) which then requires me to port forward directly to an internal server for apps requiring websockets.

    So, you've setup WAF virtual servers on your internal interface?  Are your internal clients also using the Web Filtering Proxy for connections to your internally hosted sites?  Although you've provided a good deal of information here, the presentation is confusing.  As Bob says, screenshots and maybe flow diagrams would be helpful.  A bit more clarity on the example host entries would go a long way too.  You've obfuscated the entries too much.  In several, you use the entry "name" in the TLD part of an FQDN and in another you use "name" in the domain part of an FQDN.  You have to use a variable consistently.  [:)]


    The names are used consistently. Specifics on internal networks are "...local". I only included a simplified form to show internally they are addressed differently. Externally, the items are as listed. I did not include the names previously given the NSFW content that can be found there with some of the artwork I have up from various commissions - it is best not to accidentally get someone into trouble at work and this isn't something you could have tested externally.


    Here is a simplistic flow diagram - I myself am not an artist:



    Things currently follow KISS internally. 192.168.55.1 is the Sophos UTM internal. This is bonded by multiple CAT6 to the Cisco Switch ( SG200-18 model ) 192.168.55.2. From there things go elsewhere. Everything is on the 192.168.55.x/24 layout.

    Previously, the webservers were on separate subnets ( 192.168.53.x and 192.168.57.x ) but I have since consolidated them into the same network as I reduce hardware appliances, which began all my problems.

    Thus, I encountered the routing problem now that everything was on the same subnet, and took action as required here. I setup solution #1. This works for everything except one case.




    This setup does not allow any internal client to connect to the websites hosted by the WAF. For example, read.deoremann.com is hosted by the WAF; you will note it is not listed above in the DNS resolution. Only external clients can connect. What you will receive from an internal client is the following:

    > ipconfig /flushdns
    
    > ping read.deoremann.com
    Ping request could not find host read.deoremann.com. Please check the name and try again.



    Changing the setup to the following:



    > ipconfig /flushdns
    
    > ping read.deoremann.com
    Pinging read.deoremann.com [184.188.106.179] with 32 bytes...


    Allows resolution to work as expected.

    Note again that read.deoremann.com. is not included. It appears that including the domain name without a proceeding subdomain works as blocking / wildcard to domains being served by the WAF. IE: because I specified 'deoremann.com' with no subdomain as a DNS entry in the hosts records, 'read.deoremann.com' does not resolve. Changing the order it is listed in has no effect.



    There are two resolutions I see from my end without going full NAT ( which I had difficulties setting up ): making the www and @ domains WAF hosted ( which means no websockets ) or proceeding without internal resolution for the @ domain ( since resolving it would appear to require another DNS which I honestly do not need for the simple network I have ).
Children
No Data
Share Feedback
×

Submitted a Tech Support Case lately from the Support Portal?