VPN clients in docker. Now support pptp and openconect client. It starts a persist pptp tunnel and adds routing rules.
Run it in bash like this:
# print help message
docker run --rm imdocker1/vpn-absible --help
# start a pptp tunnel
VPN_ROUTING_IPS="172.0.0.0/8 www.google.com"
VPN_PASSOWRD=xxx
#VPN_DEBUG=y
docker run --net=host \
--privileged=true \
--device=/dev/ppp \
--cap-add=NET_ADMIN \
--name pptp-tunnel-$VPN_SERVER \
-e VPN_ROUTING_IPS="$VPN_ROUTING_IPS" \
-e VPN_DEBUG="$VPN_DEBUG" \
--env-file <(cat <<-END
VPN_PASSWORD=$VPN_PASSOWRD
END
) \
--detach \
imdocker1/vpn-absible pptp <server-domain-or-ip> <user> [<pppd-options>]
#view openconnect help
docker run -it --rm imdocker1/vpn-absible openconect --help
# start a openconnect tunnel
VPN_OPENCONNECT_COOKIE=yyy
docker run --net=host \
--privileged=true \
--device=/dev/net/tun \
--cap-add=NET_ADMIN \
--name openconnect-tunnel-$VPN_SERVER \
-e VPN_DEBUG="$VPN_DEBUG" \
--env-file <(cat <<-END
VPN_PASSWORD=$VPN_PASSOWRD
VPN_OPENCONNECT_COOKIE=$VPN_OPENCONNECT_COOKIE
END
) \
--detach \
imdocker1/vpn-absible openconnect [<openconnect-options>] <server-domain-or-ip>
Accepted docker environment variables for vpn client:
Content type
Image
Digest
Size
62.2 MB
Last updated
almost 8 years ago
docker pull imdocker1/vpn-ansible