Git Product home page Git Product logo

deftwork / openvpn Goto Github PK

View Code? Open in Web Editor NEW
4.0 4.0 1.0 36 KB

A Docker file to build images for AMD & ARM devices with a installation of OpenVPN server to secure your data communications, whether it's for Internet privacy, remote access for employees, securing IoT, or for networking Cloud data centers.

Home Page: https://deft.work/openvpn

License: MIT License

Dockerfile 5.09% Makefile 10.04% Shell 84.86%
openvpn vpn-server arm-devices docker arm64 armv7l amd64 openvpn-server multi-arch

openvpn's Introduction

OpenVPN

A Docker file to build images for AMD & ARM devices with an installation of OpenVPN VPN server to secure your data communications, whether it's for Internet privacy, remote access for employees, securing IoT, or for networking Cloud data centers.

Be aware! You should carefully read the usage documentation of every tool!

Thanks to

Details

Website GitHub Docker Hub
Deft.Work my personal blog openvpn openvpn
Docker Pulls Docker Stars Size Sponsors
Docker pulls Docker stars Docker Image size GitHub Sponsors

Compatible Architectures

This image has been builded using buildx for these architectures:

  • amd64 arm64 ppc64le s390x 386 arm/v7 arm/v6

Build Instructions

Build for amd64 arm64 or armv7l architecture (thanks to its Multi-Arch base image)

docker build -t elswork/openvpn .

Usage

The process to get a full fuctional VPN server and a suitable ovpn client file involve 6 steps:

Create Volume

make volume

Or

docker volume create --name ovpn-data-sample

Generate Configuration

make config

Or

docker run -v ovpn-data-sample:/etc/openvpn \
    --log-driver=none --rm elswork/openvpn ovpn_genconfig \
    -u udp://YourServerDomain.com

Initialize PKI

make pki

Or

docker run -v ovpn-data-sample:/etc/openvpn \
    --log-driver=none --rm -it elswork/openvpn touch /etc/openvpn/vars
docker run -v ovpn-data-sample:/etc/openvpn \
    --log-driver=none --rm -it elswork/openvpn ovpn_initpki

Init

You can execute earlier three steps (Create Volume, Generate Configuration and Initialize PKI) in a single make command.

make init

Start VPN Server

make start

Or

docker run -v ovpn-data-sample:/etc/openvpn \
    -d -p 1194:1194/udp --cap-add=NET_ADMIN elswork/openvpn

Create ovpn client file

make client

Or

docker run -v ovpn-data-sample:/etc/openvpn \
    --log-driver=none --rm -it elswork/openvpn easyrsa build-client-full CLIENTNAME nopass

Retrieve ovpn client file

make retrieve

Or

docker run -v ovpn-data-sample:/etc/openvpn \
    --log-driver=none --rm elswork/openvpn \
    ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn

After this command a file called "CLIENTNAME.ovpn" should be created in the current path, this file in the client configuration file for this VPN server, it must be sent to the client device that will connect to the VPN, sometimes it can be difficult to send that file out of the linux system, I suggest to send it via mail if you have an operative mail system in your linux host or using SFTP, FTP, SCP, or Samba. Send the generated ovpn file to your smartphone or client device.

You must have installed OpenVPN Connect


Sponsor me! Together we will be unstoppable.

openvpn's People

Contributors

elswork avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.