openconnect-proxy/connect
2019-09-20 19:21:19 +02:00

42 lines
1.1 KiB
Bash
Executable file

#!/bin/bash
# Edit this
PASSWORD_FILE=
OPENCONNECT_USER=
OPENCONNECT_URL=
OPENCONNECT_OPTIONS="--authgroup <VPN Group> --servercert <VPN Server Certificate> --protocol=pulse"
HTTPS_PROXY_PORT=8888
SOCKS5_PROXY_PORT=8889
# Don't touch this
container() {
if [ "$PASSWORD_FILE" ]; then
OPENCONNECT_PASSWORD="`cat $PASSWORD_FILE`"
else
# Ask for password on the commandline
stty -echo
printf "VPN password: "
read OPENCONNECT_PASSWORD
stty echo
printf "\n\n"
fi
# Start container with proxy on specified port
until docker run -it --rm "$@" --privileged --name openconnect-proxy \
-e OPENCONNECT_URL="$OPENCONNECT_URL" \
-e OPENCONNECT_OPTIONS="$OPENCONNECT_OPTIONS" \
-e OPENCONNECT_USER="$OPENCONNECT_USER" \
-e OPENCONNECT_PASSWORD="$OPENCONNECT_PASSWORD" \
-e HTTPS_PROXY_PORT="$HTTPS_PROXY_PORT" \
-e SOCKS5_PROXY_PORT="$SOCKS5_PROXY_PORT" \
-p $HTTPS_PROXY_PORT:$HTTPS_PROXY_PORT \
-p $SOCKS5_PROXY_PORT:$SOCKS5_PROXY_PORT \
"wazum/openconnect-proxy:latest"; do
echo "openconnect exited with code $?. Restarting process…" >&2
sleep 1
done
}
container "$@"