Would Anyone Be Interested in a VPN Service Like This?

Hi,

I'm gauging the response to an idea I've had and have started developing.

Historically, free VPNs have made money via 1 of 3 methods. Either they've -

  • Sold browsing data to third parties.

  • Been donation based.

  • Subsidized operating costs by being a smaller service of a larger VPN, typically with data/speed caps.

The idea I'm proposing is a free VPN service that operates essentially identical to a paid VPN service. It wouldn't retain browsing logs and connections would be maintained using the standard OpenVPN protocol with either AES-128 or AES-256 encryption. However, unlike other free VPNs, there would be a financial incentive to continue providing decent service.

After clicking connect in a custom, cross platform client (essentially an electron application that invokes OpenVPN CLI commands), the user will be taken to a web page to chose their location. This web page will be monetized with small, unobtrusive advertisements. This is how the service would be funded. The client application itself will be simplistic in design and contain no advertisements. Once the user selects the location they wish to browse from, the client will begin the connection.

The connection process would work like this:

  1. User clicks connect in client.

  2. Application sends new connect request to API server encrypted with the API server's public key (changes daily).

  3. Within this request is that client's public key, which the API server will use to encrypt data it will send back to the client when requested later.

  4. The API server will return a connection ID to the client, encrypted with the aforementioned public key.

  5. The client application will open the browser window allowing the user to chose their browsing location. The connection ID will be provided to the web page in the form of a query tag.

  6. After the user selects their location, a request will be made to the API server containing the location ID.

  7. The API server will validate this request, and provide the OpenVPN profile to the client, again encrypted using the stored public key of the client.

  8. The application receives the encrypted configuration file, decrypts it and hands it off to OpenVPN for connection.

