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

All traffic via StrongVPN/HideMyAss etc.???

Hi,

I am considering getting one of the public VPN services like HideMyAss or StrongVPN - can I use the site-to-site VPN functionality in Astaro and set this up so any internet bound traffic gets routed via the VPN service?

I believe, from initial reading, the SSL vpn wouldn't work for this because I wouldn't have the right type of config file to give my astaro, so I guess it's got to be IPSEC.

If people have done this, perhaps you could tell me which particular providers of VPN service this is tested and working with, and any setup pointers you can provide are obviously appreciated.


This thread was automatically locked due to age.
  • Hi, one user posted that he got an OpenSSL VPN working:
    https://community.sophos.com/products/unified-threat-management/astaroorg/f/58/t/54581

    Pointer: you'll need to set something up to monitor the VPN and make sure it's connected.

    Barry
  • Pointer: you'll need to set something up to monitor the VPN and make sure it's connected.


    Barry, thanks for the reply and helpful link.


    It occurs to me that monitoring may not be that useful, in that I want to block everything from leaving the network that doesn't go via the VPN even when I am not around or haven't noticed an admin email yet. I'd prefer to prevent other traffic entirely.

    I guess it's impossible to do that using normal firewall rules, since they will trigger on traffic destination rather than "how" the traffic leaves the LAN.

    One thought is that it might be possible to kludge this together with policy routes - perhaps I could set up interface routes so that SSL-VPN traffic went via the DSL uplink interface, and all other traffic via the VPN interface (presumably a S2S vpn shows up as an interface, or have I got this all wrong????)



    Any ideas?
  • Just a followup with some other thoughts.

    My thinking is that instead of strongvpn/HMA, I could get a virtual private server from a hosting company, stick Astaro on it, make a S2S connection from my physical home box to the virtual astaro and do this that way.

    It seems someone is doing the same thing in https://community.sophos.com/products/unified-threat-management/astaroorg/f/58/t/54601

    I believe if I remove all the masquerading rules from my local astaro so my unroutable 192.168.x.x addresses don't get NATed onto the internet, there would be no way for traffic to leave the LAN over the DSL uplink other than the web proxy, and I could then set that up so that the remote (on the virtual private server) astaro was a parent proxy. Have I missed anything?
  • Boris, if you can connect your home Astaro to one of those VPN services, you just need to define the VPN in the Astaro to have "Internet" in 'Remote Networks' (that is what would work with a second Astaro in the Cloud).  If you have no Firewall rules allowing traffic, then all other traffic will be blocked.

    If you use OpenVPN, be sure to configure to use UDP instead of TCP if the service supports it.

    I don't know if you'll be able to use Web Filtering in your home Astaro though.  If someone could try the following idea and report back, it would be appreciated by many! [;)]  Normally, proxy traffic leaves from the IP of "External (Address)" and is allowed by hidden Firewall rules.  You might be able to force it to go through the VPN by using a parent proxy somewhere on the internet.

    Cheers - Bob
     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
  • Boris, if you can connect your home Astaro to one of those VPN services, you just need to define the VPN in the Astaro to have "Internet" in 'Remote Networks' (that is what would work with a second Astaro in the Cloud).  If you have no Firewall rules allowing traffic, then all other traffic will be blocked.


    Thanks - I see, that makes sense. 


    If you use OpenVPN, be sure to configure to use UDP instead of TCP if the service supports it.


    Thanks for reminding me about that - I remember that making a pretty massive performance difference when I set up my own VPN for accessing my LAN when I'm away.

    If I can find a way to use IPSEC with one of these services, I'll do that instead though as I believe that is likely to give even better performance.


    I don't know if you'll be able to use Web Filtering in your home Astaro though.  If someone could try the following idea and report back, it would be appreciated by many! [;)]  Normally, proxy traffic leaves from the IP of "External (Address)" and is allowed by hidden Firewall rules.  You might be able to force it to go through the VPN by using a parent proxy somewhere on the internet.


    Yes, I'll report back. It may be a little while, since I am about to build a new box for UTM9 so I'll only set this up in a couple of weeks once that is complete. Hopefully, if I do go for a StrongVPN/HMA type provider, one of them has a proxy I can use as a parent, otherwise I might lean towards doing this with a vps and a remote astaro installation, as one of the reasons I'm building a new firewall box is to have sufficient performance to run antivirus and web caching, so I really want to have proxying back as I have had it disabled for a long time due to poor performance on my current old hardware.
  • Gents,

    Something occurs to me. Can you tell me anything about how DNS requests would be handled, both in the context of not using the proxy, and of using the proxy.

    If not proxying, so the client is just making say an HTTP connection on port 80 and this is being sent over the VPN, but the client uses the astaro as it's DNS (the astaro is doing dns forwarding/caching), is there any possibility the astaro would "leak" the dns requests over it's own uplink rather than using the VPN to get to the remote DNS servers?

    The same question in the case of using the proxy with a "parent proxy" on the internet - how will the proxy resolve addresses, will it use the parent proxy to do the resolution (which is fine), will it do the resolution itself but over the VPN (which is fine), or will it do the resolution over it's own non-vpn uplink (not fine obviously).

    If it turns out to be the case that either of these scenarios leak DNS requests over the unencrypted uplink, then I guess I can reconfigure the clients (or provide via dhcp) with internet based (eg. opendns) servers to do the name resolution themselves, but I'd prefer to keep using the astaro for performance/caching.


    Any input greatly appreciated.
  • After some considerable fooling around (which I won't go into - to do with converting the ovpn to apc, and some corruption in the output file, and having to temporarily kludge the dynamically generated config file on the server by hand-editing it in an ssh session) I have a tunnel up.

    I can't for the life of me find where I would tell the astaro what networks are reachable through that tunnel though, so I can tell it that "internet" is a remote network over that VPN. Looking in the "Site to site vpn" section, then drilling down to "SSL" I have my tunnel visible in the "connections" tab, but oddly the "settings" tab in here seems to refer to my VPN _server_ (the astaro, openvpn) and gives me options relating to what port to listen on, what IP pool to allocate to clients etc. I can see no settings relating to the astaro as a client, and can't see where I'd specify remote networks for this vpn.

    Incidentally, in the status screen (the top level of "site to site vpn") I can see my connection with a green light, but it says:

    unknown = my.public.ip.addr:51517  vpn.server.ip.addr:443 = unknown  

    Are the "unknown" entries here supposed to be the non-public IPs? That would make sense. Perhaps my tunnel is entirely broken even though it kind of appears to be working in a fashion.

    Any pointers?
  • OK more to report. I figured out (by looking in the output of ifconfig) that my tunnel is on tun1 and I have the ip 172.16.1.31, so I tried pinging 172.16.1.1 and sure enough that is my gw on the vpn.

    So I kludged in a default route with "route add default gw 172.16.1.1 dev tun1" and then, in my ssh session on the astaro, I was able to access the internet via the vpn - I can ping/traceroute/wget to public internet addresses OK. Speed is just as fast as my native connection, all looks good.

    So far so good. 

    Then I tried to ping (or do anything else involving accessing the internet) from a client box on the LAN, no-good, pings time out.

    I tried removing the kludged default route on the astaro, and instead doing it the proper way (a policy route, saying "any internal network to any internet network for service ping/traceroute go via tun1"), the same - when the policy route is turned off, pings from clients to say Google are fine, and are as expected routed via the dsl uplink. Turn on the policy route and pings just time out, traceroute shows they get to the astaro then nothing - just lines of "* * *" like traceroute shows when it has no data.

    I can see nothing in the firewall log to indicate why this would be.

    Clients can ping 172.16.1.31 (the tun1 interface on the astaro) from the LAN, but not 172.16.1.1 (the vpn provider gw)

    If I can get this working in so far as clients on the lan get routed via the vpn, then I think forcing all traffic over it should be as simple as adding a policy route for "all" services.

    However, I can't get it to masquerade since the tun1 interface doesn't show up in the list. Does astaro handle site to site vpns internally in such a way that you can't do anything with the interface via webadmin? If so, it seems what I'm trying to do may not be possible at all, since I can't set up a policy route (and no routes seem to be being pushed by the openvpn server), nor can I masquerade the LAN over the vpn.

  • Something occurs to me. Can you tell me anything about how DNS requests would be handled, both in the context of not using the proxy, and of using the proxy.

    If not proxying, so the client is just making say an HTTP connection on port 80 and this is being sent over the VPN, but the client uses the astaro as it's DNS (the astaro is doing dns forwarding/caching), is there any possibility the astaro would "leak" the dns requests over it's own uplink rather than using the VPN to get to the remote DNS servers?


    Don't use Astaro as the DNS. In fact, you should have the Astaro DNS service NOT be available for your LAN.
    Set your PC to use a DNS server on the other end of the tunnel, if available, or to use OpenDNS or GoogleDNS (as long as you aren't allowing any traffic through the firewall, this will go through the VPN).


    The same question in the case of using the proxy with a "parent proxy" on the internet - how will the proxy resolve addresses, will it use the parent proxy to do the resolution (which is fine), will it do the resolution itself but over the VPN (which is fine), or will it do the resolution over it's own non-vpn uplink (not fine obviously).


    I'm not sure. Try it, and run tcpdump (on astaro console or ssh) on the EXT interface.



    Then I tried to ping (or do anything else involving accessing the internet) from a client box on the LAN, no-good, pings time out.


    Did you include your LAN network in both sides of the VPN configuration?

    Barry
  • Hi Barry,

    Thanks for your reply.

    I don't have control over the other end of the connection, so I think what I'm trying to do isn't possible with Astaro. It's odd that someone has reported having it working, because I just can't see how that could be possible - looking at the documentation, it seems the server pushes the routes out to the client and there is no way to manually force the routes from the client side. If I try to put in a static route it just fails saying I can't set a default route anywhere but an interface definition, and of course I can't access the vpn tun interface through webadmin. I could set a policy route, but then I'd need to NAT the lan clients to the astaros VPN endpoint address, but that doesn't seem to be possible because I can't do masquerading (can't see the interface in webadmin), and I can't do SNAT (would have to have a separate rule for every protocol).