https://github.com/unode/panyc
Command-line interface to Cisco's AnyConnect VPN.
https://github.com/unode/panyc
Last synced: 4 months ago
JSON representation
Command-line interface to Cisco's AnyConnect VPN.
- Host: GitHub
- URL: https://github.com/unode/panyc
- Owner: unode
- License: gpl-3.0
- Created: 2016-09-28T12:20:39.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-03-23T19:57:26.000Z (about 5 years ago)
- Last Synced: 2025-04-05T10:23:26.195Z (about 1 year ago)
- Language: Python
- Size: 62.5 KB
- Stars: 11
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Panyc
For Python AnyConnect, is a small python wrapper on Cisco's AnyConnect
command-line VPN interface. [](https://travis-ci.org/unode/panyc)
This wrapper was created because the provided command line binary has limited
automation functionality making it hard to script in a fault tolerant way.
The branch `openconnect` contains a rough adaptation of Panyc to work with the
OpenConnect client.
Its main features are:
* Support for multiple connection profiles
* Store all sensitive data on a keychain (passwordstore.org)
* Customize connection after success. Useful for:
* Automate waking up of services
* Anything you can think of...
## Config example
See [one config used for tests](tests/data/postcmd.config)
## Installation
Panyc requirements are included in the `requirements.txt` file.
To install in a virtualenv use:
pip install -r requirements.txt
## Usage
The script can be used by feeding a configuration file via stdin:
cat tests/data/default.config | ./panyc.py connect -
or by providing a [passwordstore](https://passwordstore.org) identifier:
./panyc.py connect vpn/myvpn
You can add a skeleton config to passwordstore (aka pass) by running:
cat tests/data/default.config | pass insert -m vpn/myvpn
For more information about pass check [the password-store website](https://passwordstore.org).
### Connecting
To start a new connection run:
./panyc.py connect vpn/myvpn
to disconnect:
./panyc.py disconnect
to check the status of the connection:
./panyc.py status
to obtain the version of the VPN client:
./panyc.py --version
for anything else:
./panyc.py --help