Merge pull request #3 from blumberg/Wireguard

Wireguard
This commit is contained in:
Robert Middleswarth
2022-01-12 17:03:11 -05:00
committed by GitHub
7 changed files with 109 additions and 32 deletions

View File

@@ -109,6 +109,7 @@ List of all apps included in this project with info related to it.
|Quassel IRC|32/64 bit|Container| | | | |
|Radarr|32/64 bit|Container| | | | |
|Raspberry Pi Docker Monitor|32/64 bit|Stack| [![](../build/images/doc_icon.png)](../docs/rpi_docker_monitor.md) | [![](../build/images/script_icon.png)](../tools/rpi_docker_monitor.sh) | | [![YouTube](https://img.shields.io/badge/YouTube-FF0000?style=plastic&logo=youtube&logoColor=white)](https://www.youtube.com/watch?v=IoD3vFuep64&list=PL846hFPMqg3jwkxcScD1xw2bKXrJVvarc&index=8) |
|Reactive-Resume|64 bit|Container| | | | |
|Redmine|32/64 bit|Stack| | | | |
|Resilio Sync|32/64 bit|Container| | | | |
|ruTorrent|32/64 bit|Container| | | | |

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

View File

@@ -15,34 +15,23 @@ An easy to use VPN server powered by [WireGuard](https://github.com/WeeJeWel/wg-
First find Wiregaurd in the listing of templates from the project.
![find wireguard](https://user-images.githubusercontent.com/42878642/140615769-aad713c2-630c-437a-b56d-9102e2f7b1ed.png)
Then you will want to "Copy as Custom" because we will need to change some of the default values to tailor it for your use.
![copy custom](https://user-images.githubusercontent.com/42878642/140615790-b8fda3f3-496d-46d7-aa02-16de1877f289.png)
## Set all variables
### This Step is now complete go to the next step.
<br><br>
## Customize the App Template.<br>
![DeployStack](images/wireguard_DeployStack.png)
We will need to edit the template to change a few values.
![edit template](https://user-images.githubusercontent.com/42878642/140615811-9307f1cf-078a-4e38-b5d9-bad661c1bfad.png)
- `WG_HOST`: A domain name (usually a DDNS) that points to your public IP
- `PASSWORD`: Password to access the WebUI interface. If left blank, there will be no login page
- `WG_PORT`: PORT to use to connect to Wireguard from outside
- `WG_DEFAULT_DNS`: DNS to use while on VPN. It can point to your router (usually 192.168.x.x) or an external one (like 1.1.1.1 or 8.8.8.8). You can set 2 separating them by comma
- `WG_ALLOWED_IPS`: IPs which connection will be allowed.
First Ensure the top 3 items (highlighted yellow) are filled out with your own values.
On my network I deploy a Pi-Hole for DNS level ad blocking and I also have multiple networks which all have various devices on them. So for my setup I used the following values, but make sure you use what will work for your setup:
Second you will need to change the two values in the environment section that are circled.
Third you may want to change the 2 items with lines next to them. On my network I deploy a Pi-Hole for DNS level ad blocking and I also have multiple networks which all have
various devices on them. So for my setup I used the following values, but make sure you use what will work for your setup:<br>
`- WG_DEFAULT_DNS=192.168.1.1` #This is the address of my router for DNS forwarding on my network, you can use outside DNS servers for this ie. 8.8.8.8, 8.8.4.4<br>
`- WG_ALLOWED_IPS=0.0.0.0/0, ::/0` #This will allow all addresses from any network, you may want to lock this down for your own setup.
Finally make sure you save these values by clicking on the "Update the Template" button on the bottom
![update template](https://user-images.githubusercontent.com/42878642/140615992-60749352-c0b5-4566-ba1f-06b675a3b517.png)
<br><br>
Once done, just click `Deploy the stack`.
## Deploy the Stack
Find the new entry (WireGuard) in your Custom Templates and click on it, then click on the "Deploy the stack" button on the bottom.
![deploy stack](https://user-images.githubusercontent.com/42878642/140616046-89987892-358c-488d-ad97-afb82338c5e0.png)
<br><br>
### Setup a User
On your main browser navigate to your pi's ip address with port attached (http://192.168.1.10:51821/)

View File

@@ -5436,13 +5436,42 @@
"Other",
"VPN"
],
"description": "You have found the easiest way to install & manage WireGuard on any Linux host!",
"image": "weejewel/wg-easy",
"description": "Fast VPN Server with easy to use User Interface",
"image": "weejewel/wg-easy:latest",
"logo": "https://raw.githubusercontent.com/pi-hosted/pi-hosted/master/images/wireguard.png",
"name": "wg-easy",
"platform": "linux",
"title": "Wireguard Server",
"type": 3,
"env": [
{
"default": "example.domain.com",
"name": "WG_HOST",
"label": "WG_HOST",
"description": "Set here your DDNS domain"
},
{
"default": "ENTER AN ADMIN PASSWORD",
"name": "PASSWORD",
"label": "PASSWORD",
"description": "Leave blank to access WebUI without loggin"
},
{
"default": "51820",
"name": "WG_PORT",
"label": "WG_PORT"
},
{
"default": "1.1.1.1",
"name": "WG_DEFAULT_DNS",
"label": "WG_DEFAULT_DNS"
},
{
"default": "0.0.0.0/0, ::/0",
"name": "WG_ALLOWED_IPS",
"label": "WG_ALLOWED_IPS"
}
],
"repository": {
"stackfile": "stack/wireguard-easy.yml",
"url": "https://github.com/pi-hosted/pi-hosted"

View File

@@ -4,21 +4,21 @@ services:
environment:
# ⚠️ Required:
# Change this to your host's public address
- WG_HOST=raspberrypi.local
- WG_HOST=${WG_HOST}
# Optional:
- PASSWORD=foobar123
- WG_PORT=51820
- PASSWORD=${PASSWORD}
- WG_PORT=${WG_PORT}
- WG_DEFAULT_ADDRESS=10.8.0.x
- WG_DEFAULT_DNS=1.1.1.1
- WG_ALLOWED_IPS=192.168.15.0/24, 10.0.1.0/24
- WG_DEFAULT_DNS=${WG_DEFAULT_DNS}
- WG_ALLOWED_IPS=${WG_ALLOWED_IPS}
image: weejewel/wg-easy
container_name: wg-easy
volumes:
- /portainer/Files/AppData/Config/wireguard:/etc/wireguard
ports:
- "51820:51820/udp"
- "${WG_PORT}:51820/udp"
- "51821:51821/tcp"
restart: unless-stopped
cap_add:
@@ -26,4 +26,4 @@ services:
- SYS_MODULE
sysctls:
- net.ipv4.ip_forward=1
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv4.conf.all.src_valid_mark=1

View File

@@ -5402,13 +5402,42 @@
"Other",
"VPN"
],
"description": "You have found the easiest way to install & manage WireGuard on any Linux host!",
"image": "weejewel/wg-easy",
"description": "Fast VPN Server with easy to use User Interface",
"image": "weejewel/wg-easy:latest",
"logo": "https://raw.githubusercontent.com/pi-hosted/pi-hosted/master/images/wireguard.png",
"name": "wg-easy",
"platform": "linux",
"title": "Wireguard Server",
"type": 3,
"env": [
{
"default": "example.domain.com",
"name": "WG_HOST",
"label": "WG_HOST",
"description": "Set here your DDNS domain"
},
{
"default": "ENTER AN ADMIN PASSWORD",
"name": "PASSWORD",
"label": "PASSWORD",
"description": "Leave blank to access WebUI without loggin"
},
{
"default": "51820",
"name": "WG_PORT",
"label": "WG_PORT"
},
{
"default": "1.1.1.1",
"name": "WG_DEFAULT_DNS",
"label": "WG_DEFAULT_DNS"
},
{
"default": "0.0.0.0/0, ::/0",
"name": "WG_ALLOWED_IPS",
"label": "WG_ALLOWED_IPS"
}
],
"repository": {
"stackfile": "stack/wireguard-easy.yml",
"url": "https://github.com/pi-hosted/pi-hosted"

View File

@@ -5681,13 +5681,42 @@
"Other",
"VPN"
],
"description": "You have found the easiest way to install & manage WireGuard on any Linux host!",
"description": "Fast VPN Server with easy to use User Interface",
"image": "weejewel/wg-easy:latest",
"logo": "https://raw.githubusercontent.com/pi-hosted/pi-hosted/master/images/wireguard.png",
"name": "wg-easy",
"platform": "linux",
"title": "Wireguard Server",
"type": 3,
"env": [
{
"default": "example.domain.com",
"name": "WG_HOST",
"label": "WG_HOST",
"description": "Set here your DDNS domain"
},
{
"default": "ENTER AN ADMIN PASSWORD",
"name": "PASSWORD",
"label": "PASSWORD",
"description": "Leave blank to access WebUI without loggin"
},
{
"default": "51820",
"name": "WG_PORT",
"label": "WG_PORT"
},
{
"default": "1.1.1.1",
"name": "WG_DEFAULT_DNS",
"label": "WG_DEFAULT_DNS"
},
{
"default": "0.0.0.0/0, ::/0",
"name": "WG_ALLOWED_IPS",
"label": "WG_ALLOWED_IPS"
}
],
"repository": {
"stackfile": "stack/wireguard-easy.yml",
"url": "https://github.com/pi-hosted/pi-hosted"