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

UTM as VPN "Client"

Hey Guys!

I recently signed up for a VPN service. I want to have all the traffic from the device to go through the tunnel The service has .ovpn config files, as well as all the info I could need to set up a VPN connection, which I have downloaded. Now I have a bunch of .ovpn config files which are utterly useless.

On a side note, the #1 VPN feature request is something to convert the .ovpn to the (seemingly) proprietary .apc (or .epc) files:
UTM (Formerly ASG) Feature Requests: VPN (172 ideas)

There are a few posts indicating a script may be able to do so. I have downloaded it and run it. It never coimpletes properly, and the .apc file it spits out is always corrupted (or so say Sophos when I try to import it).

Now, I tried creating an SSL VPN Server, save the config file, and then tried to edit it; I couldn't seem to get it top open to be edited... If this is possible, please let me know how.

So... How do I set up this UTM to be an Open VPN client to another server whose settings I have no control over? All the Sophos guides I could find only mentioned creating the VPN server on one device, saving the config file, and using THAT on the "client" device. How can I just config the client device?

Is this even possible with the UTM 9 devices?


This thread was automatically locked due to age.
Parents
  • The VPN router allows a client connection to commercial VPN services like HMA (HideMY Ass).  Since the VPN router is ahead of the UTM hardware all of the UTM's protection is still effective.  The VPN router is just to establish a VPN client connection for your home network as a whole.

    If you uses VPN client software behind your UTM (on your personal computer) the UTM protection is effectively side-stepped.

    I should have added that I have taken the VPN out of my network.  It was a bit too clumsy to use daily.
  • The VPN router allows a client connection to commercial VPN services like HMA (HideMY Ass).  Since the VPN router is ahead of the UTM hardware all of the UTM's protection is still effective.  The VPN router is just to establish a VPN client connection for your home network as a whole.

    If you uses VPN client software behind your UTM (on your personal computer) the UTM protection is effectively side-stepped.

    I should have added that I have taken the VPN out of my network.  It was a bit too clumsy to use daily.

    That simply doesn't make any sense, logically or rationally...

    Any router with OpenVPN capable firmware can act as either a server, a client, or both (as well as multiple servers and/or multiple clients).  

    I'm also a bit perplexed why you would utilize a paid VPN service if you utilize UTM or any router firmware capable of running OpenVPN (unless you're based in a country that restricts content and need a proxy), as any router with VPN capable firmware can do the exact same thing for free (unless you're needing to hide your WAN IP).
  • TI'm also a bit perplexed why you would utilize a paid VPN service if you utilize UTM or any router firmware capable of running OpenVPN (unless you're based in a country that restricts content and need a proxy), as any router with VPN capable firmware can do the exact same thing for free (unless you're needing to hide your WAN IP).


    "(unless you're needing to hide your WAN IP)" - This is exactly what I am trying to accomplish, and the service I have can certainly do so.

    I have an old Linksys router running DD-WRT which is totally capable of running as an OpenVPN Client, and this VPN connection works exactly as expected.

    Given that Sophos is enterprise-grade software, and running OpenVPN software in the backend, I had readily assumed that the device could be easily configured as a VPN Client. It would apear otherwise.
  • "(unless you're needing to hide your WAN IP)" - This is exactly what I am trying to accomplish, and the service I have can certainly do so.

    I have an old Linksys router running DD-WRT which is totally capable of running as an OpenVPN Client, and this VPN connection works exactly as expected.

    Given that Sophos is enterprise-grade software, and running OpenVPN software in the backend, I had readily assumed that the device could be easily configured as a VPN Client. It would apear otherwise.

    It can be easily configured as an OpenVPN client... this isn't a question of how hard it would be, as OpenVPN is inherently easy to configure, but of where the openvpn files and scripts reside that control the config files within the OpenVPN jail.

    Find the location of those scripts, and it would take no more than an hour for me to figure out what needs to be edited to allow not just for Sophos to be run as a client, but also for it to run numerous server instances.

    [SIZE="1"]**DISCLAIMER: Making any changes via the command line interface [cli] results in the loss of support and warranty for paid licensees**[/SIZE]
  • It can be easily configured as an OpenVPN client... this isn't a question of how hard it would be, as OpenVPN is inherently easy to configure, but of where the openvpn files and scripts reside that control the config files within the OpenVPN jail.

    Find the location of those scripts, and it would take no more than an hour for me to figure out what needs to be edited to allow not just for Sophos to be run as a client, but also for it to run numerous server instances.


    If I were able to find the scripts, I as well, could likely figure out the rest. The problem is, everywhere that mentions and CLI changes also has the following note:
    "Note – Any modifications done by root will void your support. Instead use WebAdmin for any configuration changes." This includes the Sophos Website, Support serch/knowledge base, and the WebUI help pages.

    Given this, any CLI changes are straight-up out of the question; supportability must be kept. In order to keep support, we need to do this in the WebUI. If it cannot be done in the WebUI, then it might as well not be able to be done at all.

    So it isn't a question of "can it be done at all", but "how to do this in a supported manner". If the answer is not at all, then so be it, I just need to know so I can move on to other products. If it CAN be done (in a supported manner, through the WebUI), even better (I would prefer this option by far)! And it CAN be done, we need to determine how.
Reply
  • It can be easily configured as an OpenVPN client... this isn't a question of how hard it would be, as OpenVPN is inherently easy to configure, but of where the openvpn files and scripts reside that control the config files within the OpenVPN jail.

    Find the location of those scripts, and it would take no more than an hour for me to figure out what needs to be edited to allow not just for Sophos to be run as a client, but also for it to run numerous server instances.


    If I were able to find the scripts, I as well, could likely figure out the rest. The problem is, everywhere that mentions and CLI changes also has the following note:
    "Note – Any modifications done by root will void your support. Instead use WebAdmin for any configuration changes." This includes the Sophos Website, Support serch/knowledge base, and the WebUI help pages.

    Given this, any CLI changes are straight-up out of the question; supportability must be kept. In order to keep support, we need to do this in the WebUI. If it cannot be done in the WebUI, then it might as well not be able to be done at all.

    So it isn't a question of "can it be done at all", but "how to do this in a supported manner". If the answer is not at all, then so be it, I just need to know so I can move on to other products. If it CAN be done (in a supported manner, through the WebUI), even better (I would prefer this option by far)! And it CAN be done, we need to determine how.
Children
  • If I were able to find the scripts, I as well, could likely figure out the rest. The problem is, everywhere that mentions and CLI changes also has the following note:
    "Note – Any modifications done by root will void your support. Instead use WebAdmin for any configuration changes." This includes the Sophos Website, Support serch/knowledge base, and the WebUI help pages.

    Given this, any CLI changes are straight-up out of the question; supportability must be kept. In order to keep support, we need to do this in the WebUI. If it cannot be done in the WebUI, then it might as well not be able to be done at all.

    So it isn't a question of "can it be done at all", but "how to do this in a supported manner". If the answer is not at all, then so be it, I just need to know so I can move on to other products. If it CAN be done (in a supported manner, through the WebUI), even better (I would prefer this option by far)! And it CAN be done, we need to determine how.

    Please see my above comment regarding the terminal warning...

    You're running the exact same version of UTM that enterprise users run, which is why the warning is there.

    Per the Sophos EULA:

    • 15.6.3: No Maintenance or technical support is included with Free Tools.
    • 15.7.2: Unless expressly stated otherwise on the Schedule, consumers are not entitled to receive technical support.


    Ergo, the terminal warning does not apply to home users

    [SIZE="1"]**DISCLAIMER: Making any changes via the command line interface [cli] results in the loss of support and warranty for paid licensees**[/SIZE]
  • Please see my above comment regarding the terminal warning...


    I did see that. I have not seen anything anywhere to indicate that if I paid for support that CLI edits/changes would then be allowed. If you have anything to show this, please let me know.


    You're running the exact same version of UTM that enterprise users run, which is why the warning is there.  All a home user has to do is apply common sense... 

    • Do you have paid support?  No.
    • Are you using a Sophos Hardware Appliance? No.


    I don't see how whether or not I paid for support and/or running on Sophos branded hardware has any bearing on whether or not Sophos has a supported method to be configured as a VPN Client.

    And if I AM indeed "running the exact same version of UTM that enterprise users run", then there should be something somewhere to indicate how to do this configuration change (I cannot possibly be the ONLY person wanting/needing to do this kind of VPN configuration), and yet there is nothing, at all, anywhere. Not even anything indicationg that it *MIGHT* be able to be done via CLI.

    If, as your responses imply, setting up Sophos as a VPN client can only be supported via a paid support subscription (as you indicate, CLI edits would need to be made, and CLI edits would only be supported via paid service), then I would tend to think that there would be something somewhere to indicate this as some kind of limitation on the home use license; or perhaps that this kind of configuration can only be done via CLI and thus support... blah blah blah... Yet all the documentation indicates that THE ONLY limitation is the 50 IPs (and EVERYTHING ELSE works).
  • I did see that. I have not seen anything anywhere to indicate that if I paid for support that CLI edits/changes would then be allowed. If you have anything to show this, please let me know.



    I don't see how whether or not I paid for support and/or running on Sophos branded hardware has any bearing on whether or not Sophos has a supported method to be configured as a VPN Client.

    And if I AM indeed "running the exact same version of UTM that enterprise users run", then there should be something somewhere to indicate how to do this configuration change (I cannot possibly be the ONLY person wanting/needing to do this kind of VPN configuration), and yet there is nothing, at all, anywhere. Not even anything indicationg that it *MIGHT* be able to be done via CLI.

    If, as your responses imply, setting up Sophos as a VPN client can only be supported via a paid support subscription (as you indicate, CLI edits would need to be made, and CLI edits would only be supported via paid service), then I would tend to think that there would be something somewhere to indicate this as some kind of limitation on the home use license; or perhaps that this kind of configuration can only be done via CLI and thus support... blah blah blah... Yet all the documentation indicates that THE ONLY limitation is the 50 IPs (and EVERYTHING ELSE works).

    Per the EULA, as a home user, you're not entitled to support... please take a look at sections 15.6.3 and 15.7.2 in the EULA.
  • I'm not going to engage in an argument with someone who bases their beliefs on assumptions and not what the EULA actually says.

    As a home user, you are not entitled to support... period.  At this point, I would encourage you to read the EULA, something you clearly have not done (I encourage paying specific attention to 15.6.3 and 15.7.2).


    Don't get me wrong... I am not trying to argue at all. I am just trying to understand is all. As for the EULA, just because I read, came to an understanding, and agreed to it, doesn't mean I remember it. Thank you for pointing this out and making it so clear. I had misunderstood what the EULA and the warnings were getting to as a whole.

    I have also found the files you mentioned, though the directory makes me curious:
    /var/sec/chroot-openvpn/etc/openvpn/


    Especially when the following ps command (and output):
    # ps aux | grep -v grep | grep vpn
    
    root     10679  0.0  0.0  36652  1480 ?        Sl   13:02   0:00 /usr/local/bin/reporter/vpn-reporter.pl
    root     26157  0.0  0.0   5864  2332 ?        Ss   Oct15   0:19 /usr/sbin/openvpn --config /etc/openvpn/openvpn.conf --writepid /var/run/openvpn.pid
    root     26159  0.0  0.0   5004   556 ?        S    Oct15   0:01 /usr/sbin/openvpn --config /etc/openvpn/openvpn.conf --writepid /var/run/openvpn.pid

    So... If I understand how this would work correctly... All I would need to do is get my .ovpn config file (and certs) to the gateway, and start another openvpn process, using a command similar to the ps aux output, right?
  • I have also found the files you mentioned, though the directory makes me curious:
    /var/sec/chroot-openvpn/etc/openvpn/


    Especially when the following ps command (and output):
    # ps aux | grep -v grep | grep vpn
    root     10679  0.0  0.0  36652  1480 ?        Sl   13:02   0:00 /usr/local/bin/reporter/vpn-reporter.pl
    root     26157  0.0  0.0   5864  2332 ?        Ss   Oct15   0:19 /usr/sbin/openvpn --config /etc/openvpn/openvpn.conf --writepid /var/run/openvpn.pid
    root     26159  0.0  0.0   5004   556 ?        S    Oct15   0:01 /usr/sbin/openvpn --config /etc/openvpn/openvpn.conf --writepid /var/run/openvpn.pid

    So... If I understand how this would work correctly... All I would need to do is get my .ovpn config file (and certs) to the gateway, and start another openvpn process, using a command similar to the ps aux output, right?

    Whenever openvpn is run on a router/server, it's good practice to jail it; in doing so, if the vpn is ever compromised, the attacker will only be able to gain access to whatever is contained within the chroot jail (i.e. only what openvpn has access to).  While it's good practice, it's not always feasible to do so; for example, it causes more problems than it's worth on OpenWRT.

    Normally, that's all it would take, however, after looking at the script, I don't think it's going to be quite that simple due to how Sophos has implemented OpenVPN [i.e. dynamically creating the configs and subsequently deleting them).  I only have basic knowledge of linux and scripting, so it's going to take me some time to trace commands and see what's what.  I was thinking it [openvpn script] should look similar to OpenWRT's OpenVPN script [not command wise, but path-wise), allowing a few simple edits, but I'm perplexed as to how it's dynamically creating confs and subsequently deleting them. 

    The above assumes one wants to keep Sophos in complete control over the vpn via the web gui, as I would prefer it to be an integrated solution into the web gui.  If you don't care about the web gui integration, the script could be modified to simply run client/server configs and not involve other system processes which are needed for the web gui.  I don't have enough knowledge to do so, however it shouldn't be any different than how one would run openvpn in OpenWRT without the openvpn luci package. 

    If you chose to go that route, you would need to configure individual firewall rules allowing access to and from the vpn (reference the rules in the OpenVPN Wiki I wrote for OpenWRT).  I also believe a vpn interface would probably need to be configured, not sure if Sophos also creates that dynamically.

    Prior to editing anything or making changes to Sophos files, create a backup via the webgui, as well as a backup of each file you edit prior to editing (i.e. cp file.1 file.1.bak)

    @BAlfson is also working on it and below is what he's emailed me thus far (I don't think he'd mind me sharing, so I apologize in advance for not asking first):

    I found:

    :/etc # /var/mdw/scripts/openvpn
    Usage: /var/mdw/scripts/openvpn {start|stop|force-stop|status|try-restart|restart|force-reload|reload|dhgen } [client connection]

    # ls /usr/local/bin/o*
    /usr/local/bin/openvpn-client-status.pl
    /usr/local/bin/openvpn_connections.sh
    /usr/local/bin/openvpn-server-status.pl
    /usr/local/bin/ovpnsh


    So... If I understand how this would work correctly... All I would need to do is get my .ovpn config file (and certs) to the gateway, and start another openvpn process, using a command similar to the ps aux output, right?
    I've never run a router as a client before, so I'm not sure if your client config would need to be a ovpn file or a conf file.  This should be fairly easy to find out though via OpenVPN's HowTO page. (I do remember discussing this with another user on OpenWRT's WRT1900ac thread, and if I can recall around what thread pages it was discussed, I'll take a look there as well [I've been following that thread since pg 103 and it's now in the 320's, so no guarantees]).

    Also, I remember from the Sophos install stating if I didn't want the enterprise features, it would only be a basic linux OS... I think a good place to start may be checking out how the openvpn script is written for a linux distro.  I may not have time to do so tonight, but will tomorrow at the latest.

    [SIZE="1"]**DISCLAIMER: Making any changes via the command line interface [cli] results in the loss of support and warranty for paid licensees**[/SIZE]
  • So... If I understand how this would work correctly... All I would need to do is get my .ovpn config file (and certs) to the gateway, and start another openvpn process, using a command similar to the ps aux output, right?
    I've never run a router as a client before, so I'm not sure if your client config would need to be a ovpn file or a conf file.  This should be fairly easy to find out though via OpenVPN's HowTO page. (I do remember discussing this with another user on OpenWRT's WRT1900ac thread, and if I can recall around what thread pages it was discussed, I'll take a look there as well [I've been following that thread since pg 103 and it's now in the 320's, so no guarantees]).

    Also, I remember from the Sophos install stating if I didn't want the enterprise features, it would only be a basic linux OS... I think a good place to start may be checking out how the openvpn script is written for a linux distro.  I may not have time to do so tonight, but will tomorrow at the latest.
  • To anyone who may find this thread searching for a means to accomplish this. All I was able to find was repeated  nonsense about how this isn't possible.

    It's fairly easy. Grab an old router, flash ddwrt on it, set up your open VPN, Turn DHCP on (if you want), set it in a DMZ.

    Set up a new Ethernet interface wan interface, attach it your DDWRT router. Set up a multipath rule to push whichever traffic or hosts across this new interface to your ddwrt router - dmz - and eventually out your primary wan.

    No biggie. So UTM won't be client. You can find a router in the garbage can that can perform this service.

  • Hi Ken,

    Thanks. Do you know how to set this up on a VMware host? Instead of DDWRT, would pfsense as VM work too?

  • Did anyone get this working?

    I have installed DDWRT on a router and patched it to the new WAN i created but for some reason i am not getting internet access on the DDWRT router, i have not setup any VPN as yet.

    I get it working if i patch it on the current network via a switch but not when i patch it newly created wan interface. 

  • pFsense works great for this. I have a virtual pFsense which connects to IPVanish.

    Used in combo with my UTM, I can choose what traffic goes where.