Historically, there have been many, many client GUIs for OpenVPN. Practically all are work of a one person, and many of them are completely unmaintained. Here's a snapshot (12th May 2011) of native Windows GUIs from our related project list:
- OpenVPN-GUI. Based on old OpenVPN GUI for Windows.
- OpenVPN MI GUI. Based on old OpenVPN GUI for Windows.
- OpenVPN Manager. Latest changes ~4 months old.
- OpenVPN Client Windows. Latest changes ~12 months old.
There are also tons of inactive client GUI projects and probably dozens of in-house client GUI implementations. This fragmentation of development effort hurts both users (who never get to use a really good GUI) and developers (who have to reinvent the wheel over and over again).
OpenVPN project has distributed an OpenVPN-GUI with it's Windows installers for years, but core OpenVPN developers have put very little emphasis on developing the GUI; this is understandable, as it's outside the scope of the project. OpenVPN releases prior to 2.3-alpha1 included a very old (released 2005) OpenVPN-GUI. Releases starting with 2.3-alpha1 use a more modern OpenVPN-GUI.
Here's a list of potential reasons why so many OpenVPN GUIs exist:
- Existing GUI(s) are lacking some special functionality
- Hacking together a customized GUI is relatively easy
- Making a good-quality general purpose GUI requires lots of work
- Working with others necessarily means extra development overhead
- Most GUI projects are small and don't show up anywhere (except our related projects list)
There are a few steps between now and a general purpose GUI:
- Find out the most common GUI features people need (and implement those)
- Merge existing projects together (if possible)
Describe what is the core reason why this applications exists. These should be visible to the user.
- Create a tunnel
- Close down a tunnel
- Support multiple OpenVPN configuration files
These describe the qualities of the application, such as look and feel and performance.
- Operates from the system tray
These are similar to non-functional requirements, but imposed upon from outside.
- Must run on Windows XP SP3 and above
- Must use the management interface