📜 ⬆️ ⬇️

Is there an OpenVPN GUI for Linux?

The title of the article was suggested by the topic on one of the forums . Despite the fact that six years have passed since the question arose, little has changed in this direction. And since lately OpenVPN was constantly on my ear, it was decided to correct this situation. This is how the graphical utility VpnGUI was born for creating, editing, running and controlling the execution of the openvpn utility.

After launching the VpnGUI utility, an icon will appear in the tray (a square divided into four blue-red squares) utilities:

image

Tray has a menu that appears when you press the right mouse button when the mouse cursor is on the VPNGui utility tray. The menu has two items - Restore (maximize windows) and Stop (exit). After selecting the “Restore” menu item, the main window of the VPNGui utility will appear on the screen:

image
')
The development was conducted in python using the Tkinter graphics package and Page designer.
Recall that in order to use “a great, powerful, truthful and free Russian language!” (IS Turgenev), you need to add the gui_pyton_gen.tcl file of Page designer after 418 line to the following code:

# -*- coding: utf-8 -*- 

Similar code must also be added to the file support_python_gen.tcl (after 458 lines).

Pystray package was installed for programming the tray.

The operation of the utility begins with the choice of the executable file openvpn or its forks. The utility checks the presence of the executable file and fills the lists with the list of supported mac (integrity control algorithm), ciphers (encryption algorithms) and the list of supported ciphertext files:

 # openvpn –show-digests … #openvpn –show-ciphers … #openvpn –show-tls … 

image

Now you can start working with the configuration file. The user can create a new file or edit an existing one, having previously downloaded it (see screenshot). After the file is uploaded or the new file is saved, the user can run openvpn:

image

After entering the password, OpenVPN diagnostic messages will be displayed in the “Work log” window:

image

As long as openvpn works fine, the VPN Active is disabled. If openvpn for some reason ends its work or is stopped by the user (the “Stop VPN” button), then the button will unlock and become the “Start VPN” button again.

Note that for issuing client and server certificates for OpenVPN, it is convenient to use an XCA certificate authority:

image

Now that openvpn works fine, you can remove it to the tray. To do this, you can use it as the “To tray” button on the “Work protocol” window or the main window menu (Manager → Remove to tray):

image

The utility is self-dependent. The utility binary code can be obtained using the Nuitka package.

Source: https://habr.com/ru/post/338390/


All Articles