The client will have the option to regenerate the private/public key pair at any time, however any pending connections (i.e. ones which haven't had a location selected) will be lost. The client would be open source.

Due to the free nature of this service it would be best suited to jumping over geo-restrictions and accessing blocked content, however P2P transfers would be allowed.

POLL QUESTION: Would you consider using a service like this?

Thanks!

Poll Options

  • 12
    Yes.
  • 7
    No.
  • 1
    It's more complicated than Yes/No (if you could, please explain in the comments).

Comments

  • +2

    Hey, I wouldn't use the service, but just want to give you a big thumbs up for thinking of a new approach. Good work.

  • +3

    To be honest I don't really have a good grasp on how VPNs work, but my worry is how you'd make enough to keep it going? My understanding is you'd have to connect from your own server to the actual site, which I'd imagine would be quite costly. Just checking out places like adfly, they pay about $2.25 per 1000 views, I think for Google ads its about $4.20 per 1000?, so I wonder if you'd make enough to keep your servers running?

    Also I'm not sure, but will they be located in Aus? As I don't know if theres laws for logging here and whether they're part of the 5 eyes (also if you get in trouble for owning the server?)

    Still though, if what you write above works exactly as you write it, it would be a super great deal/service to use too great I imagine a lot of people would give it an internet death hug haha.

    • Thanks so much for taking the time to respond!

      Just checking out places like adfly, they pay about $2.25 per 1000 views, I think for Google ads its about $4.20 per 1000?, so I wonder if you'd make enough to keep your servers running?

      From my other ventures, I've earned around ~$1/100 users from Adsense, however this fluctuates. Servers aren't as expensive as you may think, at least in some parts of the world (i.e. in European countries where internet and power is quite cheap). Asia and to a lesser extent Australia are premium, with bandwidth being the killer. My plan is to start out on virtualized platforms to keep the costs down.

      Also I'm not sure, but will they be located in Aus? As I don't know if theres laws for logging here and whether they're part of the 5 eyes (also if you get in trouble for owning the server?)

      I don't think metadata laws would apply to me, but that's something I'll have to look into. If they do, then I'll just advise people use an offshore location such as Romania for torrenting and such.

      Still though, if what you write above works exactly as you write it, it would be a super great deal/service to use too great I imagine a lot of people would give it an internet death hug haha.

      Ha! Thanks.

      • Servers aren't as expensive as you may think

        I think multiple servers are more expensive than you think. Some key things to think about:

        • How many users per server (bandwidth, server load)
        • How many PoPs? (and then how many servers per PoP)
        • Each countries laws and data retention
        • IP's being blacklisted (eg, NetFlix banning IP's)
        • Support (cost of replying to queries etc)
        • Accounts - You may have several devices per account, server load and database can get massive.
        • Speed when using PoPs such as Romania. The route that it takes, VPN overheads etc. May be too slow/cannot stream etc (You'd want to outline what's involved in the data process to eliminate negative social media)

        So, potentially, you're not just looking at one server does everything. A customer portal/accounts, webpage to accept and pull income, and then the VPN services [per country/PoP]. And then there's redundancy.. :)

        • Hi,

          How many users per server (bandwidth, server load)
          How many PoPs? (and then how many servers per PoP)

          This is something that will come with time once averages are established and I have some data to work off.

          Each countries laws and data retention

          Absolutely.

          IP's being blacklisted (eg, NetFlix banning IP's)

          Practically impossible to prevent these days unless you're running off a business connection in the intended country. This is how most smart DNS services and the like work.

          Support

          It's a free service, provided on a best effort basis.

          Accounts

          There are no accounts, each connection is unique.

          Speed when using PoPs such as Romania

          Yep, that's why I suggested torrenting not streaming.

          So, potentially, you're not just looking at one server does everything

          Of course not.

          A customer portal/accounts, webpage to accept and pull income,

          I'm not sure you read the OP?

          And then there's redundancy.. :)

          Again, free service, best effort basis. Something to work towards, but probably not needed on day 1.

          • @BuzzBuzzBuzz:

            I'm not sure you read the OP?

            I read it. The below data will need to be stored in a database some where? (ie, a customers account, not necessarily a log in account. Though, maybe it could just sent a json to the server). The webpage I mentioned was your location page.

            • The client will have the option to regenerate the private/public key pair at any time
            • the user will be taken to a web page to chose their location.
            • Once the user selects the location they wish to browse from, the client will begin the connection.

            "I'm gauging the response to an idea". My apologies if you didn't want any advice and only whether you had a customer base.

            • @rompastompa: I'm sorry! I didn't mean to sound rude. I just wasn't sure if you knew this was a free service, that was all. I was more trying to prove I knew what I was doing, both to you and to myself, rather than shut down your suggestions if that makes sense?

              The webpage I mentioned was your location page.

              Fair dinkum.

              My apologies if you didn't want any advice and only whether you had a customer base.

              Not the case at all, I wouldn't have bothered engaging in a dialogue if that was so.

              The way I'm treating connections at the moment is as follows:
              * API server receives request for new connection.
              * Connection is recorded in database
              * Connection is assigned unique id
              * ID is returned to the client, encrypted with the supplied private key.

              That id is then used by the webpage to choose the location for the connection.

              Is there a better way to do this that you can think of?

              • +1

                @BuzzBuzzBuzz: Just some other pointers if you haven't thought of it.

                Variable MTU - different pipes handle different loads. Smaller MTU means more get through, but overheads are higher meaning potentially slower experience.
                Different Ports - some ISP's/networks throttle/block certain ports (usually higher ports).

                • @rompastompa: 100%.

                  My plan is to potentially run two instances of OpenVPN on each server, one on TCP 443 and the other UDP 1194. Obviously, TCP for compatibility and UDP for everything else. However, I haven't actually tested this yet and might just end up splitting the instances across servers. When the user selects TCP on the location page, the backend will forward the request to the appropriate instance on that server to generate the config file, and send that to the database.

                  I'll do some experimenting with different MTU settings to workout the best value for each location. Obviously less of an issue for the TCP connections but still valid.

                  Cheers.

  • +1

    Humm. What about the management of bandwidth/free riders/ and costs? Even using automatical ones ( such as the ones in AWS), Ive already saw things get out of control in a quick way and them the shutdown occurs leaving people in the dark. I think the damage control here is the point you should focus: a free service without rego is too risky if your capital is small.

    • Good points.

      AWS charges out the ass for data. I'm planning to only use unmetered servers, or servers with a set bandwidth allocation. Limit the financial risk to essentially zero bandwidth wise and have a predictable monthly running cost.

      Damage control wise, if a server does go down and connections are dropped this will be reflected in the connection page and the user will be alerted.

  • +1

    I saw these people that may be of use as their VPS seem cheap and you can install OpenVPN, however not sure about location and CPU speed.

    Reviews seem varied but the price seems right.

    https://zetservers.com/ssd-vps.php

    • Interesting, I had a different provider in mind for Romania, but I'll give them a look.

      Thanks!

  • Cool idea. I don't think it will stack up financially though. Let me know if you need help with server setup etc.

    • Thanks, will do.

      If nothing more, it'll be good practice to work on my development and server management skills.

      Cheers.

Login or Join to leave a comment