Skip to content

mrauhu/docker-openvpn-http-ssh-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Docker compose OpenVPN client with HTTP and SSH proxy

Provides a Proxy Auto-Configuration script URL for easy setup.

Prerequisites

Setup

  1. Clone repository:

    git clone https://github.com/mrauhu/docker-openvpn-http-ssh-proxy 
    cd docker-openvpn-http-ssh-proxy 
  2. Copy your OpenVPN client config with certificates to the config/ directory.

  3. Create the .env file and set values:

    OPENVPN_USERNAME= OPENVPN_PASSWORD= # Comma separated list, like: `a.example.com,b.example.com,*.internal.example.com` OPENVPN_TUNNEL_HOSTS= # Name of config file, like: `config.ovpn` OPENVPN_CONFIG_FILE=

    Optionally, you can override default values in the .env file:

    OPENVPN_HOST=127.0.0.1 OPENVPN_PROXY_AUTO_CONFIGURATION_PORT=8081 OPENVPN_PROXY_HTTP_PORT=8080 OPENVPN_PROXY_SSH_PORT=2222
  4. Use the Proxy Auth-Configuration (PAC) script URL:

    http://127.0.0.1:8081 

    The URL based on pattern built from environment variables:

    http://${OPENVPN_HOST}:${OPENVPN_PROXY_AUTO_CONFIGURATION_PORT} 

    For:

    • macOS

      In System Preferences — Network — Proxies — Automatic Proxy Configuration protocol:

      • set Proxy Configuration File URL.
    • Windows

      In Settings — Network & Internet — Proxy:

      • check:
        • Automatically detect settings;
        • Use script setup;
      • set Script address.

Usage

Start in background

docker-compose up -d 

Stop and remove containers

docker-compose down 

Update and rebuild images

git pull --ff-only && docker-compose build 

License

Apache 2.0

© Sergey N