Wrapper script for OpenConnect supporting Azure AD (SAMLv2) authentication to Cisco SSL-VPNs
Project description
openconnect-sso
Wrapper script for OpenConnect supporting Azure AD (SAMLv2) authentication to Cisco SSL-VPNs
TL; DR
Using pip/pipx
This will install openconect-sso
along with its dependencies including Qt:
$ pip install --user pipx
Successfully installed pipx
$ pipx install "openconnect-sso[full]"
⣾ installing openconnect-sso
installed package openconnect-sso 0.4.0, Python 3.7.5
These apps are now globally available
- openconnect-sso
⚠️ Note: '/home/vlaci/.local/bin' is not on your PATH environment variable.
These apps will not be globally accessible until your PATH is updated. Run
`pipx ensurepath` to automatically add it, or manually modify your PATH in your
shell's config file (i.e. ~/.bashrc).
done! ✨ 🌟 ✨
Successfully installed openconnect-sso
$ pipx ensurepath
Success! Added /home/vlaci/.local/bin to the PATH environment variable.
Consider adding shell completions for pipx. Run 'pipx completions' for
instructions.
You likely need to open a new terminal or re-login for the changes to take
effect. ✨ 🌟 ✨
If you have Qt 5.x installed, you can skip the installation of bundled Qt version:
pipx install openconnect-sso
Of course you can also install via pip
instead of pipx
if you'd like to
install systemwide or a virtualenv of your choice.
On Arch Linux
There is an unofficial package available for Arch Linux on AUR. You can use your favorite AUR helper to install it:
yay -S openconnect-sso
Using nix
The easiest method to try is by installing directly:
$ nix-env -i -f https://github.com/vlaci/openconnect-sso/archive/master.tar.gz
unpacking 'https://github.com/vlaci/openconnect-sso/archive/master.tar.gz'...
[...]
installing 'openconnect-sso-0.4.0'
these derivations will be built:
/nix/store/2z47740z1rr2cfqfin5lnq04sq3c5xjg-openconnect-sso-0.4.0.drv
[...]
building '/nix/store/50q496iqf840wi8b95cfmgn07k6y5b59-user-environment.drv'...
created 606 symlinks in user environment
$ openconnect-sso
An overlay is also available to use in nix expressions:
let
openconnectOverlay = import "${builtins.fetchTarball https://github.com/vlaci/openconnect-sso/archive/master.tar.gz}/overlay.nix";
pkgs = import <nixpkgs> { overlays = [ openconnectOverlay ]; };
in
# pkgs.openconnect-sso is available in this context
... or to use in configuration.nix
:
{ config, ... }:
{
nixpkgs.overlays = [
(import "${builtins.fetchTarball https://github.com/vlaci/openconnect-sso/archive/master.tar.gz}/overlay.nix")
];
}
Configuration
If you want to save credentials and get them automatically injected in the web browser:
$ openconnect-sso --server vpn.server.com/group --user user@domain.com
Password (user@domain.com):
[info ] Authenticating to VPN endpoint ...
User credentials are automatically saved to the users login keyring (if available).
If you already have Cisco AnyConnect set-up, then --server
argument is
optional. Also, the last used --server
address is saved between sessions so
there is no need to always type in the same arguments:
$ openconnect-sso
[info ] Authenticating to VPN endpoint ...
Configuration is saved in $XDG_CONFIG_HOME/openconnect-sso/config.toml
. On
typical Linux installations it is located under
$HOME/.config/openconnect-sso/config.toml
Development
openconnect-sso
is developed using Nix. Refer to the
Quick Start section of the Nix
manual to see how to get it
installed on your machine.
To get dropped into a development environment, just type nix-shell
:
$ nix-shell
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing pip-build-hook
Using pipBuildPhase
Sourcing pip-install-hook
Using pipInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Run 'make help' for available commands
[nix-shell]$
To try an installed version of the package, issue nix-build
:
$ nix build
[1 built, 0.0 MiB DL]
$ result/bin/openconnect-sso --help
Alternatively you may just get Poetry and
start developing using the scripts/devenv
helper script.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for openconnect_sso-0.5.0a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4743b5adc5c31f9e39b0999f9061eda196f5cece8e8584dfe603a6c1eec40242 |
|
MD5 | d285f324f2e6f1759e1309f9bf24283a |
|
BLAKE2b-256 | 8e670a695bcc300d0a5359685e5a0470c4ced59d4dd765529dc568d0a06aeb65 |