This is a glue between OpenConnect and systemd-networkd.
Works by replacing vpnc-script
.
Installation:
cargo install systemd-networkd-vpnc --root /usr/local/
chmod u+s /usr/local/bin/systemd-networkd-vpnc # if you want to run openconnect as a non-root user
After it's installed, add --script=/usr/local/bin/systemd-networkd-vpnc
option to your openconnect
command.
For instance:
openconnect --interface=cisco-vpn0 --script=/usr/local/bin/systemd-networkd-vpnc \
--csd-wrapper=/usr/local/bin/csd-wrapper.sh --csd-user=myname --protocol=anyconnect \
[email protected] vpn.company.com
The script generates /etc/systemd/network/cisco-vpn0.network
network file
and reloads configs, so systemd-networkd handles VPN network configuration.
After VPN connection, if everything went well, you will see the following status:
$ networkctl
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 enp4s0 ether no-carrier configuring
4 wlan0 wlan routable configured
9 cisco-vpn0 none routable configured
4 links listed.
Licenced under MIT. Feel free to use it at your discretion. This software is free of charge, no warranty issued! I'm not responsible for any data, hardware or any other losses as a result of using or misusing this software!
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be licensed under MIT, without any additional terms or conditions.
All contributions are welcome as PRs here!