Sign inSign up

elyerr/vpn-core

By elyerr

Updated 8 months ago
Archived

VPN Core API is a backend service intended to run on all VPN servers

Image
Networking
Security
Internet of things
0

1.2K

elyerr/vpn-core repository overview

VPN CORE API

VPN Core API is a backend service intended to run on all VPN servers. It supports both WireGuard and proxy servers, and is built with a multi-instance architecture for WireGuard, allowing multiple independent configurations to run on a single server.

This API acts as the foundation of the VPN management system, and integrates seamlessly with VPN Control — the centralized VPN server management interface. It enables efficient configuration, monitoring, and management of multiple VPN instances across various servers.

Environment File Configuration

The service uses the following environment variables:

Core Settings .env (file)
  • VPN Server control
CONTROL_SERVER=https://vpn.elyerr.xyz
  • VPN MODE (production or dev)
APP_ENV=production
  • Controls VPN user authentication. Set to 1 to enable or 0 to disable (recommended for testing). You can use FoxyProxy to test proxy routing over TLS (HTTPS) if you have a valid TLS certificate. If you don't have a valid certificate, you can use HTTP instead for testing purposes.
AUTH=1
Proxy Server Settings
  • SOCKS Proxy (Server-side)
PROXY_SOCKS_HOST=127.0.0.1
PROXY_SOCKS_PORT=1090
PROXY_SOCKS_SSL_CERT="/ssl/cert.pem"
PROXY_SOCKS_SSL_KEY="/ssl/key.pem"
  • Client-facing Proxy
PROXY_CLIENT_HOST=0.0.0.0
PROXY_CLIENT_PORT=1080
PROXY_CLIENT_SSL_CERT="/ssl/cert.pem"
PROXY_CLIENT_SSL_KEY="/ssl/key.pem"

Docker docker-compose.yml

name: vpn-core

services:
  vpn-core:
    image: elyerr/vpn-core:latest
    restart: always
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    ulimits:
      nofile:
        soft: 51200
        hard: 51200
    env_file:
      - .env
    ports:
       - "50051:50051/tcp"
       - "51820-51850:51820-51850/udp"
       - "1080:1080/tcp" 
    volumes:
      - data:/app/config
      - .env:/app/.env
      - .env:/usr/share/server/.env
      - database:/app/data
      - ./ssl:/ssl #
    command: sh -c "/usr/local/bin/start.sh"
    networks:
      - public-net
volumes:
  data: 
  database:

networks:
  public-net:
    driver: bridge

Tag summary

Content type

Image

Digest

sha256:01a63f584

Size

139.9 MB

Last updated

about 1 year ago

docker pull elyerr/vpn-core