OpenFortiGUI is an open-source VPN-Client to connect to Fortigate and Barracuda VPN-Hardware. For Fortigate VPN it uses openfortivpn, for Barracuda it uses the official Barracuda VPN Client (must be installed) and adds an easy to use and nice GUI on top of it, written in Qt5.

Unlike other VPN-clients it is also possible to connect to multiple VPN-destinations  simultaneously (for Fortigate only). It is an alternative for the closed-source Forticlient – SSLVPN Client.

Features include:

  • Qt5 GUI
  • Fortigate: openfortivpn library built-in, no separate download required
  • Barracuda: Official Barracuda VPN Client required, you must first download from Barracuda download site
  • All settings saved in text-files, so easy to share, passwords saved AES-encrypted (key can be defined as needed, GNOME keyring & KWallet support)
  • VPNs divided into local and global sections (readonly, useful for enterprise deployments to many users)
  • VPN-groups can be defined to start defined groups of VPNs at the same time
  • Trayicon with fast access to start/stop VPNs and groups
  • Multiple VPN connections possible simultaneously
  • Certificate and user/password auth supported
  • 2Factor support (TOTP)
  • Autostart VPNs on program startup
  • English, german, catalan (thanks wagafo@github) and japanese (thanks tsundeoku@github) language
  • Optional: KRunner Plugin for KDE5

Source & community development:

Prebuild packages are available for following Distros:

Last Update 9.2.2024

Recommended: Use our apt mirror, for instructions see:

Available packages on our apt mirror: openfortigui and openfortigui-runner

Quick instruction to build from source:

  1. Install DEV-tools (on Ubuntu: build-essential, qt5-default, libssl-dev, qt5keychain-dev)
  2. git clone
  3. cd openfortigui && git submodule init && git submodule update
  4. qmake && make -j4
  5. openfortigui binary is ready


If you want to help debugging please follow the next steps to produce a debug binary.

  1. Install DEV-tools (on Ubuntu: build-essential, qt5-default, libssl-dev, qt5keychain-dev)
  2. git clone
  3. cd openfortigui && git submodule init && git submodule update
  4. qmake -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug && /usr/bin/make -j4
  5. openfortigui debug binary is ready

OpenFortiGUI spawns new processes for every VPN connection profile.

You can also start a VPN connection on terminal and so use gdb. For example: sudo /usr/bin/openfortigui –start-vpn –vpn-name [yourvpnname] –main-config ‘/home/[yourusername]/.openfortigui/main.conf’

Just replace [yourvpnname] with your vpn profile name and [yourusername] with your Linux username.

Used software/libraries/resources:

235 thoughts on “OpenFortiGUI

  1. cezar

    I just install software on Linux MInt 21.3 (jammy)
    and do not work. What can I do?
    The old software, working.

  2. lio

    Hello, Where can i find a Debian Bookworm package for i386 ?
    Yes, i use a good old NetTop MSI U120; it fit in my pocket suite 🙂

  3. Pingback: How to install OpenFortiGUI on Ubuntu Linux – RunModule

  4. Gerald

    i am using OPENFORTIGUI, since a year, still working until now because our company changing to SAML Authentifikaton.
    Now i find a special openfortivpn see which has the option –saml. In terminal it works fine.
    Is there a simple way to use this extra options with the GUI.

    2. Question
    I am not able to update the GUI i am still working with 0.9.5 How can i update


  5. DerRotMax

    Not working in MX 23 (based on Debian 12). libssl1.1 is no longer supported. Any way we could get an update built against libssl3?

    Otherwise, this project has been a lifesaver

  6. Johann

    What a useful tool, thank you!

    I had the same problem on Xubuntu 22.04: no authentication dialog appeared when I clicked the “Connect” button. I did 2 things to fix it:
    1. Do NOT enter a password in the setup wizard’s Authentication section. Check ~/.openfortigui/vpnprofiles/your_server_name.conf for the line starting with “password=”. That should be the only text on that line, i.e. no password given.
    2. Set your server Name to exactly that required by your VPN server provider, not your own label.
    (I’m not sure the 2nd step was strictly necessary.)

  7. Alan

    It is not getting a password from k-wallet on Fedora 38

    jul. 19 15:57:11 sudo: um terminal é necessário para ler a senha; use a opção -S para ler a entrada padrão ou configure um auxiliar de askpass
    jul. 19 15:57:13 sudo: uma senha é necessária

  8. GIlberto

    It’s a wonderful job.
    However, everytime I connected, I needed to go go konsole and set routes manually.
    Is there any way to do so via GUI?

  9. Alex Wieder

    #### FOR MINT 20 USERS ####

    I just found these steps on the issues forum for the project in github –

    Here’s a copy of the instructions (from Oct. 27, 2020):

    Currently found a workaround:

    run OpenFortiGUI via sudo (with root permissions)
    configure connection
    connect – now it asks certificate properly and connects
    run OpenFortiGUI again as regular user
    now it connects also here
    then used SUDO -E option from OpenFortiGUI settings and then also certificate as regular user received and now works also as regular user
    then you can delete all configuration, profiles under sudo permissions and use these under regular user only as it should be

  10. bmolino

    Hello, hope find you well.
    On Ubuntu 22.04 there is a problem with UI ’cause ‘Connect’ doesn’t work. Also on click for connection in the main window, neither with the double click setting. Obviously the icon ‘Connect’ doesn’t work also in the contextual menu from the vpn list.
    The log is empty (last message is dated April 21st, the day of my Ubuntu update).
    openFortiGUI 0.9.5

    1. Serjth

      This helps me after I updated Ubuntu from 18 to 22:
      Open settings file ~/.openfortigui/main.conf
      In section [main] change “sudo_preserve_env” variable from false to true.

      1. Raphael

        Hi I’ve been facing the same issue. I have Ubuntu 22.04 when I try to connect VPN from my company does not work. I catch these errors on log:

        jun. 30 17:23:53 openfortiGUI::Debug: tiConfVpnProfile::readVpnProfiles() -> vpnprofile found: “/home//.openfortigui/vpnprofiles/VPN.conf”
        jun. 30 17:23:53 openfortiGUI::Debug: vpnManager::onClientConnected()
        jun. 30 17:23:53 openfortiGUI::Debug: client api helo command:: 0 ::name:: “VPN”
        jun. 30 17:23:54 openfortiGUI::Debug: client disconnected:: “VPN”
        jun. 30 17:23:54 openfortiGUI::Debug: vpnManager::onClientVPNStatusChanged() “VPN-” status 0
        jun. 30 17:23:54 openfortiGUI::Debug: MainWindow::onClientVPNStatusChanged:: “VPN” ::status:: 0
        jun. 30 17:23:54 openfortiGUI::Debug: VPN process “VPN” error occurred!
        jun. 30 17:23:54 openfortiGUI::Debug: VPN process “VPN” finished!


Leave a Reply

Your email address will not be published. Required fields are marked *