#60 How and why I implemented my own VPN solution using WebSockets?
Closed Opened by skateman.

I had a plan to connect a few remote endpoints into a single virtual network, originally with OpenVPN. However, due to some hosting and ISP limitations the task became extremely hard and I started to look into alternatives. I ended up with implementing my own VPN-like solution through WebSockets, running on OpenShift. I would like to share my long journey to this solition and in the meantime walk through some networking-related topics.

The talk is for all the people who are interested in networking, tun/tap, websockets and openshift.

I think 5 minutes are too short and 60 minutes are too long for me, so I would like to propose 30 minutes.

  • Name: Dávid Halász
  • FAS ID: skateman

which were the ISP limitations? do you know fedora ships openconnect which is https-based vpn?

Well, I did not know about openconnect, but it seems to solve most of my problems. I think you guessed my ISP limitations correctly (blocked VPN traffic). On the OpenShift side I had no access to the TUN/TAP interface, so I basically did something similar that's described here in the last section.

I didn't needed the network to be routable on the serverside, so there I just have userspace routing among the clients. On the clientside I'm using TUN, but with websockets ... that is essentially HTTP(S).

Is there a Fedora Project / Fedora Contributor angle to this?

The short answer would be no, there isn't. However, this could be integrated into Fedora in the future, maybe as a very simple VPN solution. I understand that this is a fedora-oriented event, I was thinking to talk about something interesting for the Fedora contributors and receive feedback from them to make it more useful.

Metadata Update from @bex:
- Issue tagged with: Talk In Consideration

I regret that we are unable to accept this talk this year. There will be lightning talk sessions and I encourage you to consider this option.

Metadata Update from @bex:
- Issue status updated to: Closed (was: Open)

Metadata