add openvpn-as

This commit is contained in:
L4RM4ND 2024-05-18 00:11:23 +02:00
parent 2bfc4764a8
commit ccb8d86d35
3 changed files with 48 additions and 0 deletions

View File

@ -141,6 +141,7 @@ A [VPN](https://en.wikipedia.org/wiki/Virtual_private_network) is a mechanism fo
- [wg-easy](examples/wg-easy) - The easiest way to install & manage WireGuard on any Linux host. All-in-one deployment of a WireGuard VPN network service + web management UI.
- [WireGuard](examples/wireguard) - WireGuard by Linuxserver.io is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography.
- [IPSec VPN Server](examples/ipsec-vpn-server) - Docker image to run an IPsec VPN server, with IPsec/L2TP, Cisco IPsec and IKEv2.
- [OpenVPN-AS](examples/openvpn) - OpenVPN Access Server delivers an enterprise VPN solution for businesses of all sizes, providing a securely encrypted connection to private networks over unsecured public internet.
- [Firezone](examples/firezone) - Self-hosted secure remote access gateway that supports the WireGuard protocol. It offers a Web GUI, 1-line install script, multi-factor auth (MFA), and SSO.
- ~~[Netbird](https://github.com/netbirdio/netbird)~~ - Quickly connect your computers, servers, cloud instances, and IoT devices into a secure private network. No configuration required.
- [Headscale](examples/headscale) - An open source, self-hosted implementation of the Tailscale control server.

View File

@ -0,0 +1,11 @@
# References
- https://openvpn.net/as-docs/docker.html
# Notes
Default username is `openvpn`.
The password is auto-generated and displayed in container logs.
Admin web UI is accessible at `https://<IP>:943`

View File

@ -0,0 +1,36 @@
version: '3.3'
services:
openvpn-as:
image: openvpn/openvpn-as
container_name: openvpn-as
hostname: openvpn-as
restart: always
cap_add:
- NET_ADMIN
ports:
- 443:443/tcp # openvpn over tcp
- 1194:1194/udp # openvpn over udp
- 943:943/tcp # openvpn admin ui
expose:
- 443 # openvpn over tcp
- 1194 # openvpn over udp
- 943 # openvpn as admin ui
volumes:
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/openvpn:/openvpn
#networks:
# - proxy
#labels:
# - traefik.enable=true
# - traefik.docker.network=proxy
# - traefik.http.routers.openvpn.rule=Host(`openvpn.example.com`)
# - traefik.http.services.openvpn.loadbalancer.server.port=943
# # Optional part when proxying to services that already provide ssl/tls
# - traefik.http.services.openvpn.loadbalancer.server.scheme=https
# - traefik.http.services.openvpn.loadbalancer.serverstransport=insecureTransport@file
# # Optional part for traefik middlewares
# - traefik.http.routers.openvpn.middlewares=local-ipwhitelist@file
#networks:
# proxy:
# external: true