mirror of https://github.com/tiyn/wiki
parent
663712f764
commit
a44146af39
@ -0,0 +1,68 @@
|
|||||||
|
# jonohill - docker-openvpn-proxy
|
||||||
|
|
||||||
|
This is a [Docker](/wiki/docker.md) container for an
|
||||||
|
[OpenVPN proxy](/wiki/vpn.md#proxy).
|
||||||
|
The official container and documentation was made by
|
||||||
|
[jonohill](https://github.com/jonohill/docker-openvpn-proxy).
|
||||||
|
|
||||||
|
## Set-up
|
||||||
|
|
||||||
|
Create the file `rebuild.sh`.
|
||||||
|
Change the settings according to your needs and run `./rebuild.sh` afterwards.
|
||||||
|
|
||||||
|
## Volumes
|
||||||
|
|
||||||
|
Set the following volumes with the -v tag.
|
||||||
|
|
||||||
|
| Outside mount/volume name | Container mount | Description |
|
||||||
|
| ------------------------- | --------------- | ------------------------ |
|
||||||
|
| `ovpn-proxy` | `/config` | storage for openvpn data |
|
||||||
|
|
||||||
|
## Ports
|
||||||
|
|
||||||
|
Set the following ports with the -p tag.
|
||||||
|
|
||||||
|
| Container Port | Recommended outside port | Protocol | Description |
|
||||||
|
| -------------- | ------------------------ | -------- | ------------ |
|
||||||
|
| `9050` | `8080` | HTTP | proxy port |
|
||||||
|
|
||||||
|
## Environment-variables
|
||||||
|
|
||||||
|
Set the following variables with the -e tag.
|
||||||
|
|
||||||
|
| Name | Usage | Default |
|
||||||
|
| ------------------- | --------------------------- | ------- |
|
||||||
|
| `LOCAL_NETWORK` | Set local network subnet | ` ` |
|
||||||
|
| `OPENVPN_USERNAME` | username for OpenVPN | ` ` |
|
||||||
|
| `OPENVPN_PASSWORD` | password for OpenVPN | ` ` |
|
||||||
|
|
||||||
|
## Additional
|
||||||
|
|
||||||
|
There are some special variables to set.
|
||||||
|
|
||||||
|
| Flag | Usage |
|
||||||
|
| ----------- | ---------------------- |
|
||||||
|
| `--cap-add` | add linux capabilities |
|
||||||
|
| `--device` | connect devices |
|
||||||
|
| `--sysctl` | configure systemctl |
|
||||||
|
|
||||||
|
## rebuild.sh
|
||||||
|
|
||||||
|
```sh
|
||||||
|
#!/bin/sh
|
||||||
|
docker stop openvpn-proxy
|
||||||
|
docker rm openvpn-proxy
|
||||||
|
docker pull jonoh/openvpn-proxy
|
||||||
|
docker run --name openvpn-proxy \
|
||||||
|
--restart unless-stopped \
|
||||||
|
-p "9050:8080" \
|
||||||
|
-v "openvpn-proxy:/config" \
|
||||||
|
-e LOCAL_NETWORK=192.168.178.0/24 \
|
||||||
|
-e OPENVPN_USERNAME="<OVPN_USERNAME>" \
|
||||||
|
-e OPENVPN_PASSWORD="<OVPN_PASSWORD>" \
|
||||||
|
--cap-add=NET_ADMIN \
|
||||||
|
--device /dev/net/tun \
|
||||||
|
--sysctl net.ipv6.conf.all.disable_ipv6=0 \
|
||||||
|
-d jonoh/openvpn-proxy
|
||||||
|
|
||||||
|
```
|
@ -0,0 +1,37 @@
|
|||||||
|
# VPN
|
||||||
|
|
||||||
|
A VPN is a virtual private network.
|
||||||
|
It uses a secure connection between a computer and a network or two networks.
|
||||||
|
It can be used to display another IP address but does not make tracking or
|
||||||
|
fingerprinting of the device impossible.
|
||||||
|
VPNs feature a server and a client side.
|
||||||
|
|
||||||
|
## OpenVPN
|
||||||
|
|
||||||
|
[OpenVPN](https://openvpn.net) is a free software to create a VPN via an
|
||||||
|
encrypted TLS connection.
|
||||||
|
|
||||||
|
### Set up
|
||||||
|
|
||||||
|
In the following sections the different set ups of OpenVPN usages are described.
|
||||||
|
|
||||||
|
#### Server
|
||||||
|
|
||||||
|
The software can be set up via [Docker](/wiki/docker.md) with the
|
||||||
|
[kylemanna image](./docker-images/kylemanna_-_openvpn.md).
|
||||||
|
Additionally to this a client is needed on the system that need access to the
|
||||||
|
server software.
|
||||||
|
|
||||||
|
#### Client
|
||||||
|
|
||||||
|
OpenVPN clients can be found for many devices.
|
||||||
|
For Android for example there is
|
||||||
|
[OpenVPN for Android in the F-Droid store](https://f-droid.org/de/packages/de.blinkt.openvpn/).
|
||||||
|
For most linux distributions there is a package called `openvpn`.
|
||||||
|
|
||||||
|
#### Proxy
|
||||||
|
|
||||||
|
For OpenVPN a proxy acts as an imntermediary between the system communicating
|
||||||
|
with the proxy and the OpenVPN server.
|
||||||
|
A proxy can be set up via [Docker](/wiki/docker.md) with the
|
||||||
|
[jonohill image](./docker-images/jonohill_-_docker-openvpn-proxy.md).
|
Loading…
Reference in new issue