Skip to content

[Script and Docker 🐳] OpenConnect (Cisco AnyConnect) VPN Server (OCServ) script one key easy configurator and installer

Notifications You must be signed in to change notification settings

samsesh/ocserv-docker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenConnect-VPN-Server

2022 OCT UPDATE: We dockerized and added Dockerfile to run it anywhere you want on any linux distro easily. Buggy script for configuring OpenConnect (ocserv) protocol on the server easily and automatically.

2023 JAN UPDATE: We added a help instruction for Docker custom installation so everyone can fully customized ocserv configuration for him/her self like port number, custom header etc.

Docker Installation

  1. Install Docker
  2. Build docker image
docker build -t ocserv https://github.com/samsesh/ocserv-docker.git
  1. Run docker container
docker run --name ocserv --privileged -p 443:443 -p 443:443/udp -d --restart unless-stopped ocserv
  1. Add user
docker exec -ti ocserv ocpasswd -c /etc/ocserv/ocpasswd testUserName
  1. Change user password
docker exec -ti ocserv ocpasswd -c /etc/ocserv/ocpasswd testUserName
  1. Delete user
docker exec -ti ocserv ocpasswd -c /etc/ocserv/ocpasswd -d testUserName
  1. Lock user
docker exec -ti ocserv ocpasswd -c /etc/ocserv/ocpasswd -l testUserName
  1. Unlock user
docker exec -ti ocserv ocpasswd -c /etc/ocserv/ocpasswd -u testUserName
  1. Show all users and their hashed password
docker exec -ti ocserv cat /etc/ocserv/ocpasswd
  1. Show all connected users
docker exec -ti ocserv occtl show users
  1. Show all options on occtl
docker exec -ti ocserv occtl help
  1. Backup user & Restore

Backup :

docker exec -ti ocserv cat /etc/ocserv/ocpasswd >> ocserv_backup.txt

Restore

docker exec -i ocserv sh -c 'cat > /etc/ocserv/ocpasswd ' <  ocserv_backup.txt
  • Note: This only backs up and restores the list of users, it does not back up their status such as whether they are locked or not.

Script Installation

Tested on ubuntu 18.04 and 16.04.

Download and saving script on your server:

curl -O https://github.com/samsesh/ocserv-docker/raw/master/ocserv-install.sh

Making script executable

chmod +x ocserv-install.sh

And then just run it:

./ocserv-install.sh

or

sudo bash ocserv-install.sh

Features

  • Easy install
  • Easy uninstall
  • Add User
  • Change Password
  • Show All Users
  • Delete User
  • Lock User
  • Unlock User

How to connect to it?

For making connection to your server, you can use AnyConnect, OpenConnect or other alternative clients.

And one more thing, contributions are welcome.

How to customize the configuration?

In docker way, at the beginning you have to clone the repo:

git clone https://github.com/samsesh/ocserv-docker.git

cd to the directory

cd ./ocserv-docker

You can change port, disable UDP, add custom-header and so on. Modify and customize ocserv.conf file and then build your image with modified ocserv.conf:

docker build . -t ocserv

Create new container from ocserv image

docker run --name ocserv --privileged -p 443:443 -p 443:443/udp -d --restart unless-stopped ocserv

Next steps like add or remove users are same as Docker Installation part.

Issues

Feel free to submit issues and enhancement requests or contact me my site samsesh.net.

More

The script is based on here

About

[Script and Docker 🐳] OpenConnect (Cisco AnyConnect) VPN Server (OCServ) script one key easy configurator and installer

Topics

Resources

Stars

Watchers

Forks

Languages

  • Shell 75.5%
  • Dockerfile 24.5%