Go to file
2024-01-18 20:47:20 +08:00
.devcontainer Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
.github Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
.vscode Update README.md 2024-01-18 20:47:20 +08:00
apps Fix the user agent of auth window 2024-01-18 20:13:06 +08:00
crates Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
.editorconfig Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
.gitignore Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
Cargo.lock Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
Cargo.toml Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00
LICENSE Initial commit 2020-02-15 16:23:49 +08:00
README.md Update README.md 2024-01-18 20:47:20 +08:00
rustfmt.toml Refactor using Tauri (#278) 2024-01-16 22:18:20 +08:00

GlobalProtect-openconnect

A GUI for GlobalProtect VPN, based on OpenConnect, supports the SSO authentication method. Inspired by gp-saml-gui.

Features

  • Better Linux support
  • Support both CLI and GUI
  • Support both SSO and non-SSO authentication
  • Support multiple portals
  • Support gateway selection
  • Support auto-connect on startup
  • Support system tray icon

Usage

CLI

The CLI version is always free and open source in this repo. It has almost the same features as the GUI version.

Usage: gpclient [OPTIONS] <COMMAND>

Commands:
  connect     Connect to a portal server
  disconnect  Disconnect from the server
  launch-gui  Launch the GUI
  help        Print this message or the help of the given subcommand(s)

Options:
      --fix-openssl  Get around the OpenSSL `unsafe legacy renegotiation` error
  -h, --help         Print help
  -V, --version      Print version

See gpclient -h for help.

GUI

The GUI version is also available after you installed it. You can launch it from the application menu or run gpclient launch-gui in the terminal.

Note

The GUI version is partially open source. Its background service is open sourced in this repo as gpservice. The GUI part is a wrapper of the background service, which is not open sourced.

Installation

Debian/Ubuntu based distributions

Install from PPA

sudo add-apt-repository ppa:yuezk/globalprotect-openconnect
sudo apt-get update
sudo apt-get install globalprotect-openconnect

Install from deb package

Download the latest deb package from releases page. Then install it with dpkg:

sudo dpkg -i globalprotect-openconnect_*.deb

Arch Linux / Manjaro

Install from AUR

Install from AUR: globalprotect-openconnect-git

Install from package

Download the latest package from releases page. Then install it with pacman:

sudo pacman -U globalprotect-openconnect-*.pkg.tar.zst

Fedora/OpenSUSE/CentOS/RHEL

Install from COPR

The package is available on COPR for various RPM-based distributions. You can install it with the following commands:

sudo dnf copr enable yuezk/globalprotect-openconnect
sudo dnf install globalprotect-openconnect

Install from OBS

The package is also available on OBS for various RPM-based distributions. You can follow the instructions on this page to install it.

Install from RPM package

Download the latest RPM package from releases page.

Other distributions

The project depends on openconnect, webkit2gtk, libsecret, libayatana-appindicator or libappindicator-gtk3. You can install them first and then download the latest binary release (i.e., *.bin.tar.gz) from releases page.

Install the Old Version (v1.4.9)

The 1.x version is still available on the 1.x branch, you can build it from the source code by following the instructions in the README.md file.

License

GPLv3