2
0
mirror of https://github.com/vimagick/dockerfiles.git synced 2025-12-21 13:23:02 +01:00

update openvpn

This commit is contained in:
kev
2016-09-02 12:23:56 +08:00
parent eaa75b551f
commit f7f3fed822
3 changed files with 48 additions and 77 deletions

View File

@@ -4,44 +4,29 @@
#
OVPN_DIR=./ovpn
OVPN_IMG=vimagick/openvpn
OVPN_DATA=openvpn_data_1
OVPN_BACKUP=openvpn.tgz
OVPN_SERVER=tcp://vpn.easypi.info
OVPN_SERVER=tcp://openvpn.easypi.info
mkdir -p $OVPN_DIR
select opt in server client revoke backup restore quit
select opt in server client revoke quit
do
if [[ $opt == "server" ]]
then
echo "setup server ..."
docker run --rm --volumes-from $OVPN_DATA $OVPN_IMG ovpn_genconfig -u $OVPN_SERVER
docker run -it --rm --volumes-from $OVPN_DATA $OVPN_IMG ovpn_initpki
docker-compose run --rm openvpn ovpn_genconfig -u $OVPN_SERVER
docker-compose run --rm openvpn ovpn_initpki
elif [[ $opt == "client" ]]
then
echo "setup client ..."
read -p '>>> ' OVPN_CLIENT
docker run -it --rm --volumes-from $OVPN_DATA $OVPN_IMG easyrsa build-client-full ${OVPN_CLIENT:?client is empty} nopass
docker run --rm --volumes-from $OVPN_DATA $OVPN_IMG ovpn_getclient $OVPN_CLIENT > $OVPN_DIR/$OVPN_CLIENT.ovpn
docker-compose run --rm openvpn easyrsa build-client-full ${OVPN_CLIENT:?client is empty} nopass
docker-compose run --rm openvpn ovpn_getclient $OVPN_CLIENT > $OVPN_DIR/$OVPN_CLIENT.ovpn
elif [[ $opt == "revoke" ]]
then
echo "revoke client ..."
read -p '>>> ' OVPN_CLIENT
docker run -it --rm --volumes-from $OVPN_DATA $OVPN_IMG easyrsa revoke ${OVPN_CLIENT:?client is empty}
docker run -it --rm --volumes-from $OVPN_DATA $OVPN_IMG easyrsa gen-crl
elif [[ $opt == "backup" ]]
then
echo "backup volume ..."
docker run --rm --volumes-from $OVPN_DATA alpine tar cvzf - -C /etc openvpn > $OVPN_DIR/$OVPN_BACKUP
elif [[ $opt == "restore" ]]
then
echo "restore volume ..."
if docker inspect $OVPN_DATA >& /dev/null
then
docker run --rm --volumes-from $OVPN_DATA -i alpine tar xvzf - -C /etc < $OVPN_DIR/$OVPN_BACKUP
else
docker run --name $OVPN_DATA -v /etc/openvpn -i alpine tar xvzf - -C /etc < $OVPN_DIR/$OVPN_BACKUP
fi
docker-compose run --rm openvpn easyrsa revoke ${OVPN_CLIENT:?client is empty}
docker-compose run --rm openvpn easyrsa gen-crl
elif [[ $opt == "quit" ]]
then
echo "bye"